class Parser::AST::Processor
@api public
Public Instance Methods
on_argument(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 102 def on_argument(node) arg_name, value_node = *node if !value_node.nil? node.updated(nil, [ arg_name, process(value_node) ]) else node end end
on_casgn(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 86 def on_casgn(node) scope_node, name, value_node = *node if !value_node.nil? node.updated(nil, [ process(scope_node), name, process(value_node) ]) else node.updated(nil, [ process(scope_node), name ]) end end
on_const(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 78 def on_const(node) scope_node, name = *node node.updated(nil, [ process(scope_node), name ]) end
on_def(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 154 def on_def(node) name, args_node, body_node = *node node.updated(nil, [ name, process(args_node), process(body_node) ]) end
on_defs(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 163 def on_defs(node) definee_node, name, args_node, body_node = *node node.updated(nil, [ process(definee_node), name, process(args_node), process(body_node) ]) end
on_empty_else(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 282 def on_empty_else(node) node end
on_numblock(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 192 def on_numblock(node) method_call, max_numparam, body = *node node.updated(nil, [ process(method_call), max_numparam, process(body) ]) end
on_op_asgn(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 67 def on_op_asgn(node) var_node, method_name, value_node = *node node.updated(nil, [ process(var_node), method_name, process(value_node) ]) end
on_procarg0(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 129 def on_procarg0(node) if node.children[0].is_a?(Symbol) # This branch gets executed when the builder # is not configured to emit and 'arg' inside 'procarg0', i.e. when # Parser::Builders::Default.emit_arg_inside_procarg0 # is set to false. # # If this flag is set to true this branch is unreachable. # s(:procarg0, :a) on_argument(node) else # s(:procarg0, s(:arg, :a), s(:arg, :b)) process_regular_node(node) end end
on_send(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 175 def on_send(node) receiver_node, method_name, *arg_nodes = *node receiver_node = process(receiver_node) if receiver_node node.updated(nil, [ receiver_node, method_name, *process_all(arg_nodes) ]) end
Also aliased as: on_csend
on_var(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 26 def on_var(node) node end
on_vasgn(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 42 def on_vasgn(node) name, value_node = *node if !value_node.nil? node.updated(nil, [ name, process(value_node) ]) else node end end
process_argument_node(node)
click to toggle source
@private
# File lib/parser/ast/processor.rb, line 115 def process_argument_node(node) on_argument(node) end
Also aliased as: on_arg, on_optarg, on_restarg, on_blockarg, on_shadowarg, on_kwarg, on_kwoptarg, on_kwrestarg, on_forward_arg
process_regular_node(node)
click to toggle source
# File lib/parser/ast/processor.rb, line 9 def process_regular_node(node) node.updated(nil, process_all(node)) end
Also aliased as: on_dstr, on_dsym, on_regexp, on_xstr, on_splat, on_kwsplat, on_array, on_pair, on_hash, on_kwargs, on_irange, on_erange, on_and_asgn, on_or_asgn, on_mlhs, on_masgn, on_args, on_arg_expr, on_restarg_expr, on_blockarg_expr, on_block_pass, on_module, on_class, on_sclass, on_undef, on_alias, on_index, on_indexasgn, on_block, on_lambda, on_while, on_while_post, on_until, on_until_post, on_for, on_return, on_break, on_next, on_redo, on_retry, on_super, on_yield, on_defined?, on_not, on_and, on_or, on_if, on_when, on_case, on_iflipflop, on_eflipflop, on_match_current_line, on_match_with_lvasgn, on_resbody, on_rescue, on_ensure, on_begin, on_kwbegin, on_preexe, on_postexe, on_case_match, on_in_match, on_match_pattern, on_match_pattern_p, on_in_pattern, on_if_guard, on_unless_guard, on_match_rest, on_pin, on_match_alt, on_match_as, on_array_pattern, on_array_pattern_with_tail, on_hash_pattern, on_const_pattern, on_find_pattern
process_var_asgn_node(node)
click to toggle source
@private
# File lib/parser/ast/processor.rb, line 55 def process_var_asgn_node(node) on_vasgn(node) end
process_variable_node(node)
click to toggle source
@private
# File lib/parser/ast/processor.rb, line 31 def process_variable_node(node) on_var(node) end