Class: Sexp
- Inherits:
-
Object
- Object
- Sexp
- Defined in:
- lib/roodi/core/visitable_sexp.rb
Instance Method Summary collapse
- #accept(visitor) ⇒ Object
- #children ⇒ Object
- #is_language_node? ⇒ Boolean
- #node_type ⇒ Object
- #visitable_children ⇒ Object
Instance Method Details
#accept(visitor) ⇒ Object
5 6 7 |
# File 'lib/roodi/core/visitable_sexp.rb', line 5 def accept(visitor) visitor.visit(self) end |
#children ⇒ Object
13 14 15 |
# File 'lib/roodi/core/visitable_sexp.rb', line 13 def children find_all { | sexp | Sexp === sexp } end |
#is_language_node? ⇒ Boolean
17 18 19 |
# File 'lib/roodi/core/visitable_sexp.rb', line 17 def is_language_node? first.class == Symbol end |
#node_type ⇒ Object
9 10 11 |
# File 'lib/roodi/core/visitable_sexp.rb', line 9 def node_type first end |
#visitable_children ⇒ Object
21 22 23 24 |
# File 'lib/roodi/core/visitable_sexp.rb', line 21 def visitable_children parent = is_language_node? ? sexp_body : self parent.children end |