Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Attribute Parser (attr)

Boost , Spirit 2.5.2 , Auxiliary Parsers

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
Description

Парсер Attribute не потребляет никаких входов, поэтому он всегда соответствует пустой строке и всегда преуспевает. Цель состоит в том, чтобы разоблачить свой заданный параметр как атрибут.

Header
// forwards to <boost/spirit/home/qi/auxiliary/attr.hpp>
#include <boost/spirit/include/qi_attr.hpp>

Также см. Include Structure.

Namespace

Имя

boost::spirit::attr /

Model of

Notation

a

Произвольное постоянное значение типа, например, 0.0, "Hello", или переменная произвольного типа или Lazy Argument, которая оценивает до произвольного типа.

A

Тип a или если это Lazy Argument, его тип возврата.

Expression Semantics

Semantics of an expression is defined only where it differs from, or is not defined in PrimitiveParser.

Выражение

Семантика

attr(a)

Создайте псевдо-парсер, обнажающий текущее значение a как свой атрибут, не потребляя никаких входных данных в определенное время.

Attributes

Выражение

Attribute

attr(a)

A

Complexity

O(1)

Сложность постоянна, так как не потребляется никаких входов и никакого соответствия не делается.

Example
[Note]Note

Испытательный узел для примера (примеров) ниже представлен в разделе Basics examples.

Некоторые используют заявления:

namespace phx = boost::phoenix;
using boost::spirit::qi::attr;

Используя attr с литературами:

std::string str;
test_parser_attr("", attr("boost"), str);
std::cout << str << std::endl;            // will print 'boost'
double d;
test_parser_attr("", attr(1.0), d);
std::cout << d << std::endl;              // will print '1.0'

Используя attr с Фоникс объектов функции:

d = 0.0;
double d1 = 1.2;
test_parser_attr("", attr(phx::ref(d1)), d);
std::cout << d << std::endl;              // will print '1.2'


PrevUpHomeNext

Статья Attribute Parser (attr) раздела Spirit 2.5.2 Auxiliary Parsers может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Auxiliary Parsers ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 20:19:29/0.02898097038269/1