CCSexp_intf.S
include S0
type sexp = t
val atom : string -> t
Make an atom out of this string.
val of_int : int -> t
val of_bool : bool -> t
val of_float : float -> t
val of_unit : t
of_variant name args
is used to encode algebraic variants into a S-expr. For instance of_variant "some" [of_int 1]
represents the value Some 1
.
val to_string : t -> string
val to_file : string -> t -> unit
val to_chan : out_channel -> t -> unit
val pp : Format.formatter -> t -> unit
Pretty-printer nice on human eyes (including indentation).
val pp_noindent : Format.formatter -> t -> unit
Raw, direct printing as compact as possible.
val parse_chan : in_channel -> t or_error
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
val parse_chan_gen : in_channel -> t or_error gen
Parse a channel into a generator of S-expressions.
val parse_chan_list : in_channel -> t list or_error
A parser of 'a
can return Yield x
when it parsed a value, or Fail e
when a parse error was encountered, or End
if the input was empty.
module Decoder : sig ... end