Class: Neo4j::Cypher::Return

Inherits:
Object
  • Object
show all
Includes:
Clause
Defined in:
lib/neo4j-cypher/return.rb

Overview

Used for returning several values, e.g. RETURN x,y,z

Defined Under Namespace

Classes: EvalContext

Constant Summary

Constants included from Clause

Clause::NAME, Clause::ORDER

Instance Attribute Summary collapse

Attributes included from Clause

#clause_list, #clause_type, #eval_context, #expr, #insert_order

Instance Method Summary collapse

Methods included from Clause

#<=>, #alias_name, #as_alias, #as_alias?, #clause_position, #create_clause_args_for, #match_value, #match_value=, #prefix, #referenced!, #referenced?, #return_value, #separator, #to_prop_string, #valid_clause?, #var_name, #var_name=

Constructor Details

#initialize(clause_list, return_items, opts = {}) ⇒ Return

Returns a new instance of Return.



66
67
68
69
70
# File 'lib/neo4j-cypher/return.rb', line 66

def initialize(clause_list, return_items, opts = {})
  super(clause_list, :return, EvalContext)
  @return_items = return_items.map { |ri| ri.is_a?(ReturnItem::EvalContext) ? ri.clause : ReturnItem.new(clause_list, ri) }
  opts.each_pair { |k, v| self.eval_context.send(k, v) }
end

Instance Attribute Details

#return_itemsObject (readonly)

Returns the value of attribute return_items.



64
65
66
# File 'lib/neo4j-cypher/return.rb', line 64

def return_items
  @return_items
end

Instance Method Details

#to_cypherObject



72
73
74
# File 'lib/neo4j-cypher/return.rb', line 72

def to_cypher
  @return_items.map(&:return_value_with_alias).join(',')
end