Class: Neo4j::Core::Traversal::Traverser
- Inherits:
-
Object
- Object
- Neo4j::Core::Traversal::Traverser
- Defined in:
- lib/neo4j-wrapper/rule/neo4j_core_ext/traverser.rb
Overview
Extends the Neo4j::Core Traverser in order to add rule traversal methods.
Instance Method Summary collapse
Instance Method Details
#filter_method(name, &proc) ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/neo4j-wrapper/rule/neo4j_core_ext/traverser.rb', line 6 def filter_method(name, &proc) # add method name singelton = class << self; self; end singelton.send(:define_method, name) { filter &proc } self end |
#functions_method(func, rule_node, rule_name) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/neo4j-wrapper/rule/neo4j_core_ext/traverser.rb', line 16 def functions_method(func, rule_node, rule_name) singelton = class << self; self; end singelton.send(:define_method, func.class.function_name) do |*args| function_id = args.empty? ? "_classname" : args[0] function = rule_node.find_function(rule_name, func.class.function_name, function_id) function.value(rule_node.rule_node, rule_name) end self end |