From Jason Turner

[time.hash]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpa103ad65/{from.md → to.md} +59 -0
tmp/tmpa103ad65/{from.md → to.md} RENAMED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Hash support <a id="time.hash">[[time.hash]]</a>
2
+
3
+ ``` cpp
4
+ template<class Rep, class Period> struct hash<chrono::duration<Rep, Period>>;
5
+ ```
6
+
7
+ The specialization `hash<chrono::duration<Rep, Period>>` is
8
+ enabled [[unord.hash]] if and only if
9
+ `hash<Rep>` is enabled. The member functions are not guaranteed to be
10
+ `noexcept`.
11
+
12
+ ``` cpp
13
+ template<class Clock, class Duration> struct hash<chrono::time_point<Clock, Duration>>;
14
+ ```
15
+
16
+ The specialization `hash<chrono::time_point<Clock, Duration>>` is
17
+ enabled [[unord.hash]] if and only if `hash<Duration>` is enabled. The
18
+ member functions are not guaranteed to be `noexcept`.
19
+
20
+ ``` cpp
21
+ template<> struct hash<chrono::day>;
22
+ template<> struct hash<chrono::month>;
23
+ template<> struct hash<chrono::year>;
24
+ template<> struct hash<chrono::weekday>;
25
+ template<> struct hash<chrono::weekday_indexed>;
26
+ template<> struct hash<chrono::weekday_last>;
27
+ template<> struct hash<chrono::month_day>;
28
+ template<> struct hash<chrono::month_day_last>;
29
+ template<> struct hash<chrono::month_weekday>;
30
+ template<> struct hash<chrono::month_weekday_last>;
31
+ template<> struct hash<chrono::year_month>;
32
+ template<> struct hash<chrono::year_month_day>;
33
+ template<> struct hash<chrono::year_month_day_last>;
34
+ template<> struct hash<chrono::year_month_weekday>;
35
+ template<> struct hash<chrono::year_month_weekday_last>;
36
+ ```
37
+
38
+ The specializations are enabled [[unord.hash]].
39
+
40
+ [*Note 1*: All the `hash<Key>` specializations listed above meet the
41
+ *Cpp17Hash* requirements, even when called on objects `k` of type `Key`
42
+ such that `k.ok()` is `false`. — *end note*]
43
+
44
+ ``` cpp
45
+ template<class Duration, class TimeZonePtr>
46
+ struct hash<chrono::zoned_time<Duration, TimeZonePtr>>;
47
+ ```
48
+
49
+ The specialization `hash<chrono::zoned_time<Duration, TimeZonePtr>>` is
50
+ enabled [[unord.hash]] if and only if `hash<Duration>` is enabled and
51
+ `hash<TimeZonePtr>` is enabled. The member functions are not guaranteed
52
+ to be `noexcept`.
53
+
54
+ ``` cpp
55
+ template<> struct hash<chrono::leap_second>;
56
+ ```
57
+
58
+ The specialization is enabled [[unord.hash]].
59
+