Class: Sexp::Atom

Inherits:
Matcher show all
Defined in:
lib/sexp.rb

Overview

Matches any atom (non-Sexp).

examples:

s(:a)        / s{ s(atom) } #=> [s(:a)]
s(:a, s(:b)) / s{ s(atom) } #=> [s(:b)]

Instance Attribute Summary

Attributes inherited from Sexp

#comments, #file, #line

Instance Method Summary collapse

Methods inherited from Matcher

#&, #-@, #/, #=~, #>>, #greedy?, match_subs=, match_subs?, parse, #|

Methods inherited from Sexp

#/, #==, #=~, _, ___, all, any, #array_type?, atom, child, #compact, #deep_each, #depth, #each_of_type, #each_sexp, #find_and_replace_all, #find_node, #find_nodes, from_array, #gsub, include, #initialize, #line_max, m, #map, #mass, #method_missing, #new, not?, #replace_sexp, #respond_to?, s, #search_each, #sexp_body, #sexp_body=, #sexp_type, #sexp_type=, #shift, #structure, #sub, t, #to_a

Constructor Details

This class inherits a constructor from Sexp

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Sexp

Instance Method Details

#inspectObject

:nodoc:



1147
1148
1149
# File 'lib/sexp.rb', line 1147

def inspect #:nodoc:
  "atom"
end

#pretty_print(q) ⇒ Object

:nodoc:



1151
1152
1153
# File 'lib/sexp.rb', line 1151

def pretty_print q # :nodoc:
  q.text "atom"
end

#satisfy?(o) ⇒ Boolean

Satisfied when o is an atom.

Returns:

  • (Boolean)


1143
1144
1145
# File 'lib/sexp.rb', line 1143

def satisfy? o
  !(o.kind_of? Sexp)
end