Module Sexplib.Sexp_with_layout

module List : sig ... end
include module type of struct include Type_with_layout end
module Make (Pos : sig ... end) : sig ... end

parsing produces absolute positions

include Make(Src_pos.Relative).S
type t =
| Atom of Src_pos.Relative.t * string * string option
| List of Src_pos.Relative.t * t_or_comment list * Src_pos.Relative.t

S-expressions annotated with relative source positions and comments

and t_or_comment =
| Sexp of t
| Comment of comment
and comment =
| Plain_comment of Src_pos.Relative.t * string
| Sexp_comment of Src_pos.Relative.t * comment list * t
val sexp_of_t : t -> Type.t
val sexp_of_comment : comment -> Type.t
val sexp_of_t_or_comment : t_or_comment -> Type.t
val relativize : Parsed.t_or_comment -> t_or_comment
type pos = Src_pos.Relative.t = {
row : int;
col : int;
}
val sexp_of_pos : Src_pos.Relative.t -> Type.t
module Lexer : sig ... end
module Parser = Parser_with_layout
module Render : sig ... end
module Forget : sig ... end