just to note, I am leaning towards very simple generative method  
names for all the things we need, where(), having(), order_by(),  
group_by(), distinct(), etc.  I am going to have it do "copy on  
generate" by default.

the copy operation itself will be pretty quick, working the way I  
have it working with Query now in the 0.4 branch, i.e. its just  q=  
Query.__new__() then a q.__dict__ = self.__dict__.copy().  the "deep"  
copy operations occur upon the generative methods...i.e. instead of  
saying "q.where_clauses.append(clause)", it does "q.where_clauses  
=q.where_clauses + [clause]"...so you localize the more expensive  
collection copying operations to that of one per each generative method.

I will probably have a little flag "generative=False" which will just  
be mentioned in the docstring and thats it (i.e., im not going to  
push the usage of that flag, it wont usually be needed).

to make a select statement all at once, you will still be able to do  
what we do now in most cases, just using select([columns],  
whereclause, **otherargs).

one thing i like about rebuilding select this way is that i will be  
able to rewrite its internals to halfway make sense...its a little  
overgrown in there right now.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to