Class: SimpleQuery::WhereClause

Inherits:
Object
  • Object
show all
Defined in:
lib/simple_query/clauses/where_clause.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(table) ⇒ WhereClause

Returns a new instance of WhereClause.



7
8
9
10
# File 'lib/simple_query/clauses/where_clause.rb', line 7

def initialize(table)
  @table = table
  @conditions = []
end

Instance Attribute Details

#conditionsObject (readonly)

Returns the value of attribute conditions.



5
6
7
# File 'lib/simple_query/clauses/where_clause.rb', line 5

def conditions
  @conditions
end

Instance Method Details

#add(condition) ⇒ Object



12
13
14
15
# File 'lib/simple_query/clauses/where_clause.rb', line 12

def add(condition)
  parsed_conditions = parse_condition(condition)
  @conditions.concat(parsed_conditions)
end

#to_arelObject



17
18
19
20
21
22
23
# File 'lib/simple_query/clauses/where_clause.rb', line 17

def to_arel
  return nil if @conditions.empty?

  @conditions.inject do |combined, current|
    combined.and(current)
  end
end