...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Boost.Phoenix makes it easier to attach semantic actions. You just inline your lambda expressions:
p[phoenix-lambda-expression]
Spirit.Qi provides some Boost.Phoenix
placeholders to important information from the Attrib
and Context
that are otherwise
fiddly to extract.
Spirit.Qi specific Phoenix placeholders
_1, _2... , _N
Nth attribute of p
_val
The enclosing rule's synthesized attribute.
_r1, _r2... , _rN
The enclosing rule's Nth inherited attribute.
_a, _b... , _j
The enclosing rule's local variables (_a
refers to the first).
_pass
Assign false
to _pass
to force a parser failure.
![]() |
Important |
---|---|
All placeholders mentioned above are defined in the namespace |
For more detailed information about semantic actions see: here.