tmp/tmpsdt8k91i/{from.md → to.md}
RENAMED
|
@@ -1,18 +1,18 @@
|
|
| 1 |
-
####
|
| 2 |
|
| 3 |
-
A type `H` meets the
|
| 4 |
|
| 5 |
-
- it is a function object type
|
| 6 |
-
- it
|
| 7 |
-
|
| 8 |
-
- the expressions shown in
|
| 9 |
indicated semantics.
|
| 10 |
|
| 11 |
Given `Key` is an argument type for function objects of type `H`, in
|
| 12 |
-
|
| 13 |
-
|
| 14 |
(possibly `const`) `Key`.
|
| 15 |
|
| 16 |
[*Note 1*: Thus all evaluations of the expression `h(k)` with the same
|
| 17 |
value for `k` yield the same result for a given execution of the
|
| 18 |
program. — *end note*]
|
|
|
|
| 1 |
+
#### *Cpp17Hash* requirements <a id="hash.requirements">[[hash.requirements]]</a>
|
| 2 |
|
| 3 |
+
A type `H` meets the requirements if:
|
| 4 |
|
| 5 |
+
- it is a function object type [[function.objects]],
|
| 6 |
+
- it meets the *Cpp17CopyConstructible* ([[cpp17.copyconstructible]])
|
| 7 |
+
and *Cpp17Destructible* ([[cpp17.destructible]]) requirements, and
|
| 8 |
+
- the expressions shown in [[cpp17.hash]] are valid and have the
|
| 9 |
indicated semantics.
|
| 10 |
|
| 11 |
Given `Key` is an argument type for function objects of type `H`, in
|
| 12 |
+
[[cpp17.hash]] `h` is a value of type (possibly `const`) `H`, `u` is an
|
| 13 |
+
lvalue of type `Key`, and `k` is a value of a type convertible to
|
| 14 |
(possibly `const`) `Key`.
|
| 15 |
|
| 16 |
[*Note 1*: Thus all evaluations of the expression `h(k)` with the same
|
| 17 |
value for `k` yield the same result for a given execution of the
|
| 18 |
program. — *end note*]
|