Шаблон:Архитектурная акустика/Реализация/IteratorAdapterConditional body
Версия от 01:05, 9 января 2018; Андрей Чусов (обсуждение | вклад) (Новая страница: «<source lang="cpp"> template <class _BaseIterator, class _Predicate, class _IsDeref> class IteratorAdapterConditional; </source> {{class template paramlist begin}…»)
template <class _BaseIterator, class _Predicate, class _IsDeref>
class IteratorAdapterConditional;
| _BaseIterator | Тип преобразуемого адаптером итератора. Должен удовлетворять требованиям ForwardIterator. |
| _Predicate | Тип предиката, при перечислении осуществляющего проверку условия остановхи переходов. Предикат должен принимать единственный параметр, который может быть:
|
| _IsDeref | Предикат, проверяющий возможность перехода итератором _BaseIterator к следующему элементу путем инкремента. |
Открытые типы
| Тип | Описание |
|---|---|
| iterator | Тип _BaseIterator. |
| iterator_category | Категория итератора. Тип эквивалентен std::forward_iterator_tag. |
| value_type | Тип typename std::iterator_traits<iterator>::value_type. |
| reference | Тип typename std::iterator_traits<iterator>::reference. |
| pointer | Тип typename std::iterator_traits<iterator>::pointer. |
| difference_type | Тип typename std::iterator_traits<iterator>::difference_type. |
| predicate | Тип предиката необходимости перехода. Тип эквивалентен _Predicate. |
| iterator_predicate | Тип предиката возможности перехода. Тип эквивалентен _IsDeref. |
Открытые методы
| Метод | Описание |
|---|---|
| (конструкторы) | Конструкторы класса IteratorAdapterConditional. |
| operator= | Операторы присваивания. |
| operator* | Оператор разыменовывания. |
| operator-> | Оператор косвенного доступа к элементам. |
| operator++ | Переход итератора к следующему элементу, удовлетворяющему предикату IteratorAdapterConditional::predicate. |
| operator== | Проверка на эквивалентность итераторов. |
| operator!= | Проверка на неэквивалентность итераторов. |
| base | Возвращает адаптируемый итератор в текущей позиции. |
| adaptation_base | Возвращает текущий корневой адаптированный, возможно цепочкой адаптеров, итератор. |