The standard library Lr_Table api defines access to part of the mythryl-yacc parser-generator support infrastructure.
The Lr_Table api is implemented by the lr_table package.
The Lr_Table api source code is in src/app/yacc/lib/base.api.
The above information is manually maintained and may contain errors.
api { Pairlist (X, Y) = EMPTY | PAIR (X , Y , Pairlist((X, Y))); State = STATE Int; Terminal = TERM Int; Nonterminal = NONTERM Int; Action = ACCEPT | ERROR | REDUCE Int | SHIFT State; Table; state_count : Table -> Int; rule_count : Table -> Int; describe_goto : Table -> State -> Pairlist((Nonterminal, State)); action : Table -> (State , Terminal) -> Action; goto : Table -> (State , Nonterminal) -> State; initial_state : Table -> State; describe_actions : Table -> State -> (Pairlist((Terminal, Action)) , Action); exception GOTO (State , Nonterminal); make_lr_table : {actions:Rw_Vector(((Pairlist((Terminal, Action)) , Action)) ), gotos:Rw_Vector(Pairlist((Nonterminal, State)) ), initial_state:State, rule_count:Int, state_count:Int} -> Table;};