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, 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



499
500
501
# File 'lib/neo4j-core/query_clauses.rb', line 499

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

Instance Method Details

#from_key_and_value(key, value) ⇒ Object



481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
# File 'lib/neo4j-core/query_clauses.rb', line 481

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