Module: Yoda::AST::Traversable
- Included in:
- Vnode
- Defined in:
- lib/yoda/ast/traversable.rb
Overview
Add query methods to search expected nodes from AST.
Instance Method Summary collapse
- #query(**query) ⇒ Vnode?
- #query_all(**query) ⇒ Parsing::Traverser::ResultSet
- #query_ancestor(**query) ⇒ Vnode?
- #query_ancestors(**query) ⇒ Parsing::Traverser::ResultSet
Instance Method Details
#query(**query) ⇒ Vnode?
11 12 13 |
# File 'lib/yoda/ast/traversable.rb', line 11 def query(**query) Parsing::Traverser.new(self).query(**query)&.node end |
#query_all(**query) ⇒ Parsing::Traverser::ResultSet
17 18 19 |
# File 'lib/yoda/ast/traversable.rb', line 17 def query_all(**query) Parsing::Traverser.new(self).query(**query) end |
#query_ancestor(**query) ⇒ Vnode?
23 24 25 |
# File 'lib/yoda/ast/traversable.rb', line 23 def query_ancestor(**query) Parsing::Traverser.new(self).query_ancestor(**query)&.node end |
#query_ancestors(**query) ⇒ Parsing::Traverser::ResultSet
29 30 31 |
# File 'lib/yoda/ast/traversable.rb', line 29 def query_ancestors(**query) Parsing::Traverser.new(self).query_ancestors(**query) end |