# Index of values

A
associate [Csv] | `associate header data` takes a block of data and converts each row in turn into an assoc list which maps column header to data cell.
C
close_in [Csv] | `close_in ic` closes the channel `ic`.
columns [Csv] | Work out the (maximum) number of columns in a CSV file.
compare [Csv] | Compare two CSV files for equality, ignoring blank cells at the end of a row, and empty rows appended to one or the other.
concat [Csv] | Concatenate CSV files so that they appear side by side, arranged left to right across the page.
current [Csv.Rows] | See `Csv.current_record`.
current_record [Csv] | The current record under examination.
F
find [Csv.Row] | `find row header` return the value of the colum labelled with `header` (or `""` if not such header has been declared).
fold_left [Csv.Rows] | See `Csv.fold_left`.
fold_left [Csv] | `fold_left f a ic` computes (f ...
fold_right [Csv.Rows] | See `Csv.fold_right`.
fold_right [Csv] | `fold_right f ic a` computes (f r1 ...
G
get [Csv.Row] | `get row i` returns the `i`th column of the row.
H
header [Csv.Rows] | The header declared for this channel.
I
input_all [Csv.Rows] | See `Csv.input_all`.
input_all [Csv] | `input_all ic` return a list of the CSV records till the end of the file.
is_square [Csv] | Return true iff the CSV is "square" (actually rectangular).
iter [Csv.Rows] | See `Csv.iter`.
iter [Csv] | `iter f ic` iterates `f` on all remaining records.
L
lines [Csv] | Return the number of lines in a CSV data.
load [Csv.Rows] | See `Csv.load`.
load [Csv] | `load fname` loads the CSV file `fname`.
load_in [Csv] | `load_in ch` loads a CSV file from the input channel `ch`.
load_rows [Csv] |
M
map [Csv] | `map f csv` applies `f` to all entries of `csv` and returns the resulting CSV.
N
next [Csv.Rows] | See `Csv.next`.
next [Csv] | `next ic` returns the next record in the CSV file.
O
of_array [Csv] | Convenience functions to convert to and from a matrix representation.
of_channel [Csv] | Same as `Csv.of_in_obj` except that the data is read from a standard channel.
of_in_obj [Csv] | `of_in_obj ?separator ?excel_tricks in_chan` creates a new "channel" to access the data in CSV form available from the channel `in_chan`.
of_string [Csv] | Same as `Csv.of_in_obj` except that the data is read from a string.
output_all [Csv] | `output_all oc csv` outputs all records in `csv` to the channel `oc`.
output_record [Csv] | `output_record oc r` write the record `r` is CSV form to the channel `oc`.
P
print [Csv] | Print the CSV data.
print_readable [Csv] | Print the CSV data to `stdout` in a human-readable format.
S
save [Csv] | `save fname csv` saves the `csv` data to the file `fname`.
save_out [Csv] |
save_out_readable [Csv] | As for `Csv.print_readable`, allowing the output to be sent to a channel.
set_columns [Csv] | `set_columns cols csv` makes the CSV data square by forcing the width to the given number of `cols`.
set_rows [Csv] | `set_rows rows csv` makes the CSV data have exactly `rows` rows by adding empty rows or truncating rows as necessary.
set_size [Csv] | `set_size rows cols csv` makes the CSV data square by forcing the size to `rows * cols`, adding blank cells or truncating as necessary.
square [Csv] | Make the CSV data "square" (actually rectangular).
sub [Csv] | `sub r c rows cols csv` returns a subset of `csv`.
T
to_array [Csv] |
to_assoc [Csv.Row] | `to_assoc row` return an associative list of the row data as `(header, value)`.
to_buffer [Csv] | Same as `Csv.to_out_obj` but output to a buffer.
to_channel [Csv] | Same as `Csv.to_out_obj` but output to a standard channel.
to_in_obj [Csv] | For efficiency reasons, the `in_channel` buffers the data from the original channel.
to_list [Csv.Row] | `to_list row` convert `row` to the usual representation, the list being in the column order.
to_out_obj [Csv] | `to_out_obj ?separator ?excel_tricks out_chan` creates a new "channel" to output the data in CSV form.
transpose [Csv] | Permutes the lines and columns of the CSV data.
trim [Csv] | This takes a CSV file and trims empty cells.
W
with_header [Csv.Row] | `with_header row h` return the `row` with headers `h`.