tmp/tmp93_gi2jj/{from.md → to.md}
RENAMED
|
@@ -2,13 +2,13 @@
|
|
| 2 |
|
| 3 |
``` cpp
|
| 4 |
template<class T> struct hash<optional<T>>;
|
| 5 |
```
|
| 6 |
|
| 7 |
-
The specialization `hash<optional<T>>` is enabled
|
| 8 |
-
|
| 9 |
object `o` of type `optional<T>`, if `bool(o) == true`, then
|
| 10 |
-
`hash<optional<T>>()(o)`
|
| 11 |
`hash<remove_const_t<T>>()(*o)`; otherwise it evaluates to an
|
| 12 |
unspecified value. The member functions are not guaranteed to be
|
| 13 |
`noexcept`.
|
| 14 |
|
|
|
|
| 2 |
|
| 3 |
``` cpp
|
| 4 |
template<class T> struct hash<optional<T>>;
|
| 5 |
```
|
| 6 |
|
| 7 |
+
The specialization `hash<optional<T>>` is enabled [[unord.hash]] if and
|
| 8 |
+
only if `hash<remove_const_t<T>>` is enabled. When enabled, for an
|
| 9 |
object `o` of type `optional<T>`, if `bool(o) == true`, then
|
| 10 |
+
`hash<optional<T>>()(o)` evaluates to the same value as
|
| 11 |
`hash<remove_const_t<T>>()(*o)`; otherwise it evaluates to an
|
| 12 |
unspecified value. The member functions are not guaranteed to be
|
| 13 |
`noexcept`.
|
| 14 |
|