how to define order in visit_foo for KDevelop-pg

Andreas Pakulat apaku at gmx.de
Sun Jul 22 20:41:08 UTC 2007


On 22.07.07 22:08:18, Jakob Petsovits wrote:
> On Saturday, 21. July 2007, Andreas Pakulat wrote:
> > Hi,
> >
> > Is there a way to influence the order of the visit_node calls in this
> > visit_scope function?
> >
> >   void default_visitor::visit_scope(scope_ast *node)
> >   {
> >     visit_node(node->func_args);
> >     visit_node(node->scope_body);
> >     visit_node(node->or_op);
> >   }
> >
> > The rule is this:
> >
> >    func_args=function_args ( scope_body=scope_body | or_op=or_op
> > scope_body=scope_body | 0 )
> >
> >    | ( or_op=or_op | 0 ) scope_body=scope_body
> >
> > -> scope ;;
> >
> > I'd like to have the or_op visited first, then the func_args and then
> > the scope_body.
> 
> No, as far as I know this is not possible without having a custom visitor.
> 
> You could
> a) subclass the default visitor and fix the order of the calls in the
>    overriding member function, or
> b) add support for that to kdev-pg directly.
> 
> I think that's pretty much it.

Actually a) is much easier than I initially thought and one can still
use the default_visitor as base class. So I won't go with b) until
there's real need :P

Andreas

-- 
You teach best what you most need to learn.




More information about the KDevelop-devel mailing list