
I tried to turn a complex grammar transform
:
struct grammar :
or_< ...
,bp::when< bp::nary_expr< bp::_, bp::vararg< grammar > >
, bp::_default< grammar >
(
_bp::functional::unpack_exprbp::tag::function(
push_front( bp::_
, bp::_make_terminal
(
some_type<
bp::tag_ofbp::_ >()
)
)
)
)
>
into a single primitive transform but I end up stuck cause it seems some
of those transform (make_terminal) don't follow
the classic proto::result_of/proto namespace acces to compute it's
return type and calling it. How should I handle these ?
My intuition was that the transform oeprator() will call the equivalent
function onto its expr parameters while its result
struct compute the result_of by chaining the transform result_of results.
Ultimately, I want this to be a tempalte trasnform that take some_type
as a parameter :
bp::when< bp::nary_expr< bp::_, bp::vararg< grammar > >
, traversal