Module Sexplib0.Sexp
Type of S-expressions
- type t- =- |- Atom of string- |- List of t list
- val t_of_sexp : t -> t
- val sexp_of_t : t -> t
- val t_sexp_grammar : Sexplib0__.Raw_grammar.t
- val equal : t -> t -> bool
- val compare : t -> t -> int
- exception- Not_found_s of t
- Not_found_sis used by functions that historically raised- Not_found, to allow them to raise an exception that contains an informative error message (as a sexp), while still having an exception that can be distinguished from other exceptions.
- exception- Of_sexp_error of exn * t
- Of_sexp_error (exn, sexp)the exception raised when an S-expression could not be successfully converted to an OCaml-value.
Helpers
- val message : string -> (string * t) list -> t
- Helper to build nice s-expressions for error messages. It imitates the behavior of - [%message ...]from the ppx_sexp_message rewriter.- message name key_valuesproduces a s-expression list starting with atom- nameand followed by list of size 2 of the form- (key value). When the key is the empty string,- valueis used directly instead as for- [%message].- For instance the following code: - Sexp.message "error" [ "x", sexp_of_int 42 ; "" , sexp_of_exn Exit ]- produces the s-expression: - (error (x 42) Exit)
Defaults
Pretty printing of S-expressions
- val pp_hum : Stdlib.Format.formatter -> t -> unit
- pp_hum ppf sexpoutputs S-expression- sexpto formatter- ppfin human readable form.
- val pp_hum_indent : int -> Stdlib.Format.formatter -> t -> unit
- pp_hum_indent n ppf sexpoutputs S-expression- sexpto formatter- ppfin human readable form and indentation level- n.
- val pp_mach : Stdlib.Format.formatter -> t -> unit
- pp_mach ppf sexpoutputs S-expression- sexpto formatter- ppfin machine readable (i.e. most compact) form.
- val pp : Stdlib.Format.formatter -> t -> unit
- Same as - pp_mach.
Conversion to strings
- val to_string_hum : ?indent:int -> t -> string
- to_string_hum ?indent sexpconverts S-expression- sexpto a string in human readable form with indentation level- indent.- parameter indent
- default = - !default_indent
 
- val to_string_mach : t -> string
- to_string_mach sexpconverts S-expression- sexpto a string in machine readable (i.e. most compact) form.
- val to_string : t -> string
- Same as - to_string_mach.
Styles
- val of_float_style : [ `Underscores | `No_underscores ] Stdlib.ref
- val of_int_style : [ `Underscores | `No_underscores ] Stdlib.ref
module Private : sig ... end