Module: Ripper::RubyBuilder::Symbol

Included in:
Ripper::RubyBuilder
Defined in:
lib/ripper/ruby_builder/events/symbol.rb

Instance Method Summary collapse

Instance Method Details

#on_dyna_symbol(symbol) ⇒ Object



15
16
17
18
19
# File 'lib/ripper/ruby_builder/events/symbol.rb', line 15

def on_dyna_symbol(symbol)
  string_stack.pop if symbol == string_stack.last
  symbol.rdelim = pop_token(:@tstring_end)
  symbol
end

#on_symbol(token) ⇒ Object



9
10
11
12
13
# File 'lib/ripper/ruby_builder/events/symbol.rb', line 9

def on_symbol(token)
  push
  token = pop_identifier(token.type) if token.try(:known?)
  Ruby::Symbol.new(token, pop_token(:@symbeg))
end

#on_symbol_literal(symbol) ⇒ Object



4
5
6
7
# File 'lib/ripper/ruby_builder/events/symbol.rb', line 4

def on_symbol_literal(symbol)
  symbol = pop_identifier(symbol.type) if symbol.try(:known?) # happens w/ symbols that are also keywords, e.g. :class
  symbol
end