Skip to content

Commit f3c5adb

Browse files
committed
Inbal Levi provides wording
1 parent d994242 commit f3c5adb

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

xml/issue4059.xml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,102 @@ Set priority to 3 after reflector poll.
3434
We like the suggestion to require "not valueless" as a precondition.
3535
</p>
3636

37+
<note>2024-08-08, Inbal Levi provides wording</note>
3738
</discussion>
3839

3940
<resolution>
41+
<p>
42+
This wording is relative to <paper num="N4988"/>.
43+
</p>
44+
45+
<ol>
46+
47+
<li><p>Modify <sref ref="[range.join.with.iterator]"/> as indicated:</p>
48+
49+
<blockquote>
50+
<pre>
51+
constexpr void <i>satisfy</i>();
52+
</pre>
53+
<blockquote>
54+
<p>
55+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
56+
<p/>
57+
-8- <i>Effects</i>: Equivalent to: [&hellip;]
58+
</p>
59+
</blockquote>
60+
<p>
61+
[&hellip;]
62+
</p>
63+
<pre>
64+
constexpr <i>iterator</i>(<i>iterator</i>&lt;!Const&gt; i)
65+
requires Const &amp;&amp; convertible_to&lt;iterator_t&lt;V&gt;, <i>OuterIter</i>&gt; &amp;&amp;
66+
convertible_to&lt;iterator_t&lt;<i>InnerRng</i>&gt;, <i>InnerIter</i>&gt; &amp;&amp;
67+
convertible_to&lt;iterator_t&lt;Pattern&gt;, <i>PatternIter</i>&gt;;
68+
</pre>
69+
<blockquote>
70+
<p>
71+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
72+
<p/>
73+
-10- <i>Effects</i>: [&hellip;]
74+
</p>
75+
</blockquote>
76+
<pre>
77+
constexpr decltype(auto) operator*() const;
78+
</pre>
79+
<blockquote>
80+
<p>
81+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
82+
<p/>
83+
-12- <i>Effects</i>: Equivalent to: [&hellip;]
84+
</p>
85+
</blockquote>
86+
<pre>
87+
constexpr <i>iterator</i>&amp; operator++();
88+
</pre>
89+
<blockquote>
90+
<p>
91+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
92+
<p/>
93+
-13- <i>Effects</i>: Equivalent to: [&hellip;]
94+
</p>
95+
</blockquote>
96+
<pre>
97+
constexpr void operator++(int);
98+
</pre>
99+
<blockquote>
100+
<p>
101+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
102+
<p/>
103+
-14- <i>Effects</i>: Equivalent to: <tt>++*this</tt>.
104+
</p>
105+
</blockquote>
106+
<pre>
107+
constexpr <i>iterator</i> operator++(int)
108+
requires <i>ref-is-glvalue</i> &amp;&amp; forward_iterator&lt;<i>OuterIter</i>&gt; &amp;&amp; forward_iterator&lt;<i>InnerIter</i>&gt;;
109+
</pre>
110+
<blockquote>
111+
<p>
112+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
113+
<p/>
114+
-15- <i>Effects</i>: Equivalent to: [&hellip;]
115+
</p>
116+
</blockquote>
117+
<pre>
118+
constexpr <i>iterator</i>&amp; operator--()
119+
requires <i>ref-is-glvalue</i> &amp;&amp; bidirectional_range&lt;<i>Base</i>&gt; &amp;&amp;
120+
<i>bidirectional-common</i>&lt;<i>InnerBase</i>&gt; &amp;&amp; <i>bidirectional-common</i>&lt;<i>PatternBase</i>&gt;;
121+
</pre>
122+
<blockquote>
123+
<p>
124+
<ins>-?- <i>Preconditions:</i> <tt><i>inner_it_</i>.valueless_by_exception()</tt> is <tt>false</tt>.</ins>
125+
<p/>
126+
-16- <i>Effects</i>: Equivalent to: [&hellip;]
127+
</p>
128+
</blockquote>
129+
</blockquote>
130+
</li>
131+
132+
</ol>
40133
</resolution>
41134

42135
</issue>

0 commit comments

Comments
 (0)