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
val children : (_Base.Sexp.tBase.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.tBase.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.tBase.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.listBase.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.stringBase.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) -> (_'aBase.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) -> (_'aBase.Sexp.t[< Accessor_base__.Import.isomorphism ]) Accessor_base__.Import.Accessor.Simple.t

Access the sexp converted to the given type, raising if conversion fails.