sig
  type 'a buffer
  val wrap :
    (Stdlib.Lexing.lexbuf -> 'token) ->
    (Stdlib.Lexing.position * Stdlib.Lexing.position)
    CamlinternalMenhirLib.ErrorReports.buffer *
    (Stdlib.Lexing.lexbuf -> 'token)
  val wrap_supplier :
    (unit -> 'token * Stdlib.Lexing.position * Stdlib.Lexing.position) ->
    (Stdlib.Lexing.position * Stdlib.Lexing.position)
    CamlinternalMenhirLib.ErrorReports.buffer *
    (unit -> 'token * Stdlib.Lexing.position * Stdlib.Lexing.position)
  val show :
    ('-> string) -> 'CamlinternalMenhirLib.ErrorReports.buffer -> string
  val last : 'CamlinternalMenhirLib.ErrorReports.buffer -> 'a
  val extract :
    string -> Stdlib.Lexing.position * Stdlib.Lexing.position -> string
  val sanitize : string -> string
  val compress : string -> string
  val shorten : int -> string -> string
  val expand : (int -> string) -> string -> string
end