![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Epsilon Generator (eps)Boost , Spirit 2.5.2 , Auxiliary Generators
|
Имя |
---|
< |
Notation
b
Булева ценность.
fb
Ленивый аргумент, который оценивается до булевого значения.
Семантика выражения определяется только там, где она отличается от или не определена в<PrimitiveGenerator
>.
выражение |
Семантика |
---|---|
< | Создает компонент, генерирующий пустую строку. Успех всегда. |
< | Создает компонент, генерирующий пустую строку. Если< |
< | Создает компонент, генерирующий пустую строку. Успешно, если< |
выражение |
атрибут |
---|---|
< | < |
< | < |
< | < |
O(1)
Сложность постоянна, поскольку выход не генерируется.
![]() | Note |
---|---|
Тестовый ремень для примера (примеров) ниже представлен в разделеОсновные примеры. |
Некоторые включают:
#include <boost/spirit/include/karma.hpp> #include <boost/spirit/include/support_utree.hpp> #include <boost/spirit/include/phoenix_core.hpp> #include <boost/spirit/include/phoenix_operator.hpp> #include <boost/fusion/include/std_pair.hpp> #include <iostream> #include <string>
Некоторые используют декларации:
using boost::spirit::karma::eps; using boost::phoenix::val;
Использование генератора<eps
>:
test_generator("abc", eps[std::cout << val("starting eps example")] << "abc"); test_generator("abc", eps(true) << "abc"); test_generator("", eps(false) << "abc"); // fails as eps expression is 'false'
Статья Epsilon Generator (eps) раздела Spirit 2.5.2 Auxiliary Generators может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Auxiliary Generators ::
реклама |