Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | construct joins by walking the outer join tree | Aaron Patterson | 2013-10-21 | 1 | -5/+34 | |
| | ||||||
* | pass the outer joins to join_constraints | Aaron Patterson | 2013-10-20 | 1 | -1/+2 | |
| | ||||||
* | disconnect join_constraints from the instance | Aaron Patterson | 2013-10-20 | 1 | -1/+1 | |
| | ||||||
* | pass in scope chain so reflection is not needed | Aaron Patterson | 2013-10-20 | 1 | -1/+1 | |
| | ||||||
* | pass the foreign table and class to the join_constraints method | Aaron Patterson | 2013-10-20 | 1 | -1/+3 | |
| | ||||||
* | pass the join type to the join_constraints method | Aaron Patterson | 2013-10-20 | 1 | -1/+2 | |
| | ||||||
* | use the node as cache so we can avoid accessing the table | Aaron Patterson | 2013-10-15 | 1 | -13/+13 | |
| | ||||||
* | apply tables to the whole tree from the outside | Aaron Patterson | 2013-10-15 | 1 | -14/+8 | |
| | ||||||
* | apply table aliases after the AST has been built | Aaron Patterson | 2013-10-15 | 1 | -1/+13 | |
| | ||||||
* | stop reversing tables until we absolutely must | Aaron Patterson | 2013-10-15 | 1 | -1/+1 | |
| | ||||||
* | pass the chain the join_constraints | Aaron Patterson | 2013-10-15 | 1 | -1/+2 | |
| | ||||||
* | move column_names_with_alias on to the alias cache object | Aaron Patterson | 2013-10-14 | 1 | -8/+18 | |
| | ||||||
* | keep a cache on the alias object | Aaron Patterson | 2013-10-14 | 1 | -11/+21 | |
| | ||||||
* | move alias building to the table node | Aaron Patterson | 2013-10-14 | 1 | -4/+8 | |
| | ||||||
* | let the Table class build the ARel alias nodes | Aaron Patterson | 2013-10-14 | 1 | -4/+9 | |
| | ||||||
* | store aliases in a better structure | Aaron Patterson | 2013-10-14 | 1 | -4/+17 | |
| | ||||||
* | unhook `join_constraints` from the @tables ivar | Aaron Patterson | 2013-10-13 | 1 | -1/+1 | |
| | ||||||
* | push the node->AR cache up one level | Aaron Patterson | 2013-10-13 | 1 | -10/+11 | |
| | ||||||
* | remove dead code | Aaron Patterson | 2013-10-11 | 1 | -5/+0 | |
| | ||||||
* | remove useless code | Aaron Patterson | 2013-10-11 | 1 | -24/+20 | |
| | | | | | turns out that the activerecord object will always have the same id as the row from which it was constructed | |||||
* | the parent hash keeps the records unique already | Aaron Patterson | 2013-10-11 | 1 | -4/+3 | |
| | ||||||
* | keep track of AR objects we've made as we walk the tree | Aaron Patterson | 2013-10-11 | 1 | -35/+22 | |
| | | | | | Remove duplicate removal code because we avoid adding duplicates as we walk the tree the first time | |||||
* | push up the loaded target checking | Aaron Patterson | 2013-10-11 | 1 | -9/+13 | |
| | ||||||
* | we always have a model now | Aaron Patterson | 2013-10-11 | 1 | -1/+1 | |
| | ||||||
* | extract conditional to the caller | Aaron Patterson | 2013-10-11 | 1 | -11/+13 | |
| | ||||||
* | we always have a reflection and it is on the node | Aaron Patterson | 2013-10-11 | 1 | -2/+2 | |
| | ||||||
* | fix variable name. we're constructing a model, not an association | Aaron Patterson | 2013-10-11 | 1 | -12/+12 | |
| | ||||||
* | reflections know if they are collections, so ask | Aaron Patterson | 2013-10-11 | 1 | -6/+5 | |
| | | | | | We don't need to poke at the macro to figure out if we should look for a cached record or not | |||||
* | belongs_to can be treated the same way as has_one | Aaron Patterson | 2013-10-11 | 1 | -12/+5 | |
| | ||||||
* | cache the primary key / typcast lookup on the stack | Aaron Patterson | 2013-10-11 | 1 | -9/+9 | |
| | ||||||
* | remove dead code / make duplicate code more obvious | Aaron Patterson | 2013-10-11 | 1 | -4/+4 | |
| | ||||||
* | pull parent and alias tacker from the nodes. | Aaron Patterson | 2013-10-11 | 1 | -1/+18 | |
| | | | | For now, we'll set the tables on the nodes manually. | |||||
* | decouple the `join_constraints` method from the parent pointer | Aaron Patterson | 2013-10-11 | 1 | -1/+7 | |
| | ||||||
* | refactor a little so we can remove some methods | Aaron Patterson | 2013-10-10 | 1 | -1/+1 | |
| | ||||||
* | the parent node is on the stack, so use it | Aaron Patterson | 2013-10-10 | 1 | -4/+4 | |
| | | | | | we don't need to walk back up the node's parents when we have the parent on the stack | |||||
* | pass the parent node to the construct method | Aaron Patterson | 2013-10-10 | 1 | -7/+6 | |
| | ||||||
* | nodes do not need to be sorted | Aaron Patterson | 2013-10-10 | 1 | -1/+1 | |
| | ||||||
* | delete unused code | Aaron Patterson | 2013-10-10 | 1 | -40/+0 | |
| | | | | | Now that we merge trees from the top down, we don't need to search through the whole tree for particular nodes, just walk it and merge. | |||||
* | merge JoinDependency as outer joins | Aaron Patterson | 2013-10-10 | 1 | -0/+30 | |
| | | | | Merge JoinDependency objects as outer joins | |||||
* | stuff the join dependency object in the "anything goes" hash. | Aaron Patterson | 2013-10-10 | 1 | -2/+2 | |
| | ||||||
* | stop splatting things back and forth | Aaron Patterson | 2013-10-10 | 1 | -1/+1 | |
| | ||||||
* | stop creating a bunch of relation objects when we can slap all the joins on ↵ | Aaron Patterson | 2013-10-09 | 1 | -3/+3 | |
| | | | | at once | |||||
* | remove dead code | Aaron Patterson | 2013-10-09 | 1 | -13/+0 | |
| | ||||||
* | add some convenient methods for avoiding array allocations | Aaron Patterson | 2013-10-09 | 1 | -3/+3 | |
| | ||||||
* | hide join_constraints inside the JoinDependency object | Aaron Patterson | 2013-10-09 | 1 | -6/+6 | |
| | ||||||
* | expose the root node and call it | Aaron Patterson | 2013-10-09 | 1 | -21/+11 | |
| | ||||||
* | just skip the join if it's already there | Aaron Patterson | 2013-10-09 | 1 | -14/+10 | |
| | | | | Remove the annoying `find_or_build` stuff. | |||||
* | speed up finding existing nodes | Aaron Patterson | 2013-10-09 | 1 | -3/+1 | |
| | | | | | The node must be a child of the parent passed in, so only search children of the parent node | |||||
* | make node search more efficient | Aaron Patterson | 2013-10-09 | 1 | -3/+20 | |
| | | | | | | Rather than search every node in the tree, comparing that node and all of its parents every time, start at the root from both sides and work our way down the tree | |||||
* | remove == so we can see where walking up parents occurs | Aaron Patterson | 2013-10-09 | 1 | -10/+15 | |
| |