class Neo4j::QueryProxy
- Neo4j::QueryProxy
- Reference
- Object
Overview
works with a very simplified model of Cypher (MATCH, WHEREs, ORDER BYs, SKIP, LIMIT, RETURN)
Defined in:
neo4j/querying.crInstance Method Summary
-
#add_proxy : QueryProxy | Nil
for associations
-
#add_proxy=(add_proxy : QueryProxy | Nil)
for associations
-
#chain(proxy : QueryProxy)
chaining two proxies together will join the two match clauses and wheres (everything else will use the last value)
-
#clone_for_chain : QueryProxy
clone the query, not the results
- #create_merge : String
- #create_merge=(create_merge : String)
- #cypher_params : Hash(String, Neo4j::Value)
-
#cypher_query : String | Nil
expose query building properties to make debugging easier
- #delete_proxy : QueryProxy | Nil
- #delete_proxy=(delete_proxy : QueryProxy | Nil)
- #distinct : QueryProxy
- #executed? : Bool
-
#expand_where(where : Where) : ExpandedWhere
this will be overridden in subclass
- #limit(limit : Int32) : QueryProxy
- #limit : Int32
- #limit=(limit : Int32)
- #match : String
- #match=(match : String)
- #obj_variable_name : String
- #obj_variable_name=(obj_variable_name : String)
-
#order(prop : Symbol | String, dir : SortDirection = Neo4j::QueryProxy::SortDirection::ASC) : QueryProxy
this form is mainly for internal use, but use it if you need it
-
#order(*params) : QueryProxy
ex: .order(:name, :created_by)
-
#order(**params) : QueryProxy
ex: .order(name: :ASC, created_by: :desc)
- #order_bys : Array({String | Symbol, Neo4j::QueryProxy::SortDirection})
- #order_bys=(order_bys : Array(Tuple(String | Symbol, Neo4j::QueryProxy::SortDirection)))
- #query_as(obj_var : Symbol | String, rel_var : Symbol | String) : QueryProxy
-
#query_as(obj_var : Symbol | String) : QueryProxy
TODO want to expose #query_as as part of public api, but would first need to do some find/replace magic on existing match/create_merge/wheres/ret NOTE: ActiveNode called this .as, but crystal doesn't allow that name
- #raw_result : Neo4j::Result | Nil
- #rel_variable_name : String
- #rel_variable_name=(rel_variable_name : String)
- #removes : Array(String)
- #removes=(removes : Array(String))
- #reorder(*params) : QueryProxy
- #reorder(**params) : QueryProxy
- #reset_query
- #ret : String
- #ret=(ret : String)
- #ret_distinct : Bool
- #ret_distinct=(ret_distinct : Bool)
- #return_values : Array(Hash(String, Array(Neo4j::Value) | Bool | Float64 | Hash(String, Neo4j::Value) | Int16 | Int32 | Int64 | Int8 | Neo4j::Duration | Neo4j::LatLng | Neo4j::Node | Neo4j::Path | Neo4j::Point2D | Neo4j::Point3D | Neo4j::Relationship | Neo4j::UnboundRelationship | String | Time | Nil))
- #set(params) : QueryProxy
- #set(**params) : QueryProxy
- #sets : Array({String, Hash(String | Symbol, Neo4j::Value)})
- #sets=(sets : Array(Tuple(String, Hash(String | Symbol, Neo4j::Value))))
-
#skip(skip : Int32) : QueryProxy
shown here for documentation purposes, but actual definition is in macro included (type-specific subclass) due to conflict with Enumerable#skip
- #skip : Int32
- #skip=(skip : Int32)
- #unorder : QueryProxy
- #where(str : String, **params) : QueryProxy
- #where(**params) : QueryProxy
- #where_not(str : String, **params) : QueryProxy
- #where_not(**params) : QueryProxy
- #wheres : Array({String, Hash(String, Neo4j::Value)})
- #wheres=(wheres : Array(Tuple(String, Hash(String, Neo4j::Value))))
Instance Method Detail
chaining two proxies together will join the two match clauses and wheres (everything else will use the last value)
this form is mainly for internal use, but use it if you need it
TODO want to expose #query_as as part of public api, but would first need to do some find/replace magic on existing match/create_merge/wheres/ret
NOTE ActiveNode called this .as, but crystal doesn't allow that name
shown here for documentation purposes, but actual definition is in macro included (type-specific subclass) due to conflict with Enumerable#skip