Commit Graph

3 Commits

Author SHA1 Message Date
Mike Bayer e94baeaacd some comparison fixes 2007-06-28 18:25:39 +00:00
Mike Bayer 0e209828b5 moved "clone" conditional blocks into separate copy_internals() method; was a
conflation of tasks having them in the same place like that.
2007-06-25 03:14:01 +00:00
Mike Bayer 13ac46eb3f - merge of generative_sql branch
- copy_container() removed.  ClauseVisitor.traverse() now features "clone"
flag which allows traversal with copy-and-modify-in-place behavior
- select() objects copyable now [ticket:52] [ticket:569]
- improved support for custom column_property() attributes which
  feature correlated subqueries...work better with eager loading now.
- accept_visitor()  methods removed.  ClauseVisitor now genererates method
names based on class names, or an optional __visit_name__ attribute.  calls
regular visit_XXX methods as they exist, can optionally call an additional
"pre-descent" enter_XXX method to allow stack-based operations on traversals
- select() and union()'s now have "generative" behavior.  methods like
order_by() and group_by() return a *new* instance - the original instance
is left unchanged.  non-generative methods remain as well.
- the internals of select/union vastly simplified - all decision making
regarding "is subquery" and "correlation" pushed to SQL generation phase.
select() elements are now *never* mutated by their enclosing containers
or by any dialect's compilation process
2007-06-24 19:58:41 +00:00