Newer
Older
(* Time-stamp: <modified the 07/09/2017 (at 15:14) by Erwan Jahier> *)
(** Lexemes *)
(* Common to lus2lic and lic2loc *)
type pragma = Pragma of string * string
val dummy : string -> t
val id : t -> Lv6Id.t
val file : t -> string
val pragma : t -> pragma list
val override_name : string -> t -> t
(** lexer/parser interface
In order to able to compute line and colums numbers,
the lexer is supposed to:
- use Lxm.make to return a lexeme to the parser
- use newline to add a new line
*)
val make : Lexing.lexbuf -> t
val new_line : Lexing.lexbuf -> unit
(* remove the quotes from the string *)
val make_string: Lexing.lexbuf -> t
val add_pragma : t -> pragma list -> t
(** Returns the last created lexem. Useful to locate syntax errors. *)
Pascal Raymond
committed
val short_details : t -> string
(** prints something like: 'machin' (line:10, col:3 to 7) *)