HTTPS clone URL
Subversion checkout URL
Please sign in to comment.
Merge branch 'tree'
* tree: (22 commits) remove dead code add some convenient methods for avoiding array allocations hide join_constraints inside the JoinDependency object speed up match? expose the root node and call it just skip the join if it's already there speed up finding existing nodes make node search more efficient remove == so we can see where walking up parents occurs push parent up to the superclass convert JoinBase to a tree and remove the Node class names are guaranteed to be symbols eliminate function that is only used in one place we will always detect the same node, so just pass the node in we do not need to to_s the name all the time parent is guaranteed to be the same reduce number of comparisons and array allocations rename the variable to make more sense with a tree walk the tree rather than generating a hash and walking it do not convert the tree to a list just for the first node ...
- Loading branch information...
Showing with 105 additions and 109 deletions.
- +51 −88 activerecord/lib/active_record/associations/join_dependency.rb
- +4 −10 activerecord/lib/active_record/associations/join_dependency/join_association.rb
- +7 −3 activerecord/lib/active_record/associations/join_dependency/join_base.rb
- +42 −6 activerecord/lib/active_record/associations/join_dependency/join_part.rb
- +1 −2 activerecord/lib/active_record/relation/query_methods.rb