[counted.iter.elem] (original) (raw)

24 Iterators library [iterators]

24.5 Iterator adaptors [predef.iterators]

24.5.7 Counted iterators [iterators.counted]

24.5.7.4 Element access [counted.iter.elem]

🔗

constexpr decltype(auto) operator*();constexpr decltype(auto) operator*() const requires [_dereferenceable_](iterator.synopsis#concept:dereferenceable "24.2 Header <iterator> synopsis [iterator.synopsis]")<const I>;

1

#

Preconditions: length > 0 is true.

2

#

Effects: Equivalent to: return *current;

🔗

constexpr auto operator->() const noexcept requires [contiguous_iterator](iterator.concept.contiguous#concept:contiguous%5Fiterator "24.3.4.14 Concept contiguous_­iterator [iterator.concept.contiguous]")<I>;

3

#

Effects: Equivalent to: return to_address(current);

🔗

constexpr decltype(auto) operator[](iter_difference_t<I> n) const requires [random_access_iterator](iterator.concept.random.access#concept:random%5Faccess%5Fiterator "24.3.4.13 Concept random_­access_­iterator [iterator.concept.random.access]")<I>;

4

#

Preconditions: n < length.

5

#

Effects: Equivalent to: return current[n];