On Nov 8, 2007, at 11:32 AM, svilen wrote:

>
> mmmh. u can think of splitting the Visitor into 3: Guide (who
> traverses _everything_ given), Visitor (who does things), and
> intermediate Decisor, who decides where to go / what to do. But this
> can get complicated (slow) although it would be quite clear who does
> what.
> Also, do have both onEntry and onExit for each node; i am sure some
> operations will require both; first to gather info, second to make a
> decision about what to do with it while still at that level.
>
> i've done quite a lot of tree/expression traversers, and while
> readonly walking doesnot care much if on entry or on exit (except if
> u want depth or breadth first), replacements-in-place and
> copy+replace sometimes needed both entry and exit hooks, + they where
> conditional like in leafs.

i think you should come up with your own ACP and lets take a look at  
it.    while i can get various ACP ideas to work further and further,  
im still able to come up with plenty of cases where none of them work  
and its because the structure of a clauseelement really isnt a tree.   
the same node can be represented many times largely because columns  
reference their parent table.

--~--~---------~--~----~------------~-------~--~----~
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