sig/lrama/grammar/rule_builder.rbs in lrama-0.6.9 vs sig/lrama/grammar/rule_builder.rbs in lrama-0.6.10
- old
+ new
@@ -4,42 +4,43 @@
attr_accessor lhs: Lexer::Token
attr_accessor line: Integer?
attr_reader lhs_tag: Lexer::Token::Tag?
attr_reader rhs: Array[Lexer::Token]
attr_reader user_code: Lexer::Token::UserCode?
- attr_reader precedence_sym: Lexer::Token?
+ attr_reader precedence_sym: Grammar::Symbol?
@rule_counter: Counter
@midrule_action_counter: Counter
+ @parameterizing_rule_resolver: Grammar::ParameterizingRule::Resolver
@position_in_original_rule_rhs: Integer?
@skip_preprocess_references: bool
@user_code: Lexer::Token::UserCode?
@rule_builders_for_parameterizing_rules: Array[RuleBuilder]
@rule_builders_for_derived_rules: Array[RuleBuilder]
- @rule_builders_for_inline_rules: Array[RuleBuilder]
@rules: Array[Rule]
@replaced_rhs: Array[Lexer::Token]
@parameterizing_rules: Array[Rule]
- @inline_rules: Array[Rule]
@midrule_action_rules: Array[Rule]
- def initialize: (Counter rule_counter, Counter midrule_action_counter, ?Integer position_in_original_rule_rhs, ?lhs_tag: Lexer::Token::Tag?, ?skip_preprocess_references: bool) -> void
+ def initialize: (Counter rule_counter, Counter midrule_action_counter, Grammar::ParameterizingRule::Resolver parameterizing_rule_resolver, ?Integer position_in_original_rule_rhs, ?lhs_tag: Lexer::Token::Tag?, ?skip_preprocess_references: bool) -> void
def add_rhs: (Lexer::Token rhs) -> void
+ def has_inline_rules?: -> bool
+ def resolve_inline_rules: -> Array[RuleBuilder]
def user_code=: (Lexer::Token::UserCode? user_code) -> void
- def precedence_sym=: (Lexer::Token? precedence_sym) -> void
+ def precedence_sym=: (Grammar::Symbol? precedence_sym) -> void
def complete_input: () -> void
- def setup_rules: (Grammar::ParameterizingRule::Resolver parameterizing_rule_resolver) -> void
+ def setup_rules: () -> void
def rules: () -> Array[Rule]
private
def freeze_rhs: () -> void
def preprocess_references: () -> void
def build_rules: () -> void
- def process_rhs: (Grammar::ParameterizingRule::Resolver parameterizing_rule_resolver) -> void
+ def process_rhs: () -> void
def lhs_s_value: (Lexer::Token::InstantiateRule token, Grammar::Binding bindings) -> String
- def resolve_inline: (Grammar::ParameterizingRule::Resolver parameterizing_rule_resolver) -> void
- def resolve_inline_rhs: (RuleBuilder rule_builder, Grammar::ParameterizingRule::Rhs inline_rhs, Integer index) -> void
+ def resolve_inline: () -> void
+ def resolve_inline_rhs: (RuleBuilder rule_builder, Grammar::ParameterizingRule::Rhs inline_rhs, Integer index, ?Binding bindings) -> void
def replace_inline_user_code: (Grammar::ParameterizingRule::Rhs inline_rhs, Integer index) -> Lexer::Token::UserCode?
def numberize_references: () -> void
def flush_user_code: () -> void
end
end