Boost.Phoenix облегчает прикрепление семантических действий. Вы просто вставляете свои лямбда-выражения:
g[phoenix-lambda-expression]
Spirit.Karma предоставляет некоторым держателям Boost.Phoenix доступ к важной информации из Attrib и Context, которые в противном случае неудобно извлекать.
Spirit.Karma specific Phoenix placeholders
_1,_2,...,_N
N-й атрибут g
_val
Синтезированный атрибут прилагающего правила.
_r1,_r2,...,_rN
Н-я часть правила унаследовала атрибут.
_a,_b,...,_j
Локальные переменные прилагаемого правила (_a относятся к первой).
_pass
Назначьте false на _pass, чтобы вызвать отказ генератора.
Important
Все упомянутые выше заполнители определены в пространстве имен boost::spirit и, для вашего удобства, доступны в пространстве имен boost::spirit::karma.
Статья Phoenix раздела Spirit 2.5.2 Quick Reference может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.