Class: Sexp

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_parser_extras.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#parenObject



1423
1424
1425
# File 'lib/ruby_parser_extras.rb', line 1423

def paren
  @paren ||= false
end

Instance Method Details

#add_all(x) ⇒ Object



1439
1440
1441
# File 'lib/ruby_parser_extras.rb', line 1439

def add_all x
  self.concat x.sexp_body
end

#block_pass?Boolean



1443
1444
1445
# File 'lib/ruby_parser_extras.rb', line 1443

def block_pass?
  any? { |s| Sexp === s && s[0] == :block_pass }
end

#to_symObject



1432
1433
1434
1435
# File 'lib/ruby_parser_extras.rb', line 1432

def to_sym
  raise "no: #{self.inspect}.to_sym is a bug"
  self.value.to_sym
end

#valueObject



1427
1428
1429
1430
# File 'lib/ruby_parser_extras.rb', line 1427

def value
  raise "multi item sexp" if size > 2
  last
end