tmp/tmpz46hdjsn/{from.md → to.md}
RENAMED
|
@@ -122,20 +122,24 @@ m.stride(r)
|
|
| 122 |
|
| 123 |
*Result:* `typename M::index_type`
|
| 124 |
|
| 125 |
*Returns:* sᵣ as defined in `m.is_strided()` above.
|
| 126 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 127 |
``` cpp
|
| 128 |
M::is_always_unique()
|
| 129 |
```
|
| 130 |
|
| 131 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 132 |
|
| 133 |
*Returns:* `true` only if `m.is_unique()` is `true` for all possible
|
| 134 |
objects `m` of type `M`.
|
| 135 |
|
| 136 |
-
[*Note
|
| 137 |
met. For certain layout mappings, it is possibly not feasible to
|
| 138 |
determine whether every instance is unique. — *end note*]
|
| 139 |
|
| 140 |
``` cpp
|
| 141 |
M::is_always_exhaustive()
|
|
@@ -144,11 +148,11 @@ M::is_always_exhaustive()
|
|
| 144 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 145 |
|
| 146 |
*Returns:* `true` only if `m.is_exhaustive()` is `true` for all possible
|
| 147 |
objects `m` of type `M`.
|
| 148 |
|
| 149 |
-
[*Note
|
| 150 |
met. For certain layout mappings, it is possibly not feasible to
|
| 151 |
determine whether every instance is exhaustive. — *end note*]
|
| 152 |
|
| 153 |
``` cpp
|
| 154 |
M::is_always_strided()
|
|
@@ -157,9 +161,9 @@ M::is_always_strided()
|
|
| 157 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 158 |
|
| 159 |
*Returns:* `true` only if `m.is_strided()` is `true` for all possible
|
| 160 |
objects `m` of type `M`.
|
| 161 |
|
| 162 |
-
[*Note
|
| 163 |
met. For certain layout mappings, it is possibly not feasible to
|
| 164 |
determine whether every instance is strided. — *end note*]
|
| 165 |
|
|
|
|
| 122 |
|
| 123 |
*Result:* `typename M::index_type`
|
| 124 |
|
| 125 |
*Returns:* sᵣ as defined in `m.is_strided()` above.
|
| 126 |
|
| 127 |
+
[*Note 5*: It is not required for `m.stride(r)` to be well-formed if
|
| 128 |
+
`m.extents().rank()` is zero, even if `m.is_always_strided()` is
|
| 129 |
+
`true`. — *end note*]
|
| 130 |
+
|
| 131 |
``` cpp
|
| 132 |
M::is_always_unique()
|
| 133 |
```
|
| 134 |
|
| 135 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 136 |
|
| 137 |
*Returns:* `true` only if `m.is_unique()` is `true` for all possible
|
| 138 |
objects `m` of type `M`.
|
| 139 |
|
| 140 |
+
[*Note 6*: A mapping can return `false` even if the above condition is
|
| 141 |
met. For certain layout mappings, it is possibly not feasible to
|
| 142 |
determine whether every instance is unique. — *end note*]
|
| 143 |
|
| 144 |
``` cpp
|
| 145 |
M::is_always_exhaustive()
|
|
|
|
| 148 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 149 |
|
| 150 |
*Returns:* `true` only if `m.is_exhaustive()` is `true` for all possible
|
| 151 |
objects `m` of type `M`.
|
| 152 |
|
| 153 |
+
[*Note 7*: A mapping can return `false` even if the above condition is
|
| 154 |
met. For certain layout mappings, it is possibly not feasible to
|
| 155 |
determine whether every instance is exhaustive. — *end note*]
|
| 156 |
|
| 157 |
``` cpp
|
| 158 |
M::is_always_strided()
|
|
|
|
| 161 |
*Result:* A constant expression [[expr.const]] of type `bool`.
|
| 162 |
|
| 163 |
*Returns:* `true` only if `m.is_strided()` is `true` for all possible
|
| 164 |
objects `m` of type `M`.
|
| 165 |
|
| 166 |
+
[*Note 8*: A mapping can return `false` even if the above condition is
|
| 167 |
met. For certain layout mappings, it is possibly not feasible to
|
| 168 |
determine whether every instance is strided. — *end note*]
|
| 169 |
|