package sexplib

  1. Overview
  2. Docs

Module Pre_sexp.AnnotatedSource

include module type of struct include Annot end
Sourcetype pos = Parsexp.Positions.pos = {
  1. line : int;
  2. col : int;
  3. offset : int;
}
Sourcetype range = Parsexp.Positions.range = {
  1. start_pos : pos;
  2. end_pos : pos;
}
Sourcetype t = Annot.t =
  1. | Atom of range * Type.t
  2. | List of range * t list * Type.t
Sourcetype 'a conv = [
  1. | `Result of 'a
  2. | `Error of exn * t
]
Sourceexception Conv_exn of string * exn
Sourcetype stack = Annot.stack = {
  1. mutable positions : pos list;
  2. mutable stack : t list list;
}
Sourceval get_sexp : t -> Type.t
Sourceval get_range : t -> range
Sourceval sexp_of_conv : ('a -> Type.t) -> [< `Error of exn * t | `Result of 'a ] -> Type.t
Sourceexception Annot_sexp of t
Sourceval find_sexp : t -> Type.t -> t option
Sourceval parse : ?parse_pos:Parse_pos.t -> ?len:int -> string -> (string, Annot.t) parse_result
Sourceval parse_bigstring : ?parse_pos:Parse_pos.t -> ?len:int -> bigstring -> (bigstring, Annot.t) parse_result
Sourceval input_rev_sexps : ?parse_pos:Parse_pos.t -> ?buf:bytes -> in_channel -> Annot.t list
Sourceval input_sexp : ?parse_pos:Parse_pos.t -> in_channel -> Annot.t
Sourceval input_sexps : ?parse_pos:Parse_pos.t -> ?buf:bytes -> in_channel -> Annot.t list
Sourceval of_string : string -> Annot.t
Sourceval of_bigstring : bigstring -> Annot.t
Sourceval load_rev_sexps : ?buf:bytes -> string -> Annot.t list
Sourceval load_sexps : ?buf:bytes -> string -> Annot.t list
Sourceval load_sexp : ?strict:bool -> ?buf:bytes -> string -> Annot.t
Sourceval conv : (Type.t -> 'a) -> t -> [> `Error of exn * t | `Result of 'a ]
Sourceval get_conv_exn : file:string -> exc:exn -> t -> exn
OCaml

Innovation. Community. Security.