...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:
g[phoenix-lambda-expression]
Spirit.Karma provides some Boost.Phoenix
placeholders to access important information from the Attrib
and Context
that are otherwise
fiddly to extract.
Spirit.Karma specific Phoenix placeholders
_1, _2, ... , _N
Nth attribute of g
_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 generator failure.
![]() |
Important |
---|---|
All placeholders mentioned above are defined in the namespace |
For more information see Semantic Actions.