Class: JetSet::Query
- Inherits:
-
Object
- Object
- JetSet::Query
- Defined in:
- lib/jet_set/query.rb
Overview
Parsed JetSet query
Instance Attribute Summary collapse
-
#sql ⇒ Object
readonly
Returns the value of attribute sql.
Instance Method Summary collapse
-
#initialize(attrs = {}) ⇒ Query
constructor
Parameters: attrs: sql: parsed valid SQL expression returns_single_item: does SQL expression return single row? (LIMIT 1) entities: entities (
JetSet:EntityMapping
) enumerated in the query statements. -
#refers_to?(type) ⇒ Boolean
Is entity type enumerated in ENTITY statements?.
-
#returns_single_item? ⇒ Boolean
Does SQL expression return single row? (LIMIT 1).
Constructor Details
#initialize(attrs = {}) ⇒ Query
Parameters:
attrs:
sql: parsed valid SQL expression
returns_single_item: does SQL expression return single row? (LIMIT 1)
entities: entities (+JetSet:EntityMapping+) enumerated in the query statements
11 12 13 14 15 |
# File 'lib/jet_set/query.rb', line 11 def initialize(attrs = {}) @sql = attrs[:sql] @returns_single_item = attrs[:returns_single_item] || false @entities = attrs[:entities] || [] end |
Instance Attribute Details
#sql ⇒ Object (readonly)
Returns the value of attribute sql.
4 5 6 |
# File 'lib/jet_set/query.rb', line 4 def sql @sql end |
Instance Method Details
#refers_to?(type) ⇒ Boolean
Is entity type enumerated in ENTITY statements?
23 24 25 |
# File 'lib/jet_set/query.rb', line 23 def refers_to?(type) @entities.any?{|entity| entity.type == type} end |
#returns_single_item? ⇒ Boolean
Does SQL expression return single row? (LIMIT 1)
18 19 20 |
# File 'lib/jet_set/query.rb', line 18 def returns_single_item? @returns_single_item end |