Module: Ripper::RubyBuilder::Literal
- Included in:
- Ripper::RubyBuilder
- Defined in:
- lib/ripper/ruby_builder/events/literal.rb
Constant Summary collapse
- @@tokens =
%w(class module def do begin rescue ensure retry end if unless then else elsif case when while until for in not and or alias undef super yield return next redo break defined? BEGIN END)
Instance Method Summary collapse
- #on_CHAR(token) ⇒ Object
- #on_dot2(left, right) ⇒ Object
- #on_dot3(left, right) ⇒ Object
- #on_float(token) ⇒ Object
- #on_int(token) ⇒ Object
- #on_kw(token) ⇒ Object
- #on_label(label) ⇒ Object
Instance Method Details
#on_CHAR(token) ⇒ Object
36 37 38 39 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 36 def on_CHAR(token) push Ruby::Char.new(token, position, prolog) end |
#on_dot2(left, right) ⇒ Object
28 29 30 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 28 def on_dot2(left, right) Ruby::Range.new(left, pop_token(:'@..'), right) end |
#on_dot3(left, right) ⇒ Object
32 33 34 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 32 def on_dot3(left, right) Ruby::Range.new(left, pop_token(:'@...'), right) end |
#on_float(token) ⇒ Object
23 24 25 26 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 23 def on_float(token) push Ruby::Float.new(token, position, prolog) end |
#on_int(token) ⇒ Object
18 19 20 21 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 18 def on_int(token) push Ruby::Integer.new(token, position, prolog) end |
#on_kw(token) ⇒ Object
9 10 11 12 13 14 15 16 |
# File 'lib/ripper/ruby_builder/events/literal.rb', line 9 def on_kw(token) if @@tokens.include?(token) push(super) # these aren't passed to the next parser event, so we need them on the stack else push(super) build_keyword(pop_token(:"@#{token}")) end end |