aboutsummaryrefslogtreecommitdiffstats
path: root/lib/active_relation/relations
Commit message (Collapse)AuthorAgeFilesLines
* string passthrough for joinsNick Kallen2008-04-113-4/+9
|
* removed bind for insertion and updationNick Kallen2008-04-113-4/+4
|
* refactored bind for orderNick Kallen2008-04-112-2/+3
|
* moved bind to factory of selectNick Kallen2008-04-112-2/+3
|
* added attribute.eq(nil)Nick Kallen2008-03-161-1/+1
| | | | - produces attribute IS NULL
* projections now support string passthroughNick Kallen2008-03-161-2/+2
| | | | - there is a weird inconsistency in where bind is called on values; this needs to be resolved
* nested orderingsNick Kallen2008-03-164-8/+10
|
* allowing string passthrough for order clausesNick Kallen2008-03-161-6/+6
|
* added support for `attribute IN ...` and `attribute BETWEEN ...`Nick Kallen2008-03-161-9/+12
| | | | | - IN and BETWEEN are chosen depending on the type of the second operand - ranges (1..2), arrays ([1,2,3]), and relations ("SELECT * ...") are all supported
* formatting insert and update statementsNick Kallen2008-03-162-4/+4
| | | | - values need to be coerced to the type corresponding to the column
* renamed strategy to formatterNick Kallen2008-03-164-5/+5
|
* properly quoting array valuesNick Kallen2008-03-166-15/+14
|
* js/nk - fixed hashingNick Kallen2008-03-152-3/+5
|
* annotated abstract methods on relationNick Kallen2008-03-132-6/+16
|
* annotated abstractionNick Kallen2008-03-134-3/+5
| | | | | - in compound - created superclass for the create/insert/update write operations, marked :call as abstract
* renamed sql formatting strategies to correspond with sql grammar rule names ↵Nick Kallen2008-03-132-10/+10
| | | | in the mysql bnf
* renamed strategy method to formatNick Kallen2008-03-111-2/+2
| | | | | | - strategy (the method on scalar and attribute) is a complex double-dispatching scheme to format (to_sql) a scalar in the light of the particular attribute; that is, it casts strings to integers if the column is int, etc.
* refactored session's interaction with engine/connectionNick Kallen2008-03-114-0/+16
| | | | | - follows law of demeter - Table.engine uses AR::Base adapter
* implemented hashing macro; implemented custom matcher testing this macroNick Kallen2008-03-112-5/+1
|
* scalars are now lifted; the heavy lifting is done by the operations on ↵Nick Kallen2008-03-025-19/+30
| | | | relation (select, join, etc.)
* introduced engine dependency for sql strategiesNick Kallen2008-03-024-17/+16
| | | | - hacked in default engine for scalars -- BAD
* new concept of session boundariesNick Kallen2008-03-023-8/+18
|
* quoting issuesNick Kallen2008-02-244-6/+19
|
* Introduced concept of session. It does not yet support multiple databases, ↵Nick Kallen2008-02-234-25/+48
| | | | nor transactions, but it's a start!
* updating functionalityNick Kallen2008-02-231-0/+17
|
* extracted conditionals concerning the "externalizing" of relations under a join.Nick Kallen2008-02-185-18/+44
|
* made descend public; added test coverage for it; tests for qualify are now ↵Nick Kallen2008-02-188-15/+8
| | | | in terms of descend
* rename __collect__ to descend since the double underscores were ugly.Nick Kallen2008-02-1810-19/+19
|
* introduced __collect__, an internal enumerating operator. This is a map down ↵Nick Kallen2008-02-1611-29/+51
| | | | the tree representing the relation. Monadic map to be precise
* cleanupNick Kallen2008-02-165-19/+11
|
* more test coverageNick Kallen2008-02-163-9/+10
|
* removing unneccessary tests now that attribute lookup is so simpleNick Kallen2008-02-111-1/+0
|
* rename substitute to bind since it 'binds' an object to a new relation.Nick Kallen2008-02-114-7/+7
|
* aesthetic considerationsNick Kallen2008-02-119-15/+29
|
* removing code complexity concerning attribute lookup.Nick Kallen2008-02-115-42/+4
|
* this is very messy but it is finally close to feature-completeNick Kallen2008-02-038-45/+42
|
* i know it doesn't work but need to anchor here...Nick Kallen2008-02-0310-119/+120
|
* filling out some pending specsNick Kallen2008-01-212-1/+4
|
* joining on aggregations; this time where the aggregation is on the right.Nick Kallen2008-01-215-18/+27
|
* merging "schmoin" experiment with joining aggregations into regular "join" ↵Nick Kallen2008-01-214-6/+22
| | | | functionality; half-way done...
* completed initial functionality for joining with aggregation (the meaning of ↵Nick Kallen2008-01-218-41/+43
| | | | which is joining on a subselect/derived table); the big change is the introduction of a #projections protected method; this is a private version of #attributes which preserves implementation information (e.g., the name of the function called)
* adding grouping functionality; added some dummy code ("Schmoin") for ↵Nick Kallen2008-01-166-9/+71
| | | | experimenting with aggregate joins. need to resolve the ambiguity in the #as operator between (SELECT * FROM foo AS bar) vs. (SELECT * FROM foo) AS bar
* Remove ActiveRelation sub-modules and refactor specsBryan Helmkamp2008-01-1413-348/+324
|
* strategy patternNick Kallen2008-01-131-4/+4
|
* experimenting with strategy pattern rather than conditional; not as terse, ↵Nick Kallen2008-01-134-8/+8
| | | | nor transparent, but i still feel it's better
* removed support for scalar select (will return later); added support for ↵Nick Kallen2008-01-138-14/+38
| | | | aliased tables
* removed to_sql invocation for joins in base.rb... unnecessary, but perhaps ↵Nick Kallen2008-01-131-1/+1
| | | | confusing?
* experimenting with new aliasing terminology and interfaceNick Kallen2008-01-123-11/+7
|
* aliasing of relationsNick Kallen2008-01-124-5/+30
|
* added aggregationsNick Kallen2008-01-122-61/+1
|