> >> fine.  r4607:
> >> def traverse_using(iterator, obj, visitors):
> >>     """visit the given expression structure using the given
> >> iterator of objects."""
> >
> > yeah, i how i get the ClauseVisitor to use that...
> > The idea was for the ClauseVisitor's traverse to use
> > ClauseVisitor's iterate (or _iterate), pointing by default to
> > module's plain iterate(), so inheriting and replaceing _iterate
> > with e.g. iterate_depth_first (or whatever fancy) would work,
> > without a need to reinvent the traverse mechanism at all.
> > unless u're fading out those classes for a reason or another?
>
> no theyre hanging around.  Just subclass ClauseVisitor for now.

ok, i need the traverse_using(), the iterate_depth_first (which i can 
do myself as u said so its not really needed), and the pre-traverse 
name[6:] filtering:
   visitors = dict( (name[6:], getattr(self, name))
                     for name in dir(self)
                     if name.startswith('visit_') )
u have this filtering copied twice, i guess it has to be in one place. 
so the actual traverse-call has to be one more method.. to be easy 
replaceable.
that should make a good clean interface.

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