From Jason Turner

[time.zone.zonedtime.ctor]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp48fakbpi/{from.md → to.md} +179 -0
tmp/tmp48fakbpi/{from.md → to.md} RENAMED
@@ -0,0 +1,179 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Constructors <a id="time.zone.zonedtime.ctor">[[time.zone.zonedtime.ctor]]</a>
2
+
3
+ ``` cpp
4
+ zoned_time();
5
+ ```
6
+
7
+ *Constraints:* `traits::default_zone()` is a well-formed expression.
8
+
9
+ *Effects:* Initializes `zone_` with `traits::default_zone()` and default
10
+ constructs `tp_`.
11
+
12
+ ``` cpp
13
+ zoned_time(const sys_time<Duration>& st);
14
+ ```
15
+
16
+ *Constraints:* `traits::default_zone()` is a well-formed expression.
17
+
18
+ *Effects:* Initializes `zone_` with `traits::default_zone()` and `tp_`
19
+ with `st`.
20
+
21
+ ``` cpp
22
+ explicit zoned_time(TimeZonePtr z);
23
+ ```
24
+
25
+ *Preconditions:* `z` refers to a time zone.
26
+
27
+ *Effects:* Initializes `zone_` with `std::move(z)` and default
28
+ constructs `tp_`.
29
+
30
+ ``` cpp
31
+ explicit zoned_time(string_view name);
32
+ ```
33
+
34
+ *Constraints:* `traits::locate_zone(string_view{})` is a well-formed
35
+ expression and `zoned_time` is constructible from the return type of
36
+ `traits::locate_zone(string_view{})`.
37
+
38
+ *Effects:* Initializes `zone_` with `traits::locate_zone(name)` and
39
+ default constructs `tp_`.
40
+
41
+ ``` cpp
42
+ template<class Duration2>
43
+ zoned_time(const zoned_time<Duration2, TimeZonePtr>& y);
44
+ ```
45
+
46
+ *Constraints:*
47
+ `is_convertible_v<sys_time<Duration2>, sys_time<Duration>>` is `true`.
48
+
49
+ *Effects:* Initializes `zone_` with `y.zone_` and `tp_` with `y.tp_`.
50
+
51
+ ``` cpp
52
+ zoned_time(TimeZonePtr z, const sys_time<Duration>& st);
53
+ ```
54
+
55
+ *Preconditions:* `z` refers to a time zone.
56
+
57
+ *Effects:* Initializes `zone_` with `std::move(z)` and `tp_` with `st`.
58
+
59
+ ``` cpp
60
+ zoned_time(string_view name, const sys_time<Duration>& st);
61
+ ```
62
+
63
+ *Constraints:* `zoned_time` is constructible from the return type of
64
+ `traits::locate_zone(name)` and `st`.
65
+
66
+ *Effects:* Equivalent to construction with
67
+ `{traits::locate_zone(name), st}`.
68
+
69
+ ``` cpp
70
+ zoned_time(TimeZonePtr z, const local_time<Duration>& tp);
71
+ ```
72
+
73
+ *Preconditions:* `z` refers to a time zone.
74
+
75
+ *Constraints:*
76
+
77
+ ``` cpp
78
+ is_convertible_v<
79
+ decltype(declval<TimeZonePtr&>()->to_sys(local_time<Duration>{})),
80
+ sys_time<duration>>
81
+ ```
82
+
83
+ is `true`.
84
+
85
+ *Effects:* Initializes `zone_` with `std::move(z)` and `tp_` with
86
+ `zone_->to_sys(tp)`.
87
+
88
+ ``` cpp
89
+ zoned_time(string_view name, const local_time<Duration>& tp);
90
+ ```
91
+
92
+ *Constraints:* `zoned_time` is constructible from the return type of
93
+ `traits::locate_zone(name)` and `tp`.
94
+
95
+ *Effects:* Equivalent to construction with
96
+ `{traits::locate_zone(name), tp}`.
97
+
98
+ ``` cpp
99
+ zoned_time(TimeZonePtr z, const local_time<Duration>& tp, choose c);
100
+ ```
101
+
102
+ *Preconditions:* `z` refers to a time zone.
103
+
104
+ *Constraints:*
105
+
106
+ ``` cpp
107
+ is_convertible_v<
108
+ decltype(declval<TimeZonePtr&>()->to_sys(local_time<Duration>{}, choose::earliest)),
109
+ sys_time<duration>>
110
+ ```
111
+
112
+ is `true`.
113
+
114
+ *Effects:* Initializes `zone_` with `std::move(z)` and `tp_` with
115
+ `zone_->to_sys(tp, c)`.
116
+
117
+ ``` cpp
118
+ zoned_time(string_view name, const local_time<Duration>& tp, choose c);
119
+ ```
120
+
121
+ *Constraints:* `zoned_time` is constructible from the return type of
122
+ `traits::locate_zone(name)`, `local_time<Duration>`, and `choose`.
123
+
124
+ *Effects:* Equivalent to construction with
125
+ `{traits::locate_zone(name), tp, c}`.
126
+
127
+ ``` cpp
128
+ template<class Duration2, class TimeZonePtr2>
129
+ zoned_time(TimeZonePtr z, const zoned_time<Duration2, TimeZonePtr2>& y);
130
+ ```
131
+
132
+ *Constraints:*
133
+ `is_convertible_v<sys_time<Duration2>, sys_time<Duration>>` is `true`.
134
+
135
+ *Preconditions:* `z` refers to a valid time zone.
136
+
137
+ *Effects:* Initializes `zone_` with `std::move(z)` and `tp_` with
138
+ `y.tp_`.
139
+
140
+ ``` cpp
141
+ template<class Duration2, class TimeZonePtr2>
142
+ zoned_time(TimeZonePtr z, const zoned_time<Duration2, TimeZonePtr2>& y, choose);
143
+ ```
144
+
145
+ *Constraints:*
146
+ `is_convertible_v<sys_time<Duration2>, sys_time<Duration>>` is `true`.
147
+
148
+ *Preconditions:* `z` refers to a valid time zone.
149
+
150
+ *Effects:* Equivalent to construction with `{z, y}`.
151
+
152
+ [*Note 1*: The `choose` parameter has no effect. — *end note*]
153
+
154
+ ``` cpp
155
+ template<class Duration2, class TimeZonePtr2>
156
+ zoned_time(string_view name, const zoned_time<Duration2, TimeZonePtr2>& y);
157
+ ```
158
+
159
+ *Constraints:* `zoned_time` is constructible from the return type of
160
+ `traits::locate_zone(name)` and the type
161
+ `zoned_time<Duration2, TimeZonePtr2>`.
162
+
163
+ *Effects:* Equivalent to construction with
164
+ `{traits::locate_zone(name), y}`.
165
+
166
+ ``` cpp
167
+ template<class Duration2, class TimeZonePtr2>
168
+ zoned_time(string_view name, const zoned_time<Duration2, TimeZonePtr2>& y, choose c);
169
+ ```
170
+
171
+ *Constraints:* `zoned_time` is constructible from the return type of
172
+ `traits::locate_zone(name)`, the type
173
+ `zoned_time<Duration2, TimeZonePtr2>`, and the type `choose`.
174
+
175
+ *Effects:* Equivalent to construction with
176
+ `{traits::locate_zone(name), y, c}`.
177
+
178
+ [*Note 2*: The `choose` parameter has no effect. — *end note*]
179
+