class

Lrama::Grammar

Inherits Reference < Object

Constructors

Instance methods

accept_symbol
Source
accept_symbol!
Source
add_accept_rule
Source
add_left(sym : Grammar::Symbol, precedence : Int32, s_value : String, lineno : Int32)
Source
add_nonassoc(sym : Grammar::Symbol, precedence : Int32, s_value : String, lineno : Int32)
Source
add_nterm(id : Lexer::Token::Base, alias_name : String | Nil = nil, tag : Lexer::Token::Tag | Nil = nil)
Source
add_parameterized_rule(rule : Parameterized::Rule)
Source
add_precedence(sym : Grammar::Symbol, precedence : Int32, s_value : String, lineno : Int32)
Source
add_right(sym : Grammar::Symbol, precedence : Int32, s_value : String, lineno : Int32)
Source
add_rule_builder(builder : Grammar::RuleBuilder)
Source
add_term(id : Lexer::Token::Base, alias_name : String | Nil = nil, tag : Lexer::Token::Tag | Nil = nil, token_id : Int32 | Nil = nil, replace : Bool = false)
Source
add_type(id : Lexer::Token::Base, tag : Lexer::Token::Tag | Nil)
Source
after_pop_stack
Source
after_pop_stack=(after_pop_stack : String | Nil)
Source
after_reduce
Source
after_reduce=(after_reduce : String | Nil)
Source
after_shift
Source
after_shift=(after_shift : String | Nil)
Source
after_shift_error_token
Source
after_shift_error_token=(after_shift_error_token : String | Nil)
Source
append_special_symbols
Source
before_reduce
Source
before_reduce=(before_reduce : String | Nil)
Source
collect_symbols
Source
create_rule_builder(rule_counter : Grammar::Counter, midrule_action_counter : Grammar::Counter)
Source
declarations_tokens
Source
define
Source
define=(define : Hash(String, String | Nil))
Source
destructors
Source
eof_symbol
Source
eof_symbol!
Source
epilogue
Source
epilogue=(epilogue : String | Nil)
Source
epilogue_first_lineno
Source
epilogue_first_lineno=(epilogue_first_lineno : Int32 | Nil)
Source
epilogue_tokens
Source
error_symbol
Source
error_symbol!
Source
error_tokens
Source
expect
Source
expect=(expect : Int32 | Nil)
Source
fill_default_precedence
Source
fill_sym_to_rules
Source
fill_symbol_number
Source
fill_symbols
Source
find_rules_by_symbol(sym : Grammar::Symbol)
Source
find_rules_by_symbol!(sym : Grammar::Symbol)
Source
find_symbol_by_id!(id : Lexer::Token::Base)
Source
find_symbol_by_number!(number : Int32)
Source
find_symbol_by_s_value!(s_value : String)
Source
find_term_by_s_value(s_value : String)
Source
ielr_defined?
Source
initial_action
Source
initial_action=(initial_action : Lexer::Token::UserCode | Nil)
Source
lex_param
Source
lex_param=(lex_param : String | Nil)
Source
lexer_spec
Source
lexer_spec=(lexer_spec : LexerSpec | Nil)
Source
locations=(locations : Bool)
Source
locations?
Source
midrule_action_counter
Source
no_stdlib=(no_stdlib : Bool)
Source
no_stdlib?
Source
normalize_rules
Source
nterm_declarations
Source
nterms
Source
parameterized_resolver
Source
parameterized_rules
Source
parse_param
Source
parse_param=(parse_param : String | Nil)
Source
percent_codes
Source
precedence_declarations
Source
precedences
Source
prepare
Source
prepend_parameterized_rules(rules : Array(Parameterized::Rule))
Source
printers
Source
prologue
Source
prologue=(prologue : String | Nil)
Source
prologue_first_lineno
Source
prologue_first_lineno=(prologue_first_lineno : Int32 | Nil)
Source
required=(required : Bool)
Source
required?
Source
resolve_inline_rules
Source
rule_builders
Source
rule_counter
Source
rules
Source
rules_tokens
Source
select_rules_by_s_value(value : String)
Source
set_lhs_and_rhs
Source
set_locations
Source
setup_rules
Source
sort_symbols_by_number!
Source
start_symbol
Source
start_symbol=(start_symbol : String | Nil)
Source
sym_to_rules
Source
symbols
Source
symbols_resolver
Source
terms
Source
token_declarations
Source
token_to_symbol(token : Lexer::Token::Base)
Source
tokens_for(section : ::Symbol)
Source
type_declarations
Source
types
Source
undef_symbol
Source
undef_symbol!
Source
union
Source
union=(union : Grammar::Union | Nil)
Source
union_code
Source
union_code=(union_code : Lexer::Token::UserCode | Nil)
Source
unique_rule_s_values
Source
validate!
Source
validate_duplicated_precedence!
Source
validate_no_precedence_for_nterm!
Source
validate_rule_lhs_is_nterm!
Source

Nested types