![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Directive for Transduction Parsing (raw[])Boost , Spirit 2.5.2 , Parser Directives
|
Имя |
---|
boost::spirit::raw // alias:
boost::spirit::qi::raw |
Notation
a
A Parser
.
Iter
A ForwardIterator
Тип.
Semantics of an expression is defined only where it differs from, or is not defined in UnaryParser
.
Выражение |
Семантика |
---|---|
| Не обращайте внимания на атрибут субъекта parser, |
См. Compound Attribute Notation.
Выражение |
Attribute |
---|---|
| a: A --> raw[a]: boost::iterator_range<Iter> a: Unused --> raw[a]: Unused a: A --> raw[a]: boost::iterator_range<Iter> a: Unused --> raw[a]: Unused [ORIG_END] --> |
![]() | Note |
---|---|
Смотрите |
Сложность определяется сложностью предмета парсера,
a
![]() | Note |
---|---|
Испытательный узел для примера (примеров) ниже представлен в разделе Basics examples. |
Некоторые используют заявления:
using boost::spirit::qi::raw; using boost::spirit::ascii::alpha; using boost::spirit::ascii::alnum;
Этот парсер совпадает и выдерживает идентификаторы C++:
std::string id; test_parser_attr("James007", raw[(alpha | '_') >> *(alnum | '_')], id); std::cout << id << std::endl; // should print James007
Статья Directive for Transduction Parsing (raw[]) раздела Spirit 2.5.2 Parser Directives может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Parser Directives ::
реклама |