A function for counting number of nodes of a given class.
# File lib/neo4j/rule/functions/count.rb, line 37 def self.function_name :count end
# File lib/neo4j/rule/functions/count.rb, line 7 def initialize @property = '_classname' end
# File lib/neo4j/rule/functions/count.rb, line 21 def add(rule_name, rule_node, new_value) key = rule_node_property(rule_name) rule_node[key] ||= 0 rule_node[key] += 1 end
# File lib/neo4j/rule/functions/count.rb, line 11 def calculate?(changed_property) true end
# File lib/neo4j/rule/functions/count.rb, line 31 def classes_changed(rule_name, rule_node, class_change) key = rule_node_property(rule_name) rule_node[key] ||= 0 rule_node[key] += class_change.net_change end
# File lib/neo4j/rule/functions/count.rb, line 15 def delete(rule_name, rule_node, old_value) key = rule_node_property(rule_name) rule_node[key] ||= 0 rule_node[key] -= 1 end
# File lib/neo4j/rule/functions/count.rb, line 27 def update(*) # we are only counting, not interested in property changes end