![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Extract an Attribute Value to Generate Output (Karma)Boost , Spirit 2.5.2 , Customization of Spirit's Attribute Handling
|
![]() |
Note |
---|---|
Интерфейс этой точки настройки был изменен с Boost V1.44. Мы добавили параметр |
#include <boost/spirit/home/karma/detail/extract_from.hpp>
Также см. Include Structure.
![]() |
Note |
---|---|
Этот файл заголовка не должен быть включен непосредственно любой пользовательской программой, поскольку он обычно включен другими файлами заголовка Spirit, основанными на его содержании. |
Имя |
---|
|
template <typename Exposed, typename Attrib, typename Enable> struct extract_from_attribute { typedef <unspecified> type; template <typename Context> static type call(Attrib const& attr, Context& context); };
Параметр |
Описание |
По умолчанию |
---|---|---|
|
Тип, |
|
|
Тип, |
|
|
Шаблон-помощник используется для выборочного включения или отключения определенных специализаций |
|
|
Это тип текущего контекста выполнения генератора. |
Notation
Exposed
Тип, открытый как родной атрибут компонента.
Attrib
Тип, который должен использоваться для получения выходной информации.
attr
Пример атрибута типа Attrib
.
ctx
Пример типа Context
.
Выражение |
Семантика |
---|---|
extract_from_attribute<Expos, Attrib>::call(attr, ctx)
|
Вычтите значение для генерации вывода из |
Спирит предопределяет специализации этой точки настройки для нескольких типов. В следующей таблице перечислены эти типы вместе с раскрытыми типами и соответствующей семантикой:
Параметры шаблона |
Семантика |
---|---|
|
Выдержанный тип |
|
Выдержанный тип |
|
Выдержанный тип |
|
Выдержанный тип |
Точка настройки extract_from_attribute
должна быть реализована для конкретного типа, когда реализация по умолчанию, как показано выше, не применима. Примерами для этого может быть то, что тип, который должен быть извлечен, отличается от Attrib
и не является копируемым.
Статья Extract an Attribute Value to Generate Output (Karma) раздела Spirit 2.5.2 Customization of Spirit's Attribute Handling может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Customization of Spirit's Attribute Handling ::
реклама |