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

Define a Custom Attribute Mapping for a Parser

Boost , Spirit 2.5.2 , Create Components from Attributes (Qi and Karma)

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
create_parser

Шаблон<create_parser>— это тип, используемый в качестве точки настройки. На него ссылаются.Qi<create_parser>Функция API для создания пользовательского отображения данного типа данных в парсерное выражение. Это выражение парсера будет возвращено из<create_parser>всякий раз, когда встречается данный тип данных.

Module Headers
// forwards to <boost/spirit/home/qi/auto.hpp>
#include <boost/spirit/include/qi_auto.hpp>

См. такжеВключить структуру.

Namespace

Имя

<boost::spirit::traits>

Synopsis
template <typename T, typename Enable>
struct create_parser
{
    typedef <unspecified> type;
    static type const& call();
};
Template parameters

Параметр

Описание

по умолчанию

<T>

Тип,<T>для которого должно быть установлено пользовательское сопоставление с парсером.

Нет

<Enable>

Параметр шаблона помощника, используемый для выборочного включения или отключения определенных специализаций<create_generator>с использованием SFINAE (то есть<boost::enable_if>или<boost::disable_if>).

<void>

Notation

T

Произвольный тип.

Expression Semantics

выражение

Семантика

<create_parser<T>::type>

Определяет тип парсерного выражения, возвращаемого из<call>

.

<create_parser<T>::call()>

Возвращает парсерное выражение (обычно это прото::выражение), используемое в качестве парсера по умолчанию для данного типа<T>

.
Predefined Specializations

Духпредопределяет специализацию этой точки настройки для нескольких типов. Все предопределенные карты перечислены здесь:Дополнительные требования к атрибутам для парсеров.

[Note] Note

Можно перегрузить заранее определенные отображения для перечисленных типов, предоставив свою собственную специализацию точки настройки<create_parser>для изменения типа.

When to implement

Точка настройки<create_parser>должна быть реализована для конкретного типа, когда этот тип должен использоваться с функцией API<create_parser>(которая включает в себя использование парсера<qi::auto_>и специальных функций API на основе автоматического создания соответствующего типа парсера).

Example

Пример использования точки настройки<create_parser>см. здесь:Пример использования<qi::auto_>Парсер.


PrevUpHomeNext

Статья Define a Custom Attribute Mapping for a Parser раздела Spirit 2.5.2 Create Components from Attributes (Qi and Karma) может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Create Components from Attributes (Qi and Karma) ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 01:54:47/0.0039429664611816/0