From Jason Turner

[locale.time.get]

Diff to HTML by rtfpessoa

tmp/tmppv5admd7/{from.md → to.md} RENAMED
@@ -64,11 +64,11 @@ produce the sequence; otherwise either an error is reported or
64
  unspecified values are assigned.[^15]
65
 
66
  If the end iterator is reached during parsing by any of the `get()`
67
  member functions, the member sets `ios_base::eofbit` in `err`.
68
 
69
- ##### `time_get` members <a id="locale.time.get.members">[[locale.time.get.members]]</a>
70
 
71
  ``` cpp
72
  dateorder date_order() const;
73
  ```
74
 
@@ -115,11 +115,11 @@ iter_type get(iter_type s, iter_type end, ios_base& f, ios_base::iostate& err,
115
  ``` cpp
116
  iter_type get(iter_type s, iter_type end, ios_base& f, ios_base::iostate& err,
117
  tm* t, const char_type* fmt, const char_type* fmtend) const;
118
  ```
119
 
120
- *Requires:* \[`fmt`, `fmtend`) shall be a valid range.
121
 
122
  *Effects:* The function starts by evaluating `err = ios_base::goodbit`.
123
  It then enters a loop, reading zero or more characters from `s` at each
124
  iteration. Unless otherwise specified below, the loop terminates when
125
  the first of the following conditions holds:
@@ -157,11 +157,11 @@ by what means the function performs case-insensitive comparison or
157
  whether multi-character sequences are considered while doing
158
  so. — *end note*]
159
 
160
  *Returns:* `s`.
161
 
162
- ##### `time_get` virtual functions <a id="locale.time.get.virtuals">[[locale.time.get.virtuals]]</a>
163
 
164
  ``` cpp
165
  dateorder do_date_order() const;
166
  ```
167
 
@@ -191,14 +191,13 @@ iter_type do_get_date(iter_type s, iter_type end, ios_base& str,
191
 
192
  *Effects:* Reads characters starting at `s` until it has extracted those
193
  `struct tm` members and remaining format characters used by
194
  `time_put<>::put` to produce one of the following formats, or until it
195
  encounters an error. The format depends on the value returned by
196
- `date_order()` as shown in
197
- Table  [[tab:lib.locale.time.get.virtuals.dogetdate]].
198
 
199
- **Table: `do_get_date` effects** <a id="tab:lib.locale.time.get.virtuals.dogetdate">[tab:lib.locale.time.get.virtuals.dogetdate]</a>
200
 
201
  | `date_order()` | Format |
202
  | -------------- | ---------- |
203
  | `no_order` | `"%m%d%y"` |
204
  | `dmy` | `"%d%m%y"` |
@@ -245,11 +244,11 @@ recognized as part of a valid year identifier.
245
  ``` cpp
246
  iter_type do_get(iter_type s, iter_type end, ios_base& f,
247
  ios_base::iostate& err, tm* t, char format, char modifier) const;
248
  ```
249
 
250
- *Requires:* `t` shall point to an object.
251
 
252
  *Effects:* The function starts by evaluating `err = ios_base::goodbit`.
253
  It then reads characters starting at `s` until it encounters an error,
254
  or until it has extracted and assigned those `struct tm` members, and
255
  any remaining format characters, corresponding to a conversion directive
@@ -269,11 +268,11 @@ members from the input sequence \[`s`, `end`), it evaluates
269
  members are unspecified and may be outside their valid range.
270
 
271
  *Remarks:* It is unspecified whether multiple calls to `do_get()` with
272
  the address of the same `struct tm` object will update the current
273
  contents of the object or simply overwrite its members. Portable
274
- programs must zero out the object before invoking the function.
275
 
276
  *Returns:* An iterator pointing immediately beyond the last character
277
  recognized as possibly part of a valid input sequence for the given
278
  `format` and `modifier`.
279
 
 
64
  unspecified values are assigned.[^15]
65
 
66
  If the end iterator is reached during parsing by any of the `get()`
67
  member functions, the member sets `ios_base::eofbit` in `err`.
68
 
69
+ ##### Members <a id="locale.time.get.members">[[locale.time.get.members]]</a>
70
 
71
  ``` cpp
72
  dateorder date_order() const;
73
  ```
74
 
 
115
  ``` cpp
116
  iter_type get(iter_type s, iter_type end, ios_base& f, ios_base::iostate& err,
117
  tm* t, const char_type* fmt, const char_type* fmtend) const;
118
  ```
119
 
120
+ *Preconditions:* \[`fmt`, `fmtend`) is a valid range.
121
 
122
  *Effects:* The function starts by evaluating `err = ios_base::goodbit`.
123
  It then enters a loop, reading zero or more characters from `s` at each
124
  iteration. Unless otherwise specified below, the loop terminates when
125
  the first of the following conditions holds:
 
157
  whether multi-character sequences are considered while doing
158
  so. — *end note*]
159
 
160
  *Returns:* `s`.
161
 
162
+ ##### Virtual functions <a id="locale.time.get.virtuals">[[locale.time.get.virtuals]]</a>
163
 
164
  ``` cpp
165
  dateorder do_date_order() const;
166
  ```
167
 
 
191
 
192
  *Effects:* Reads characters starting at `s` until it has extracted those
193
  `struct tm` members and remaining format characters used by
194
  `time_put<>::put` to produce one of the following formats, or until it
195
  encounters an error. The format depends on the value returned by
196
+ `date_order()` as shown in [[locale.time.get.dogetdate]].
 
197
 
198
+ **Table: `do_get_date` effects** <a id="locale.time.get.dogetdate">[locale.time.get.dogetdate]</a>
199
 
200
  | `date_order()` | Format |
201
  | -------------- | ---------- |
202
  | `no_order` | `"%m%d%y"` |
203
  | `dmy` | `"%d%m%y"` |
 
244
  ``` cpp
245
  iter_type do_get(iter_type s, iter_type end, ios_base& f,
246
  ios_base::iostate& err, tm* t, char format, char modifier) const;
247
  ```
248
 
249
+ *Preconditions:* `t` points to an object.
250
 
251
  *Effects:* The function starts by evaluating `err = ios_base::goodbit`.
252
  It then reads characters starting at `s` until it encounters an error,
253
  or until it has extracted and assigned those `struct tm` members, and
254
  any remaining format characters, corresponding to a conversion directive
 
268
  members are unspecified and may be outside their valid range.
269
 
270
  *Remarks:* It is unspecified whether multiple calls to `do_get()` with
271
  the address of the same `struct tm` object will update the current
272
  contents of the object or simply overwrite its members. Portable
273
+ programs should zero out the object before invoking the function.
274
 
275
  *Returns:* An iterator pointing immediately beyond the last character
276
  recognized as possibly part of a valid input sequence for the given
277
  `format` and `modifier`.
278