Module Pre_sexp.Annotated
include module type of struct include Annot end
type 'a conv = [
| `Result of 'a
| `Error of exn * t
]
exception Conv_exn of string * exn
type stack = Annot.stack = {
mutable positions : pos list;
mutable stack : t list list;
}
val sexp_of_conv :
('a -> Type.t) ->
[< `Error of exn * t | `Result of 'b ] ->
Type.t
exception Annot_sexp of t
val load_rev_sexps : ?buf:bytes -> string -> Annot.t list
val load_sexps : ?buf:bytes -> string -> Annot.t list
val load_sexp : ?strict:bool -> ?buf:bytes -> string -> Annot.t
val conv : (Type.t -> 'a) -> t -> [> `Error of exn * t | `Result of 'a ]
val get_conv_exn : file:string -> exc:exn -> t -> exn