Module Parsexp.Cst
Concrete syntax tree of s-expressions
type t
=
|
Atom of
{
loc : Positions.range;
atom : string;
Source syntax of atom. The parser only fills this for atoms that are quoted in the source, but it makes sense for unquoted atoms too (to ensure they get printed unquoted).
unescaped : string option;
}
|
List of
{
loc : Positions.range;
elements : t_or_comment list;
}
and t_or_comment
=
|
Sexp of t
|
Comment of comment
and comment
=
|
Plain_comment of
{
loc : Positions.range;
comment : string;
}
Line or block comment
|
Sexp_comment of
{
hash_semi_pos : Positions.pos;
comments : comment list;
sexp : t;
}
val compare : t -> t -> int
val compare_t_or_comment : t_or_comment -> t_or_comment -> int
val compare_comment : comment -> comment -> int
val sexp_of_t : t -> Parsexp__.Import.Ppx_sexp_conv_lib.Sexp.t
val sexp_of_t_or_comment : t_or_comment -> Parsexp__.Import.Ppx_sexp_conv_lib.Sexp.t
val sexp_of_comment : comment -> Parsexp__.Import.Ppx_sexp_conv_lib.Sexp.t
module Forget : sig ... end