Module Pre_sexp.Annot

type pos = Parsexp.Positions.pos = {
  1. line : int;
  2. col : int;
  3. offset : int;
}
type range = Parsexp.Positions.range = {
  1. start_pos : pos;
  2. end_pos : pos;
}
type t =
  1. | Atom of range * Sexplib.Type.t
  2. | List of range * t list * Sexplib.Type.t
type !'a conv = [
  1. | `Error of exn * t
  2. | `Result of 'a
]
exception Conv_exn of string * exn
type stack = {
  1. mutable positions : pos list;
  2. mutable stack : t list list;
}
val get_sexp : t -> Sexplib.Type.t
val get_range : t -> range
val sexp_of_conv : ('a -> Sexplib.Type.t) -> [< `Error of exn * t | `Result of 'a ] -> Sexplib.Type.t
exception Annot_sexp of t
val find_sexp : t -> Sexplib.Type.t -> t option