Module Parsing


module Parsing = struct ... end 
Types
parser_env Abstract
parse_tables = {
actions :  (parser_env -> Obj.t) array ;
transl_const :  int array ;
transl_block :  int array ;
lhs :  string ;
len :  string ;
defred :  string ;
dgoto :  string ;
sindex :  string ;
rindex :  string ;
gindex :  string ;
tablesize :  int ;
table :  string ;
check :  string ;
error_function :  string -> unit ;
}

Exceptions
Parse_error Raised when a parser encounters a syntax error. Can also be raised from the action part of a grammar rule, to initiate error recovery.
YYexit of  Obj.t

Functions

symbol_start : unit -> int

symbol_end : unit -> int
symbol_start and symbol_end are to be called in the action part of a grammar rule only. They return the position of the string that matches the left-hand side of the rule: symbol_start() returns the position of the first character; symbol_end() returns the position of the last character, plus one. The first character in a file is at position 0.

rhs_start : int -> int

rhs_end : int -> int
Same as symbol_start and symbol_end, but return the position of the string matching the nth item on the right-hand side of the rule, where n is the integer parameter to lhs_start and lhs_end. n is 1 for the leftmost item.

clear_parser : unit -> unit
Empty the parser stack. Call it just after a parsing function has returned, to remove all pointers from the parser stack to structures that were built by semantic actions during parsing. This is optional, but lowers the memory requirements of the programs.

yyparse : parse_tables -> int -> (Lexing.lexbuf -> 'a) -> Lexing.lexbuf -> 'b

peek_val : parser_env -> int -> 'c

is_current_lookahead : 'd -> bool

parse_error : string -> unit