Class: Neo4j::Core::QueryClauses::SetClause

Inherits:
Clause
  • Object
show all
Defined in:
lib/neo4j-core/query_clauses.rb

Direct Known Subclasses

OnCreateSetClause

Constant Summary collapse

KEYWORD =
'SET'

Constants inherited from Clause

Clause::AND, Clause::COMMA_SPACE, Clause::UNDERSCORE

Constants included from CypherTranslator

CypherTranslator::EMPTY_PROPS, CypherTranslator::SANITIZE_ESCAPED_REGEXP

Instance Attribute Summary

Attributes inherited from Clause

#arg, #params

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Clause

#_nested_value_hash?, #_use_key_for_var?, #attributes_from_key_and_value, from_arg, from_args, #from_hash, #from_string, #initialize, keyword, keyword_downcase, #label_from_key_and_value, #node_from_key_and_value, paramaterize_key!, to_cypher, #value, #var_from_key_and_value

Methods included from CypherTranslator

#create_escape_value, #cypher_prop_list!, #cypher_string, #escape_quotes, #escape_value, #label_string, #prop_identifier, #sanitize_escape_sequences, sanitized_column_names, translate_response

Constructor Details

This class inherits a constructor from Neo4j::Core::QueryClauses::Clause

Class Method Details

.clause_string(clauses) ⇒ Object



513
514
515
# File 'lib/neo4j-core/query_clauses.rb', line 513

def clause_string(clauses)
  clauses.map!(&:value).join(Clause::COMMA_SPACE)
end

Instance Method Details

#from_key_and_value(key, value) ⇒ Object



495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
# File 'lib/neo4j-core/query_clauses.rb', line 495

def from_key_and_value(key, value)
  case value
  when String, Symbol then "#{key}:`#{value}`"
  when Hash
    if @options[:set_props]
      add_param("#{key}_set_props", value)
      "#{key} = {#{key}_set_props}"
    else
      value.map { |k, v| key_value_string("#{key}.`#{k}`", v, ['setter'], true) }
    end
  when Array then value.map { |v| from_key_and_value(key, v) }
  when NilClass then []
  else
    fail ArgError, value
  end
end