Difference between revisions of "cpp/named req/ConstexprIterator"
From cppreference.com
(Replaced content with "Nuck figgers") |
D41D8CD98F (Talk | contribs) (Undo revision 136738 by 185.248.85.10 (talk)) |
||
Line 1: | Line 1: | ||
− | + | {{cpp/named req/title|ConstexprIterator}} | |
+ | {{cpp/named req/navbar}} | ||
+ | |||
+ | A {{named req|ConstexprIterator}} is a {{named req|Iterator}} that can be used during constant expression evaluation. | ||
+ | |||
+ | ===Requirements=== | ||
+ | The type {{tt|It}} satisfies {{named req/core|ConstexprIterator}} if | ||
+ | |||
+ | * The type {{tt|It}} satisfies some iterator requirements {{named req/core|MeowIterator}} | ||
+ | |||
+ | And, for every | ||
+ | * {{tt|purr}}, an operation on {{tt|It}} that is required to be supported by {{named req/core|MeowIterator}}, | ||
+ | * {{tt|kittens...}}, a set of arguments to {{tt|purr}} that meets the requirements for that operation, | ||
+ | |||
+ | Then | ||
+ | |||
+ | * {{tt|purr(kittens...)}} may be used in a constant expression if {{tt|kittens...}} can also be used | ||
+ | |||
+ | ===Standard library=== | ||
+ | |||
+ | The following standard library types are {{named req|ConstexprIterator}}s. | ||
+ | |||
+ | * {{ltt|cpp/container/array|array::iterator}} and {{ltt|cpp/container/array|array::const_iterator}}. | ||
+ | * {{ltt|cpp/string/basic_string_view|basic_string_view::iterator}}. | ||
+ | * {{ltt|cpp/container/span|span::iterator}}. | ||
+ | * {{ltt|cpp/container/vector|vector::iterator}} and {{ltt|cpp/container/vector|vector::const_iterator}}. | ||
+ | |||
+ | ===See also=== | ||
+ | {{dsc begin}} | ||
+ | {{see_also_iterator_library}} | ||
+ | {{dsc end}} | ||
+ | |||
+ | {{langlinks|es|ja|ru|zh}} |
Revision as of 03:13, 29 December 2021
A ConstexprIterator is a LegacyIterator that can be used during constant expression evaluation.
Requirements
The type It
satisfies ConstexprIterator if
- The type
It
satisfies some iterator requirements MeowIterator
And, for every
-
purr
, an operation onIt
that is required to be supported by MeowIterator, -
kittens...
, a set of arguments topurr
that meets the requirements for that operation,
Then
-
purr(kittens...)
may be used in a constant expression ifkittens...
can also be used
Standard library
The following standard library types are ConstexprIterators.
- array::iterator and array::const_iterator.
- basic_string_view::iterator.
- span::iterator.
- vector::iterator and vector::const_iterator.
See also
Iterator library | provides definitions for iterators, iterator traits, adaptors, and utility functions |