Skip to content

Commit b8512a1

Browse files
morinmorintkoeppe
authored andcommitted
[container.requirements.general] Move exposition-only concept
The exposition-only concept container-compatible-range is defined in the subclause for allocator-aware containers, that does not actually use it. This requirement is used throughout the subclause for a variety of contains, so relocate the definition into the leading subclause that provides a key to definitions used throughout the containers subclauses.
1 parent 41bdca1 commit b8512a1

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

source/containers.tex

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,14 @@
9595
\tcode{rv} denotes a non-const rvalue of type \tcode{X}.
9696
\end{itemize}
9797

98+
\pnum
99+
The following exposition-only concept is used in the definition of containers:
100+
\begin{codeblock}
101+
template<class R, class T>
102+
concept @\defexposconcept{container-compatible-range}@ = // \expos
103+
ranges::@\libconcept{input_range}@<R> && @\libconcept{convertible_to}@<ranges::range_reference_t<R>, T>;
104+
\end{codeblock}
105+
98106
\rSec3[container.reqmts]{Containers}
99107

100108
% Local command to index names as members of all containers.
@@ -951,14 +959,6 @@
951959
but specialized allocators can choose a different definition.
952960
\end{note}
953961

954-
\pnum
955-
The following exposition-only concept is used in the definition of containers:
956-
\begin{codeblock}
957-
template<class R, class T>
958-
concept @\defexposconcept{container-compatible-range}@ = // \expos
959-
ranges::@\libconcept{input_range}@<R> && @\libconcept{convertible_to}@<ranges::range_reference_t<R>, T>;
960-
\end{codeblock}
961-
962962
\pnum
963963
In this subclause,
964964
\begin{itemize}

0 commit comments

Comments
 (0)