tmp/tmptm54ltmf/{from.md → to.md}
RENAMED
|
@@ -62,21 +62,21 @@ namespace std::ranges {
|
|
| 62 |
template<different-from<subrange> PairLike>
|
| 63 |
requires pair-like-convertible-from<PairLike, const I&, const S&>
|
| 64 |
constexpr operator PairLike() const;
|
| 65 |
|
| 66 |
constexpr I begin() const requires copyable<I>;
|
| 67 |
-
|
| 68 |
constexpr S end() const;
|
| 69 |
|
| 70 |
constexpr bool empty() const;
|
| 71 |
constexpr make-unsigned-like-t<iter_difference_t<I>> size() const
|
| 72 |
requires (K == subrange_kind::sized);
|
| 73 |
|
| 74 |
-
|
| 75 |
requires forward_iterator<I>;
|
| 76 |
-
|
| 77 |
-
|
| 78 |
requires bidirectional_iterator<I>;
|
| 79 |
constexpr subrange& advance(iter_difference_t<I> n);
|
| 80 |
};
|
| 81 |
|
| 82 |
template<input_or_output_iterator I, sentinel_for<I> S>
|
|
@@ -155,11 +155,11 @@ constexpr I begin() const requires copyable<I>;
|
|
| 155 |
```
|
| 156 |
|
| 157 |
*Effects:* Equivalent to: `return `*`begin_`*`;`
|
| 158 |
|
| 159 |
``` cpp
|
| 160 |
-
|
| 161 |
```
|
| 162 |
|
| 163 |
*Effects:* Equivalent to: `return std::move(`*`begin_`*`);`
|
| 164 |
|
| 165 |
``` cpp
|
|
@@ -184,11 +184,11 @@ constexpr make-unsigned-like-t<iter_difference_t<I>> size() const
|
|
| 184 |
- If *StoreSize* is `true`, equivalent to: `return `*`size_`*`;`
|
| 185 |
- Otherwise, equivalent to:
|
| 186 |
`return `*`to-unsigned-like`*`(`*`end_`*` - `*`begin_`*`);`
|
| 187 |
|
| 188 |
``` cpp
|
| 189 |
-
|
| 190 |
requires forward_iterator<I>;
|
| 191 |
```
|
| 192 |
|
| 193 |
*Effects:* Equivalent to:
|
| 194 |
|
|
@@ -197,22 +197,22 @@ auto tmp = *this;
|
|
| 197 |
tmp.advance(n);
|
| 198 |
return tmp;
|
| 199 |
```
|
| 200 |
|
| 201 |
``` cpp
|
| 202 |
-
|
| 203 |
```
|
| 204 |
|
| 205 |
*Effects:* Equivalent to:
|
| 206 |
|
| 207 |
``` cpp
|
| 208 |
advance(n);
|
| 209 |
return std::move(*this);
|
| 210 |
```
|
| 211 |
|
| 212 |
``` cpp
|
| 213 |
-
|
| 214 |
requires bidirectional_iterator<I>;
|
| 215 |
```
|
| 216 |
|
| 217 |
*Effects:* Equivalent to:
|
| 218 |
|
|
|
|
| 62 |
template<different-from<subrange> PairLike>
|
| 63 |
requires pair-like-convertible-from<PairLike, const I&, const S&>
|
| 64 |
constexpr operator PairLike() const;
|
| 65 |
|
| 66 |
constexpr I begin() const requires copyable<I>;
|
| 67 |
+
constexpr I begin() requires (!copyable<I>);
|
| 68 |
constexpr S end() const;
|
| 69 |
|
| 70 |
constexpr bool empty() const;
|
| 71 |
constexpr make-unsigned-like-t<iter_difference_t<I>> size() const
|
| 72 |
requires (K == subrange_kind::sized);
|
| 73 |
|
| 74 |
+
constexpr subrange next(iter_difference_t<I> n = 1) const &
|
| 75 |
requires forward_iterator<I>;
|
| 76 |
+
constexpr subrange next(iter_difference_t<I> n = 1) &&;
|
| 77 |
+
constexpr subrange prev(iter_difference_t<I> n = 1) const
|
| 78 |
requires bidirectional_iterator<I>;
|
| 79 |
constexpr subrange& advance(iter_difference_t<I> n);
|
| 80 |
};
|
| 81 |
|
| 82 |
template<input_or_output_iterator I, sentinel_for<I> S>
|
|
|
|
| 155 |
```
|
| 156 |
|
| 157 |
*Effects:* Equivalent to: `return `*`begin_`*`;`
|
| 158 |
|
| 159 |
``` cpp
|
| 160 |
+
constexpr I begin() requires (!copyable<I>);
|
| 161 |
```
|
| 162 |
|
| 163 |
*Effects:* Equivalent to: `return std::move(`*`begin_`*`);`
|
| 164 |
|
| 165 |
``` cpp
|
|
|
|
| 184 |
- If *StoreSize* is `true`, equivalent to: `return `*`size_`*`;`
|
| 185 |
- Otherwise, equivalent to:
|
| 186 |
`return `*`to-unsigned-like`*`(`*`end_`*` - `*`begin_`*`);`
|
| 187 |
|
| 188 |
``` cpp
|
| 189 |
+
constexpr subrange next(iter_difference_t<I> n = 1) const &
|
| 190 |
requires forward_iterator<I>;
|
| 191 |
```
|
| 192 |
|
| 193 |
*Effects:* Equivalent to:
|
| 194 |
|
|
|
|
| 197 |
tmp.advance(n);
|
| 198 |
return tmp;
|
| 199 |
```
|
| 200 |
|
| 201 |
``` cpp
|
| 202 |
+
constexpr subrange next(iter_difference_t<I> n = 1) &&;
|
| 203 |
```
|
| 204 |
|
| 205 |
*Effects:* Equivalent to:
|
| 206 |
|
| 207 |
``` cpp
|
| 208 |
advance(n);
|
| 209 |
return std::move(*this);
|
| 210 |
```
|
| 211 |
|
| 212 |
``` cpp
|
| 213 |
+
constexpr subrange prev(iter_difference_t<I> n = 1) const
|
| 214 |
requires bidirectional_iterator<I>;
|
| 215 |
```
|
| 216 |
|
| 217 |
*Effects:* Equivalent to:
|
| 218 |
|