![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Get the Iterator pointing to the End of a Container AttributeBoost , Spirit 2.5.2 , Extract Attribute Values to Generate Output from a Container (Karma)
|
![]() |
Note |
---|---|
Этот файл заголовка не должен быть включен непосредственно какой-либо пользовательской программой, поскольку он обычно включается другими файлами заголовка Spirit, основанными на его содержании. |
Имя |
---|
|
template <typename Container, typename Enable> struct end_container { static typename container_iterator<Container>::type call(Container& c); };
Параметр |
Описание |
По умолчанию |
---|---|---|
|
Тип, |
нет |
|
Параметр шаблона помощника, используемый для выборочного включения или отключения определенных специализаций |
|
Notation
C
Тип контейнера, для которого должен быть возвращен конечный итератор.
c
Пример контейнера, C
.
Выражение |
Семантика |
---|---|
|
Возврат итератора, пригодного для сравнения с другим итератором, чтобы определить, достиг ли другой итератор конца данного контейнера, |
Spirit предопределяет специализацию этой точки настройки для нескольких типов. В следующей таблице перечислены эти типы вместе с типами, возвращаемыми встроенным typedef type
:
Параметры шаблонов |
Семантика |
---|---|
|
Возврат |
|
Возврат |
|
Возврат |
Точка настройки end_container
должна быть реализована для конкретного типа, когда этот тип должен использоваться в качестве атрибута вместо контейнера STL. Он применим только для генераторов (Spirit.Karma). Как правило, он должен быть реализован всякий раз, когда определенный тип должен быть передан в качестве атрибута генератора, обычно обнажающего STL-контейнер, C
и если тип не обнажает интерфейс STL-контейнера (т.е. is_container<C>::type
обычно возвращает mpl::false_
).
Если эта точка настройки реализована, могут потребоваться также следующие другие точки настройки.
Имя |
Когда внедрять |
---|---|
Необходимо реализовать всякий раз, когда тип используется в качестве атрибута контейнера в Karma. |
|
Карма: Список ( |
|
Карма: Список ( |
|
Карма: Список ( |
|
Карма: Список ( |
|
Карма: Список ( |
|
Карма: Список ( |
Примеры использования точки настройки end_container
см. здесь: embedded_container_example, use_as_container и counter_example.
Статья Get the Iterator pointing to the End of a Container Attribute раздела Spirit 2.5.2 Extract Attribute Values to Generate Output from a Container (Karma) может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Extract Attribute Values to Generate Output from a Container (Karma) ::
реклама |