aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
Commit message (Collapse)AuthorAgeFilesLines
* fixing insert managerAaron Patterson2014-04-081-5/+9
|
* fixing test_table.rbAaron Patterson2014-04-081-9/+9
|
* informix is workingAaron Patterson2014-04-081-2/+1
|
* postgresql visitor is workingAaron Patterson2014-04-081-2/+2
|
* push reduction visitors to a reduction base classAaron Patterson2014-04-081-1/+2
| | | | this lets our old depth first and dot visitors to work normally
* select manager tests are passingAaron Patterson2014-04-081-14/+25
|
* more select manager tests passingAaron Patterson2014-04-081-11/+22
|
* making some of the sql manager tests passAaron Patterson2014-04-081-46/+88
|
* Merge branch 'master' into collectorAaron Patterson2014-04-081-2/+18
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | * master: remove order_clauses since we do not use it fix whitespace and unsupported method args Add Regexp and NotRegexp nodes for PostgreSQL Revert "Merge pull request #253 from corrupt952/master" flatten object.children in visit_Arel_Node_And Added right and full outer joins Conflicts: lib/arel/visitors/to_sql.rb lib/arel/visitors/visitor.rb
| * Merge pull request #248 from chewi/masterAaron Patterson2014-04-071-0/+8
| |\ | | | | | | Add Regexp and NotRegexp nodes for PostgreSQL
| | * Add Regexp and NotRegexp nodes for PostgreSQLJames Le Cuirot2014-04-081-0/+8
| | |
| * | fix whitespace and unsupported method argsAaron Patterson2014-04-071-1/+1
| |/
| * Revert "Merge pull request #253 from corrupt952/master"Aaron Patterson2014-04-071-1/+1
| | | | | | | | | | This reverts commit 6d3ed6d96c4a3ac85b97d81bad95b7254b2aa2d4, reversing changes made to a35fede61ac1a2fcff519ad052f2fcb8808922b9.
| * flatten object.children in visit_Arel_Node_AndKazuki Hasegawa2014-04-031-1/+1
| |
| * Added right and full outer joinsStephen Prater & Fire-Dragon-DoL2014-03-301-0/+8
| |
* | to_sql is passingAaron Patterson2014-04-081-57/+97
| |
* | fixing some tests in to_sqlAaron Patterson2014-04-081-67/+112
| |
* | bind visitor working with collector objectAaron Patterson2014-04-081-2/+3
|/
* Removed all the fiels in lib/arel/visitors/ which needs dependency on 'a' ↵Alex Lin2014-03-241-170/+159
| | | | also fixed the test case for : test/visitors/test_to_sql.rb:22 which pass in the parameter attribute e.g the parameter a.
* add the casting node to the AST at build timeAaron Patterson2014-03-241-14/+26
| | | | | If we add the casting node to the ast at build time, then we can avoid doing the lookup at visit time.
* Merge pull request #246 from cmohanprasath/assign_value_from_attribute_testAaron Patterson2014-02-241-2/+7
|\ | | | | Assign value from attribute test
| * Allow assignment right member to reference columnsLoic Nageleisen2014-02-111-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | Such queries become possible for mortals: ```ruby table.where(table[:qux].eq 'zomg').compile_update(table[:foo] => table[:bar]) ``` Arguably much more sane than using `engine.connection.quote_column_name` or `engine.connection.visitor.accept` on the right hand (bar), which is totally leaking the abstraction.
* | Remove deprecated Arel::SqlLiteralRafael Mendonça França2014-02-101-1/+0
|/
* Documented the case-insensitive nature of the match feature.Robb Shecter2013-12-051-0/+4
| | | Documenting the library's behavior. People and other libraries (cf. Squeel) have come to depend on this behavior, and so am submitting this pull request to specify it authoritatively.
* Remove deprecated calls to using `UpdateManager` without setting ↵Vipul A M2013-11-101-11/+1
| | | | `UpdateManager#key`
* fix one deprecation warningAaron Patterson2013-10-141-1/+1
|
* Make visitors threadsafe by removing @last_columnErnie Miller2013-04-281-167/+171
| | | | | | | | | | | | | | | | | | | | | | The last_column feature of the ToSql visitor and its descendants is what enabled quoting based on the column last visited -- in other words, if you have a standard condition like an equality with a string attribute on the left side and an integer on the right side, then when ARel visits the node, it'll first visit the left side attribute, setting the column of the string attribute as the last column, and resulting in the right side of the condition getting the appropriate quoting. The downside is that this means that visitors can't be shared between threads, because of the state mutation. It also makes for some really weird behavior in the event that the visitor visits a node that happens to contain an attribute you weren't expecting to be there, since it'll potentially quote something based on that attribute. So, it prevents reversing an equality condition. column = value will work, but not value = column, since the last column wouldn't be the column you're hoping for. This is a first pass at fixing this by changing the signature of the visit methods to accept the currently-relevant attribute, if any.
* ARel -> ArelXavier Noria2013-04-141-1/+1
| | | | | | | The project uses "Arel" most of the time, but there were a few "ARel" here and there. I checked with @brynary back in 2010 to pick one for the Rails documentation guidelines and "Arel" was chosen and documented. This patch chooses "Arel" vs "ARel" based on that.
* call the columns hash methodAaron Patterson2013-03-141-3/+3
|
* Denied the quoting of SqlLiteralsNoemj2013-01-291-0/+1
|
* avoid extra string objects in the inner join caseAaron Patterson2012-10-151-1/+6
|
* more roflscaling strings in the visitorAaron Patterson2012-10-121-8/+26
|
* adding some roflscale to the sql visitorAaron Patterson2012-10-121-13/+96
|
* Merge pull request #140 from sunaku/GH-139Aaron Patterson2012-09-241-4/+4
|\ | | | | bugfix: some aggregations lacked DISTINCT emission
| * GH-139: some aggregations lacked DISTINCT emissionSuraj N. Kurapati2012-09-211-4/+4
| |
* | to_sql: add support for emitting SQL subqueriesSuraj N. Kurapati2012-09-221-0/+4
|/
* Fix in [] to be false, in [] to be trueErnie Miller2012-06-141-2/+10
| | | | This is in response to discussion on 62207fa
* Do not generate NOT IN (NULL) when empty rightSantiago Pastorino2012-06-131-1/+1
|
* Add #extract, which produces ANSI SQL function EXTRACT(<field> from <expr>).Alexander Staubo2012-02-231-0/+4
|
* Support ANSI SQL2003 window functions.Alexander Staubo2012-02-221-0/+54
|
* added a module for visiting and transforming bind valuesAaron Patterson2012-02-211-2/+2
|
* bind parameters can be differentiated from sql literalsAaron Patterson2012-02-201-0/+1
|
* bumping to 3.0.0Aaron Patterson2012-01-121-1/+1
|
* Ensure @last_column is cleared after visiting objectNorman Clarke2012-01-071-1/+1
|
* calling cache methods against the connectionAaron Patterson2011-11-191-18/+12
|
* Support locking by default and disable it only for SQLite.Edgars Beigarts2011-08-261-2/+1
|
* Make it the responsibility of the connection to hold on to a visitor for ↵Jon Leighton2011-08-081-4/+2
| | | | generating SQL, rather than the TreeManager. (There is a related commit coming in Active Record.)
* Support update statements containing joinsJon Leighton2011-08-081-4/+1
|
* Add nodes for boolean constantsDaniel Cadenas2011-08-031-0/+8
| | | | | | | | | | | | 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))
* Break Ordering into Ascending/Descending nodes, allow reversalErnie Miller2011-06-151-2/+6
|