Class: Parser::AST::Processor
- Inherits:
-
AST::Processor
- Object
- AST::Processor
- Parser::AST::Processor
- Defined in:
- lib/parser/ast/processor.rb
Direct Known Subclasses
Instance Method Summary collapse
- #on_arg ⇒ Object
- #on_argument(node) ⇒ Object
- #on_back_ref ⇒ Object
- #on_blockarg ⇒ Object
- #on_casgn(node) ⇒ Object
- #on_const(node) ⇒ Object
- #on_cvar ⇒ Object
- #on_cvasgn ⇒ Object
- #on_def(node) ⇒ Object
- #on_defs(node) ⇒ Object
- #on_gvar ⇒ Object
- #on_gvasgn ⇒ Object
- #on_ivar ⇒ Object
- #on_ivasgn ⇒ Object
- #on_kwarg ⇒ Object
- #on_kwoptarg ⇒ Object
- #on_kwrestarg ⇒ Object
- #on_lvar ⇒ Object
- #on_lvasgn ⇒ Object
- #on_nth_ref ⇒ Object
- #on_op_asgn(node) ⇒ Object
- #on_optarg ⇒ Object
- #on_restarg ⇒ Object
- #on_send(node) ⇒ Object
- #on_shadowarg ⇒ Object
- #on_var(node) ⇒ Object
- #on_vasgn(node) ⇒ Object
- #process_argument_node(node) ⇒ Object
- #process_regular_node(node) ⇒ Object (also: #on_dstr, #on_dsym, #on_regexp, #on_xstr, #on_splat, #on_array, #on_pair, #on_hash, #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_block, #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)
- #process_var_asgn_node(node) ⇒ Object
- #process_variable_node(node) ⇒ Object
Instance Method Details
#on_arg ⇒ Object
102 103 104 |
# File 'lib/parser/ast/processor.rb', line 102 def process_argument_node(node) on_argument(node) end |
#on_argument(node) ⇒ Object
89 90 91 92 93 94 95 |
# File 'lib/parser/ast/processor.rb', line 89 def on_argument(node) arg_name, value_node = *node node.updated(nil, [ arg_name, process(value_node) ]) end |
#on_back_ref ⇒ Object
36 37 38 |
# File 'lib/parser/ast/processor.rb', line 36 def process_variable_node(node) on_var(node) end |
#on_blockarg ⇒ Object
105 106 107 |
# File 'lib/parser/ast/processor.rb', line 105 def process_argument_node(node) on_argument(node) end |
#on_casgn(node) ⇒ Object
79 80 81 82 83 84 85 |
# File 'lib/parser/ast/processor.rb', line 79 def on_casgn(node) scope_node, name, value_node = *node node.updated(nil, [ process(scope_node), name, process(value_node) ]) end |
#on_const(node) ⇒ Object
71 72 73 74 75 76 77 |
# File 'lib/parser/ast/processor.rb', line 71 def on_const(node) scope_node, name = *node node.updated(nil, [ process(scope_node), name ]) end |
#on_cvar ⇒ Object
35 36 37 |
# File 'lib/parser/ast/processor.rb', line 35 def process_variable_node(node) on_var(node) end |
#on_cvasgn ⇒ Object
55 56 57 |
# File 'lib/parser/ast/processor.rb', line 55 def process_var_asgn_node(node) on_vasgn(node) end |
#on_def(node) ⇒ Object
120 121 122 123 124 125 126 127 |
# File 'lib/parser/ast/processor.rb', line 120 def on_def(node) name, args_node, body_node = *node node.updated(nil, [ name, process(args_node), process(body_node) ]) end |
#on_defs(node) ⇒ Object
129 130 131 132 133 134 135 136 |
# File 'lib/parser/ast/processor.rb', line 129 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_gvar ⇒ Object
34 35 36 |
# File 'lib/parser/ast/processor.rb', line 34 def process_variable_node(node) on_var(node) end |
#on_gvasgn ⇒ Object
54 55 56 |
# File 'lib/parser/ast/processor.rb', line 54 def process_var_asgn_node(node) on_vasgn(node) end |
#on_ivar ⇒ Object
33 34 35 |
# File 'lib/parser/ast/processor.rb', line 33 def process_variable_node(node) on_var(node) end |
#on_ivasgn ⇒ Object
53 54 55 |
# File 'lib/parser/ast/processor.rb', line 53 def process_var_asgn_node(node) on_vasgn(node) end |
#on_kwarg ⇒ Object
107 108 109 |
# File 'lib/parser/ast/processor.rb', line 107 def process_argument_node(node) on_argument(node) end |
#on_kwoptarg ⇒ Object
108 109 110 |
# File 'lib/parser/ast/processor.rb', line 108 def process_argument_node(node) on_argument(node) end |
#on_kwrestarg ⇒ Object
109 110 111 |
# File 'lib/parser/ast/processor.rb', line 109 def process_argument_node(node) on_argument(node) end |
#on_lvar ⇒ Object
32 33 34 |
# File 'lib/parser/ast/processor.rb', line 32 def process_variable_node(node) on_var(node) end |
#on_lvasgn ⇒ Object
52 53 54 |
# File 'lib/parser/ast/processor.rb', line 52 def process_var_asgn_node(node) on_vasgn(node) end |
#on_nth_ref ⇒ Object
37 38 39 |
# File 'lib/parser/ast/processor.rb', line 37 def process_variable_node(node) on_var(node) end |
#on_op_asgn(node) ⇒ Object
60 61 62 63 64 65 66 |
# File 'lib/parser/ast/processor.rb', line 60 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_optarg ⇒ Object
103 104 105 |
# File 'lib/parser/ast/processor.rb', line 103 def process_argument_node(node) on_argument(node) end |
#on_restarg ⇒ Object
104 105 106 |
# File 'lib/parser/ast/processor.rb', line 104 def process_argument_node(node) on_argument(node) end |
#on_send(node) ⇒ Object
141 142 143 144 145 146 147 148 |
# File 'lib/parser/ast/processor.rb', line 141 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 |
#on_shadowarg ⇒ Object
106 107 108 |
# File 'lib/parser/ast/processor.rb', line 106 def process_argument_node(node) on_argument(node) end |
#on_var(node) ⇒ Object
23 24 25 |
# File 'lib/parser/ast/processor.rb', line 23 def on_var(node) node end |
#on_vasgn(node) ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/parser/ast/processor.rb', line 39 def on_vasgn(node) name, value_node = *node node.updated(nil, [ name, process(value_node) ]) end |
#process_argument_node(node) ⇒ Object
98 99 100 |
# File 'lib/parser/ast/processor.rb', line 98 def process_argument_node(node) on_argument(node) end |
#process_regular_node(node) ⇒ Object Also known as: on_dstr, on_dsym, on_regexp, on_xstr, on_splat, on_array, on_pair, on_hash, 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_block, 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
8 9 10 |
# File 'lib/parser/ast/processor.rb', line 8 def process_regular_node(node) node.updated(nil, process_all(node)) end |
#process_var_asgn_node(node) ⇒ Object
48 49 50 |
# File 'lib/parser/ast/processor.rb', line 48 def process_var_asgn_node(node) on_vasgn(node) end |
#process_variable_node(node) ⇒ Object
28 29 30 |
# File 'lib/parser/ast/processor.rb', line 28 def process_variable_node(node) on_var(node) end |