Module: Ripper::RubyBuilder::Method
- Included in:
- Ripper::RubyBuilder
- Defined in:
- lib/ripper/ruby_builder/events/method.rb
Instance Method Summary collapse
- #on_def(identifier, params, body) ⇒ Object
- #on_defs(target, separator, identifier, params, body) ⇒ Object
Instance Method Details
#on_def(identifier, params, body) ⇒ Object
4 5 6 7 8 9 10 |
# File 'lib/ripper/ruby_builder/events/method.rb', line 4 def on_def(identifier, params, body) rdelim = pop_token(:@end) # the identifier might be a keyword, e.g. def class; end. could even be def def; end identifier = pop_identifier(identifier.type, :right => rdelim) if identifier.is_a?(Ripper::RubyBuilder::Token) ldelim = pop_token(:@def, :pass => true) Ruby::Method.new(nil, nil, identifier, params, body, ldelim, rdelim) end |
#on_defs(target, separator, identifier, params, body) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/ripper/ruby_builder/events/method.rb', line 12 def on_defs(target, separator, identifier, params, body) rdelim = pop_token(:@end) ldelim = pop_token(:@def, :pass => true) identifier = pop_identifier(identifier.type, :left => ldelim, :right => rdelim) if identifier.is_a?(Ripper::RubyBuilder::Token) separator = pop_token(:@period, :'@::') Ruby::Method.new(target, separator, identifier, params, body, ldelim, rdelim) end |