Module Accessor_base__Accessor_sexp
include sig ... end with type t := Base.Sexp.t
type t
=
|
Atom of Base.string
|
List of t Base.list
include module type of sig ... end
val atom : ('a -> Base.string -> Base.string, 'a -> t -> t, [< Accessor_base__.Import.Accessor.variant ]) Accessor_base__.Import.Accessor.t
val list : ('a -> t Base.list -> t Base.list, 'a -> t -> t, [< Accessor_base__.Import.Accessor.variant ]) Accessor_base__.Import.Accessor.t
val children : (_, Base.Sexp.t, Base.Sexp.t, [< Accessor_base__.Import.many ]) Accessor_base__.Import.Accessor.Simple.t
Access the immediate children of a list node. Accesses nothing for atoms.
val tuple2 : (_, Base.Sexp.t * Base.Sexp.t, Base.Sexp.t, [< Accessor_base__.Import.variant ]) Accessor_base__.Import.Accessor.Simple.t
Treat a list node with two elements as a tuple.
val field : Base.string -> (_, Base.Sexp.t, Base.Sexp.t, [< Accessor_base__.Import.many ]) Accessor_base__.Import.Accessor.Simple.t
Access any immediately children that are tuples (lists with two elements), where the first component is an atom containing the given string.
val variant : Base.string -> (_, Base.Sexp.t Base.list, Base.Sexp.t, [< Accessor_base__.Import.optional ]) Accessor_base__.Import.Accessor.Simple.t
Access the sexp if it is a list whose first element is an atom containing the given string.
val atoms : (_, Base.string, Base.Sexp.t, [< Accessor_base__.Import.many ]) Accessor_base__.Import.Accessor.Simple.t
Access all the atoms in a sexp, recursively.
val conv : (module Base.Sexpable.S with type t = 'a) -> (_, 'a, Base.Sexp.t, [< Accessor_base__.Import.variant ]) Accessor_base__.Import.Accessor.Simple.t
Access the sexp converted to the given type, or access nothing if conversion fails.
val conv_strict : (module Base.Sexpable.S with type t = 'a) -> (_, 'a, Base.Sexp.t, [< Accessor_base__.Import.isomorphism ]) Accessor_base__.Import.Accessor.Simple.t
Access the sexp converted to the given type, raising if conversion fails.