![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Directive Testing if Parser Succeeded (matches[])Boost , Spirit 2.5.2 , Parser Directives
|
Имя |
---|
< |
Notation
a
Семантика выражения определяется только там, где она отличается от или не определена в<UnaryParser
>.
выражение |
Семантика |
---|---|
< | Исполните парсер< |
выражение |
атрибут |
---|---|
< | < |
Сложность определяется сложностью предмета парсера<
a
>.
![]() | Note |
---|---|
Тестовый ремень для примера (примеров) ниже представлен в разделеОсновные примеры. |
Некоторые используют декларации:
using boost::spirit::qi::matches; using boost::spirit::qi::int_;
Этот парсер пытается сопоставить<int
>и возвращает<true
>свой атрибут, поскольку ему удалось сопоставить:
bool result = false; test_parser_attr("345", matches[int_], result); std::cout << std::boolalpha << result << std::endl; // should print: true
Этот парсер также пытается соответствовать<int
>и возвращает<false
>в качестве своего атрибута, поскольку он не соответствует:
result = true; test_parser_attr("abc", matches[int_], result); std::cout << std::boolalpha << result << std::endl; // should print: false
Статья Directive Testing if Parser Succeeded (matches[]) раздела Spirit 2.5.2 Parser Directives может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Parser Directives ::
реклама |