aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/predications.rb
Commit message (Collapse)AuthorAgeFilesLines
* build quoted nodes in factory methodsAaron Patterson2014-03-241-12/+16
|
* build quoted stringsAaron Patterson2014-03-241-7/+7
|
* add the casting node to the AST at build timeAaron Patterson2014-03-241-4/+4
| | | | | If we add the casting node to the ast at build time, then we can avoid doing the lookup at visit time.
* Support Float::INFINITY in rangesTim Pope2013-02-191-2/+18
|
* Add nodes for boolean constantsDaniel Cadenas2011-08-031-1/+0
| | | | | | | | | | | | This is useful for dynamically created predicates e.g: expr1 = table.create_false expr2 = table.create_false expr1 = create_a_predicate() if some_condition expr2 = create_another_predicate() if some_other_condition table.where(expr1.and(expr2))
* Move #as to AliasPredication, stop overriding Function's #as.Ernie Miller2011-04-291-4/+0
|
* Revert "Merged pull request #40 from gmile/master."Aaron Patterson2011-04-291-11/+1
| | | | | This reverts commit 490d6f98f8974c717ddca29df162f5f1ad48e094, reversing changes made to dd07005dceb6641214f7d1166f75acbd379fb570.
* Merged pull request #40 from gmile/master.Aaron Patterson2011-04-291-1/+11
|\ | | | | Passing nil in array generates improper SQL
| * Generate more sqlish queue.gmile2011-03-241-1/+11
| | | | | | | | | | | | | | | | Now, instead of the following SQL code: some_field IN (1, 2, NULL) Arel will generate the proper one: some_field IN (1, 2) OR IS NULL
* | Add support for ordering on expressionsArthur Taylor2011-04-281-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: lib/arel.rb lib/arel/attributes/attribute.rb lib/arel/nodes/infix_operation.rb lib/arel/nodes/named_function.rb Conflicts: lib/arel.rb lib/arel/attributes/attribute.rb
* | Improve performance of grouping_any/grouping_allErnie Miller2011-04-191-11/+4
|/
* Make as factory method convert alias name to SqlLiteralErnie Miller2011-03-121-1/+1
|
* Fix modification of input on *_any/*_all predicationsErnie Miller2011-02-081-0/+2
|
* stop using deprecated AND usageAaron Patterson2010-12-091-3/+3
|
* refactoring where, fixing subselectAaron Patterson2010-12-071-2/+2
|
* implementation for passing a subquery to #in and #not_inSven Fuchs2010-12-071-2/+2
|
* adding an AS nodeAaron Patterson2010-11-231-1/+5
|
* Fixed Ruby 1.8 performance regression for Nodes::In and Nodes::NotIn queries ↵Rolf Timmermans2010-11-181-7/+7
| | | | with very wide ranges that was caused by using Range#min and Range#max rather than Range#begin and Range#end. Ruby 1.8 uses Enumerable#min and Enumerable#max in Ranges, which calls to_a internally. It is not necessary to enumerate the range in order to construct the predicates. At the same time, an off-by-one error (failing test) with exclusive-end Ranges in Nodes::NotIn queries was fixed.
* Refactor predication methods to be available to SqlLiterals as well.Ernie Miller2010-10-271-0/+177