Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
include Csvable_simple
true
if csvable
will be represented as a column, and its label is the field name of a containing record.
A Fields.fold
friendly version of a function to collect the csv header of the csvable
type. The output is the header in reverse order.
val t_of_row' : _ -> string list -> (unit -> t) * string list
t_of_row' _ row
generates a Fields.make_creator
friendly function that outputs a pair (creator, tail)
such that creator ()
generates the type t
with the first elements in row
, and tail
is the remaining set of elements from row
that where not used in the creation of t
.
val write_row_of_t' :
is_first:bool ->
is_last:bool ->
writer:(string -> unit) ->
_ ->
_ ->
t ->
unit
row_of_t'
has the same arguments as Helper.write
. The ignored arguments are used to make it Fields.fold
friendly.
val csv_header_spec : Spec.t list
t_of_row row
creates type t
from the row
.
val t_of_row : string list -> t
t_of_row row
creates type t
from the row
.
val row_of_t : t -> string list
row_of_t t
creates a row
from csvable
.
val csv_load : ?separator:char -> string -> t list
The following functions are wrappers around the corresponding functions in Csvlib.Csv
.
val csv_load_in : ?separator:char -> Core.In_channel.t -> t list
val csv_save_fn : ?separator:char -> (string -> unit) -> t list -> unit
val csv_save_out : ?separator:char -> Core.Out_channel.t -> t list -> unit
val csv_save : ?separator:char -> string -> t list -> unit