package earley

  1. Overview
  2. Docs
type buffer
val read : buffer -> int -> char * buffer * int
val get : buffer -> int -> char
val from_file : string -> buffer
val from_channel : ?filename:string -> Pervasives.in_channel -> buffer
val from_string : ?filename:string -> string -> buffer
val from_fun : ('a -> unit) -> string -> ('a -> string) -> 'a -> buffer
exception Preprocessor_error of string * string
val pp_error : string -> string -> 'a
module type Preprocessor = sig ... end
module WithPP (PP : Preprocessor) : sig ... end
val is_empty : buffer -> int -> bool
val line_num : buffer -> int
val line_offset : buffer -> int
val line : buffer -> string
val line_length : buffer -> int
val utf8_col_num : buffer -> int -> int
val normalize : buffer -> int -> buffer * int
val filename : buffer -> string
val buffer_uid : buffer -> int
val buffer_equal : buffer -> buffer -> bool
val buffer_compare : buffer -> buffer -> int
type 'a buf_table
val empty_buf : 'a buf_table
val insert_buf : buffer -> int -> 'a -> 'a buf_table -> 'a buf_table
val pop_firsts_buf : 'a buf_table -> buffer * int * 'a list * 'a buf_table
val iter_buf : 'a buf_table -> ('a -> unit) -> unit