class

Arborist::ApplyCall

Inherits Arborist::ExprCall / Reference / Object

Constructors

new(apply_expr : Apply, rule : Arborist::Rule, pos, left_recursive : Bool = false)
Source

Instance methods

add_candidate_seed_parse_tree(candidate_seed_parse_tree)

Sets the seed_parse_tree field to the longest match parse tree between the existing value of the seed_parse_tree field and the supplied candidate_seed_parse_tree. Returns the longest candidate seed parse tree observed (including candidate_seed_parse_tree)

Source
child_recursive_calls
Source
child_recursive_calls=(child_recursive_calls : Set(ApplyCall))
Source
grew_seed_maximally
Source
grew_seed_maximally!
Source
grew_seed_maximally=(grew_seed_maximally : Bool)
Source
grew_seed_maximally?
Source
has_not_yet_resulted_in_lower_level_seed_growth!
Source
inspect(io)
Source
left_recursive
Source
left_recursive=(left_recursive : Bool)
Source
left_recursive?

returns true if this rule application is left recursive at @pos; false otherwise

Source
log_child_recursive_call(child_recursive_call)
Source
not_safe_to_memoize!
Source
parent_of_recursive_call
Source
parent_of_recursive_call=(parent_of_recursive_call : ApplyCall | Nil)
Source
remove_all_child_recursive_calls
Source
remove_child_recursive_call(child_recursive_call)
Source
remove_self_from_parent_recursive_call
Source
resulted_in_deeper_level_seed_growth!
Source
resulted_in_deeper_level_seed_growth?
Source
resulted_in_left_recursion
Source
resulted_in_left_recursion=(resulted_in_left_recursion : Bool)
Source
resulted_in_left_recursion?
Source
rule

property expr : Expr # inherited from ExprCall property pos : Int32 # inherited from ExprCall

Source
rule_name
Source
safe_to_memoize
Source
safe_to_memoize=(safe_to_memoize : Bool)
Source
safe_to_memoize?
Source
seed_parse_tree
Source
seed_parse_tree=(seed_parse_tree : ParseTree | Nil)
Source
set_left_recursive(new_value : Bool)
Source
set_parent_of_recursive_call(parent_call : Nil | Arborist::ApplyCall)
Source
set_resulted_in_left_recursion(new_value : Bool)
Source
should_grow_seed_maximally?
Source
should_recursive_application_grow_maximally?(child_rule_application)
Source
syntactic_rule?
Source