module Ed_ocaml_lexer: sig
.. end
start and stop positions in characters
val prerr_endline : 'a -> unit
type
token =
| |
AMPERAMPER |
| |
AMPERSAND |
| |
AND |
| |
AS |
| |
ASSERT |
| |
BACKQUOTE |
| |
BAR |
| |
BARBAR |
| |
BARRBRACKET |
| |
BEGIN |
| |
CHAR |
| |
CLASS |
| |
COLON |
| |
COLONCOLON |
| |
COLONEQUAL |
| |
COLONGREATER |
| |
COMMA |
| |
CONSTRAINT |
| |
DO |
| |
DONE |
| |
DOT |
| |
DOTDOT |
| |
DOWNTO |
| |
ELSE |
| |
END |
| |
EOF |
| |
EQUAL |
| |
EXCEPTION |
| |
EXTERNAL |
| |
FALSE |
| |
FLOAT |
| |
FOR |
| |
FUN |
| |
FUNCTION |
| |
FUNCTOR |
| |
GREATER |
| |
GREATERRBRACE |
| |
GREATERRBRACKET |
| |
IF |
| |
IN |
| |
INCLUDE |
| |
INFIXOP0 |
| |
INFIXOP1 |
| |
INFIXOP2 |
| |
INFIXOP3 |
| |
INFIXOP4 |
| |
INHERIT |
| |
INITIALIZER |
| |
INT |
| |
INT32 |
| |
INT64 |
| |
NATIVEINT |
| |
LABEL of string |
| |
LAZY |
| |
LBRACE |
| |
LBRACELESS |
| |
LBRACKET |
| |
LBRACKETBAR |
| |
LBRACKETGREATER |
| |
LBRACKETLESS |
| |
LESS |
| |
LESSMINUS |
| |
LET |
| |
LIDENT |
| |
LPAREN |
| |
MATCH |
| |
METHOD |
| |
MINUS |
| |
MINUSDOT |
| |
MINUSGREATER |
| |
MODULE |
| |
MUTABLE |
| |
NEW |
| |
OBJECT |
| |
OF |
| |
OPEN |
| |
OPTLABEL of string |
| |
OR |
| |
PARSER |
| |
PLUS |
| |
PREFIXOP |
| |
PRIVATE |
| |
QUESTION |
| |
QUESTIONQUESTION |
| |
QUOTE |
| |
RBRACE |
| |
RBRACKET |
| |
REC |
| |
RPAREN |
| |
SEMI |
| |
SEMISEMI |
| |
SHARP |
| |
SIG |
| |
STAR |
| |
STRING |
| |
STRUCT |
| |
SUBTRACTIVE |
| |
THEN |
| |
TO |
| |
TRUE |
| |
TRY |
| |
TYPE |
| |
UIDENT |
| |
UNDERSCORE |
| |
VAL |
| |
VIRTUAL |
| |
WHEN |
| |
WHILE |
| |
WITH |
| |
COMMENT |
| |
EOL |
| |
EOFCOMMENT |
| |
EOFSTRING |
| |
ERROR |
| |
RULE |
| |
PARSE |
type
error =
| |
Illegal_character of char |
| |
Illegal_escape of string |
| |
Unterminated_comment |
| |
Unterminated_string |
| |
Keyword_as_label of string |
| |
Literal_overflow of string |
| |
End_with_no_begin of string |
type
location = int * int
start and stop positions in characters
val curr_loc : Lexing.lexbuf -> int * int
exception Error of error * location
val token_kw : (string * token) list
val keyword_table : (string, token) Hashtbl.t
val char_for_backslash : char -> char
val char_for_decimal_code : 'a -> 'b -> char
val char_for_hexadecimal_code : 'a -> 'b -> char
val remove_underscores : string -> string
val update_loc : Lexing.lexbuf -> string option -> int -> bool -> int -> unit
val report_error : error -> string
val blocks : (token * int * int) list Pervasives.ref
type
cst_indent = {
|
ind_newline : int ; |
|
ind_bracket : int ; |
|
ind_brace : int ; |
|
ind_parent : int ; |
|
ind_let : int ; |
|
ind_begin : int ; |
|
ind_match : int ; |
|
ind_comment : int ; |
|
ind_if : int ; |
|
ind_fun : int ; |
|
ind_struct : int ; |
|
ind_object : int ; |
|
ind_class : int ; |
|
ind_module : int ; |
|
ind_type : int ; |
|
ind_exception : int ; |
|
ind_loop : int ; |
|
ind_field : int ; |
|
ind_val : int ; |
}
val default_indent : cst_indent
val cst_indent : cst_indent Pervasives.ref
val line_indentations : int option list Pervasives.ref
val next_token_is_first : bool Pervasives.ref
val next_line_is_more_indented : int Pervasives.ref
val if_first_token_on_line : int -> unit
Ad this indentation to the line_indentation list if we're on the
first token of the line
val if_first_token_on_line_set_none : unit -> unit
val cur_indent : int Pervasives.ref
val begin_comment_indentation : (int * int) Pervasives.ref
val set_indent : ?touch_next_line:bool -> int -> unit
val inc_indent : ?touch_next_line:bool -> int -> unit
val dec_indent : ?touch_next_line:bool -> int -> unit
val string_of_token : token -> string
val prerr_blocks_stack : unit -> unit
val last_popped : (token * int * int) option Pervasives.ref
val pop : token list -> string -> Lexing.lexbuf -> int * int
val last_begin_let_indent : unit -> (int * int) option
val last_and_associated_indent : unit -> (int * int) option
val last_begin_module_indent : unit -> (int * int) option
val last_begin_struct_sig_indent : unit -> (int * int) option
val last_begin_object_indent : unit -> (int * int) option
val last_begin_sig_object_indent : unit -> (int * int) option
val push : token -> int -> int -> unit
val push_if_different : token -> int -> int -> bool
val begin_tokens_of_token : token -> token list
val last_block_indent : unit -> int * int
val last_block_inner_indent : unit -> int
val nl_info_stack : int Stack.t
val push_nl_info : unit -> unit
val pop_nl_info : unit -> unit
val on_par_open : token -> 'a -> unit
val on_par_close : Lexing.lexbuf -> token -> string -> unit
val on_keyword : Lexing.lexbuf -> token -> unit
val __ocaml_lex_tables : Lexing.lex_tables
val token : Lexing.lexbuf -> token
val __ocaml_lex_token_rec : Lexing.lexbuf -> int -> token
val comment : Lexing.lexbuf -> unit
val __ocaml_lex_comment_rec : Lexing.lexbuf -> int -> unit
val string : Lexing.lexbuf -> unit
val __ocaml_lex_string_rec : Lexing.lexbuf -> int -> unit
val skip_sharp_bang : Lexing.lexbuf -> unit
val __ocaml_lex_skip_sharp_bang_rec : Lexing.lexbuf -> int -> unit
val get_lines_indentation : ?indent_spec:cst_indent ->
string ->
[> `Failure of
error * location * int option list
| `Success of int option list ]