Eric Niebler wrote: > On 12/7/2010 2:37 PM, Thomas Heller wrote: >> Hi, >> >> I have been trying to extend a domain by "subdomaining" it. The sole >> purpose of this subdomain was to allow another type of terminal >> expression. >> >> Please see the attached code, which is a very simplified version of what >> I was trying to do. > <snip> > >> So, How to handle that correctly? > > Yup, that's a problem. I don't have an answer for you at the moment, > sorry.
This is a real bummer ... I need it for the phoenix local variables :( I might be able to work something out ... The idea is the following: template <typename Expr> struct grammar_of { typedef typename proto::domain_of<Expr>::type domain_type; typedef typename domain_type::proto_grammar type; }; struct grammar : proto::or_< proto::plus< grammar_of<_child_c<0> >() , grammar_of<_child_c<1> >() > > {}; This looks just insane though ... But looks like what I want ... need to test this properly ... _______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto