]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/date_time/xmldoc/date_time_autodoc.xml
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / date_time / xmldoc / date_time_autodoc.xml
1 <?xml version="1.0" standalone="yes"?>
2 <library-reference id="date_time_reference"><title>Date Time Reference</title><header name="boost/date_time/adjust_functors.hpp">
3 <namespace name="boost">
4 <namespace name="date_time">
5 <class name="day_functor"><template>
6 <template-type-parameter name="date_type"/>
7 </template><purpose>Functor to iterate a fixed number of days. </purpose><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
8 <method-group name="public member functions">
9 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
10 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
11 </method-group>
12 <constructor><parameter name="f"><paramtype>int</paramtype></parameter></constructor>
13 </class><class name="month_functor"><template>
14 <template-type-parameter name="date_type"/>
15 </template><purpose>Provides calculation to find next nth month given a date. </purpose><description><para>This adjustment function provides the logic for 'month-based' advancement on a ymd based calendar. The policy it uses to handle the non existant end of month days is to back up to the last day of the month. Also, if the starting date is the last day of a month, this functor will attempt to adjust to the end of the month. </para></description><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
16 <typedef name="cal_type"><type>date_type::calendar_type</type></typedef>
17 <typedef name="ymd_type"><type>cal_type::ymd_type</type></typedef>
18 <typedef name="day_type"><type>cal_type::day_type</type></typedef>
19 <method-group name="public member functions">
20 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
21 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><purpose>Returns a negative duration_type. </purpose></method>
22 </method-group>
23 <constructor><parameter name="f"><paramtype>int</paramtype></parameter></constructor>
24 </class><class name="week_functor"><template>
25 <template-type-parameter name="date_type"/>
26 </template><purpose>Functor to iterate a over weeks. </purpose><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
27 <typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
28 <method-group name="public member functions">
29 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
30 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
31 </method-group>
32 <constructor><parameter name="f"><paramtype>int</paramtype></parameter></constructor>
33 </class><class name="year_functor"><template>
34 <template-type-parameter name="date_type"/>
35 </template><purpose>Functor to iterate by a year adjusting for leap years. </purpose><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
36 <method-group name="public member functions">
37 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
38 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
39 </method-group>
40 <constructor><parameter name="f"><paramtype>int</paramtype></parameter></constructor>
41 </class>
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74 </namespace>
75 </namespace>
76 </header>
77 <header name="boost/date_time/c_local_time_adjustor.hpp">
78 <para>Time adjustment calculations based on machine </para><namespace name="boost">
79 <namespace name="date_time">
80 <class name="c_local_adjustor"><template>
81 <template-type-parameter name="time_type"/>
82 </template><purpose>Adjust to / from utc using the C API. </purpose><description><para>Warning!!! This class assumes that timezone settings of the machine are correct. This can be a very dangerous assumption. </para></description><typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
83 <typedef name="date_type"><type>time_type::date_type</type></typedef>
84 <typedef name="date_duration_type"><type>date_type::duration_type</type></typedef>
85 <method-group name="public static functions">
86 <method name="utc_to_local" specifiers="static"><type>time_type</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter><purpose>Convert a utc time to local time. </purpose></method>
87 </method-group>
88 </class>
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121 </namespace>
122 </namespace>
123 </header>
124 <header name="boost/date_time/c_time.hpp">
125 <para>Provide workarounds related to the ctime header </para><namespace name="std">
126 </namespace>
127 <namespace name="boost">
128 <namespace name="date_time">
129 <struct name="c_time"><purpose>Provides a uniform interface to some 'ctime' functions. </purpose><description><para>Provides a uniform interface to some ctime functions and their '_r' counterparts. The '_r' functions require a pointer to a user created std::tm struct whereas the regular functions use a staticly created struct and return a pointer to that. These wrapper functions require the user to create a std::tm struct and send in a pointer to it. This struct may be used to store the resulting time. The returned pointer may or may not point to this struct, however, it will point to the result of the corresponding function. All functions do proper checking of the C function results and throw exceptions on error. Therefore the functions will never return NULL. </para></description><method-group name="public static functions">
130 <method name="localtime" specifiers="static"><type>std::tm *</type><parameter name="t"><paramtype>const std::time_t *</paramtype></parameter><parameter name="result"><paramtype>std::tm *</paramtype></parameter><purpose>requires a pointer to a user created std::tm struct </purpose></method>
131 <method name="gmtime" specifiers="static"><type>std::tm *</type><parameter name="t"><paramtype>const std::time_t *</paramtype></parameter><parameter name="result"><paramtype>std::tm *</paramtype></parameter><purpose>requires a pointer to a user created std::tm struct </purpose></method>
132 <method name="localtime" specifiers="static"><type>std::tm *</type><parameter name="t"><paramtype>const std::time_t *</paramtype></parameter><parameter name="result"><paramtype>std::tm *</paramtype></parameter><purpose>requires a pointer to a user created std::tm struct </purpose></method>
133 <method name="gmtime" specifiers="static"><type>std::tm *</type><parameter name="t"><paramtype>const std::time_t *</paramtype></parameter><parameter name="result"><paramtype>std::tm *</paramtype></parameter><purpose>requires a pointer to a user created std::tm struct </purpose></method>
134 </method-group>
135 </struct>
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168 </namespace>
169 </namespace>
170 </header>
171 <header name="boost/date_time/compiler_config.hpp">
172 <namespace name="std">
173 </namespace>
174 </header>
175 <header name="boost/date_time/constrained_value.hpp">
176 <namespace name="boost">
177 <namespace name="CV">
178 <class name="constrained_value"><template>
179 <template-type-parameter name="value_policies"/>
180 </template><purpose>A template to specify a constrained basic value type. </purpose><description><para>This template provides a quick way to generate an integer type with a constrained range. The type provides for the ability to specify the min, max, and and error handling policy.</para><para><emphasis role="bold">value policies</emphasis> A class that provides the range limits via the min and max functions as well as a function on_error that determines how errors are handled. A common strategy would be to assert or throw and exception. The on_error is passed both the current value and the new value that is in error. </para></description><typedef name="value_type"><type>value_policies::value_type</type></typedef>
181 <method-group name="public member functions">
182 <method name="conversion-operator" cv="const"><type>value_type</type><purpose>Coerce into the representation type. </purpose></method>
183 </method-group>
184 <constructor><parameter name="value"><paramtype>value_type</paramtype></parameter></constructor>
185 <copy-assignment><type><classname>constrained_value</classname> &amp;</type><parameter name="v"><paramtype>value_type</paramtype></parameter></copy-assignment>
186 <method-group name="public static functions">
187 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type>value_type max</type><purpose>Return the max allowed value (traits method) </purpose></method>
188 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type>value_type min</type><purpose>Return the min allowed value (traits method) </purpose></method>
189 </method-group>
190 <method-group name="private member functions">
191 <method name="assign"><type>void</type><parameter name="value"><paramtype>value_type</paramtype></parameter></method>
192 </method-group>
193 </class><class name="simple_exception_policy"><template>
194 <template-type-parameter name="rep_type"/>
195 <template-nontype-parameter name="min_value"><type>rep_type</type></template-nontype-parameter>
196 <template-nontype-parameter name="max_value"><type>rep_type</type></template-nontype-parameter>
197 <template-type-parameter name="exception_type"/>
198 </template><purpose>Template to shortcut the <classname alt="boost::CV::constrained_value">constrained_value</classname> policy creation process. </purpose><struct name="exception_wrapper"><inherit access="public">exception_type</inherit><method-group name="public member functions">
199 <method name="conversion-operator" cv="const"><type>std::out_of_range</type></method>
200 </method-group>
201 </struct><typedef name="value_type"><type>rep_type</type></typedef>
202 <method-group name="public static functions">
203 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type>rep_type min</type></method>
204 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type>rep_type max</type></method>
205 <method name="on_error" specifiers="static"><type>void</type><parameter name=""><paramtype>rep_type</paramtype></parameter><parameter name=""><paramtype>rep_type</paramtype></parameter><parameter name=""><paramtype>violation_enum</paramtype></parameter></method>
206 </method-group>
207 </class><enum name="violation_enum"><enumvalue name="min_violation"/><enumvalue name="max_violation"/><purpose>Represent a min or max violation type. </purpose></enum>
208 </namespace>
209 </namespace>
210 </header>
211 <header name="boost/date_time/date.hpp">
212 <namespace name="boost">
213 <namespace name="date_time">
214 <class name="date"><template>
215 <template-type-parameter name="T"/>
216 <template-type-parameter name="calendar"/>
217 <template-type-parameter name="duration_type_"/>
218 </template><inherit access="private">boost::less_than_comparable&lt; T, boost::equality_comparable&lt; T &gt; &gt;</inherit><purpose>Representation of timepoint at the one day level resolution. </purpose><description><para>The date template represents an interface shell for a date class that is based on a year-month-day system such as the gregorian or iso systems. It provides basic operations to enable calculation and comparisons.</para><para><emphasis role="bold">Theory</emphasis></para><para>This date representation fundamentally departs from the C tm struct approach. The goal for this type is to provide efficient date operations (add, subtract) and storage (minimize space to represent) in a concrete class. Thus, the date uses a count internally to represent a particular date. The calendar parameter defines the policies for converting the the year-month-day and internal counted form here. Applications that need to perform heavy formatting of the same date repeatedly will perform better by using the year-month-day representation.</para><para>Internally the date uses a day number to represent the date. This is a monotonic time representation. This representation allows for fast comparison as well as simplifying the creation of writing numeric operations. Essentially, the internal day number is like adjusted julian day. The adjustment is determined by the Epoch date which is represented as day 1 of the calendar. Day 0 is reserved for negative infinity so that any actual date is automatically greater than negative infinity. When a date is constructed from a date or formatted for output, the appropriate conversions are applied to create the year, month, day representations. </para></description><typedef name="date_type"><type>T</type></typedef>
219 <typedef name="calendar_type"><type>calendar</type></typedef>
220 <typedef name="traits_type"><type>calendar::date_traits_type</type></typedef>
221 <typedef name="duration_type"><type>duration_type_</type></typedef>
222 <typedef name="year_type"><type>calendar::year_type</type></typedef>
223 <typedef name="month_type"><type>calendar::month_type</type></typedef>
224 <typedef name="day_type"><type>calendar::day_type</type></typedef>
225 <typedef name="ymd_type"><type>calendar::ymd_type</type></typedef>
226 <typedef name="date_rep_type"><type>calendar::date_rep_type</type></typedef>
227 <typedef name="date_int_type"><type>calendar::date_int_type</type></typedef>
228 <typedef name="day_of_week_type"><type>calendar::day_of_week_type</type></typedef>
229 <method-group name="public member functions">
230 <method name="year" cv="const"><type>year_type</type></method>
231 <method name="month" cv="const"><type>month_type</type></method>
232 <method name="day" cv="const"><type>day_type</type></method>
233 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
234 <method name="year_month_day" cv="const"><type>ymd_type</type></method>
235 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const date_type &amp;</paramtype></parameter></method>
236 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const date_type &amp;</paramtype></parameter></method>
237 <method name="is_special" cv="const"><type>bool</type><purpose>check to see if date is a special value </purpose></method>
238 <method name="is_not_a_date" cv="const"><type>bool</type><purpose>check to see if date is not a value </purpose></method>
239 <method name="is_infinity" cv="const"><type>bool</type><purpose>check to see if date is one of the infinity values </purpose></method>
240 <method name="is_pos_infinity" cv="const"><type>bool</type><purpose>check to see if date is greater than all possible dates </purpose></method>
241 <method name="is_neg_infinity" cv="const"><type>bool</type><purpose>check to see if date is greater than all possible dates </purpose></method>
242 <method name="as_special" cv="const"><type>special_values</type><purpose>return as a special value or a not_special if a normal date </purpose></method>
243 <method name="operator-" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
244 <method name="operator-" cv="const"><type>date_type</type><parameter name="dd"><paramtype>const duration_type &amp;</paramtype></parameter></method>
245 <method name="operator-="><type>date_type</type><parameter name="dd"><paramtype>const duration_type &amp;</paramtype></parameter></method>
246 <method name="day_count" cv="const"><type>date_rep_type</type></method>
247 <method name="operator+" cv="const"><type>date_type</type><parameter name="dd"><paramtype>const duration_type &amp;</paramtype></parameter></method>
248 <method name="operator+="><type>date_type</type><parameter name="dd"><paramtype>const duration_type &amp;</paramtype></parameter></method>
249 </method-group>
250 <constructor><parameter name="y"><paramtype>year_type</paramtype></parameter><parameter name="m"><paramtype>month_type</paramtype></parameter><parameter name="d"><paramtype>day_type</paramtype></parameter></constructor>
251 <constructor><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></constructor>
252 <method-group name="protected member functions">
253 </method-group>
254 <constructor specifiers="explicit"><parameter name="days"><paramtype>date_int_type</paramtype></parameter><description><para>This is a private constructor which allows for the creation of new dates. It is not exposed to users since that would require class users to understand the inner workings of the date class. </para></description></constructor>
255 <constructor specifiers="explicit"><parameter name="days"><paramtype>date_rep_type</paramtype></parameter></constructor>
256 </class>
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289 </namespace>
290 </namespace>
291 </header>
292 <header name="boost/date_time/date_clock_device.hpp">
293 <namespace name="boost">
294 <namespace name="date_time">
295 <class name="day_clock"><template>
296 <template-type-parameter name="date_type"/>
297 </template><purpose>A clock providing day level services based on C time_t capabilities. </purpose><description><para>This clock uses Posix interfaces as its implementation and hence uses the timezone settings of the operating system. Incorrect user settings will result in incorrect results for the calls to local_day. </para></description><typedef name="ymd_type"><type>date_type::ymd_type</type></typedef>
298 <method-group name="public static functions">
299 <method name="local_day" specifiers="static"><type>date_type</type><purpose>Get the local day as a date type. </purpose></method>
300 <method name="local_day_ymd" specifiers="static"><type>date_type::ymd_type</type><purpose>Get the local day as a ymd_type. </purpose></method>
301 <method name="universal_day_ymd" specifiers="static"><type>date_type::ymd_type</type><purpose>Get the current day in universal date as a ymd_type. </purpose></method>
302 <method name="universal_day" specifiers="static"><type>date_type</type><purpose>Get the UTC day as a date type. </purpose></method>
303 </method-group>
304 <method-group name="private static functions">
305 <method name="get_local_time" specifiers="static"><type>::std::tm *</type><parameter name="result"><paramtype>std::tm &amp;</paramtype></parameter></method>
306 <method name="get_universal_time" specifiers="static"><type>::std::tm *</type><parameter name="result"><paramtype>std::tm &amp;</paramtype></parameter></method>
307 </method-group>
308 </class>
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341 </namespace>
342 </namespace>
343 </header>
344 <header name="boost/date_time/date_defs.hpp">
345 <namespace name="boost">
346 <namespace name="date_time">
347 <enum name="weekdays"><enumvalue name="Sunday"/><enumvalue name="Monday"/><enumvalue name="Tuesday"/><enumvalue name="Wednesday"/><enumvalue name="Thursday"/><enumvalue name="Friday"/><enumvalue name="Saturday"/><purpose>An enumeration of weekday names. </purpose></enum>
348 <enum name="months_of_year"><enumvalue name="Jan"><default>=1</default></enumvalue><enumvalue name="Feb"/><enumvalue name="Mar"/><enumvalue name="Apr"/><enumvalue name="May"/><enumvalue name="Jun"/><enumvalue name="Jul"/><enumvalue name="Aug"/><enumvalue name="Sep"/><enumvalue name="Oct"/><enumvalue name="Nov"/><enumvalue name="Dec"/><enumvalue name="NotAMonth"/><enumvalue name="NumMonths"/><purpose>Simple enum to allow for nice programming with Jan, Feb, etc. </purpose></enum>
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382 </namespace>
383 </namespace>
384 </header>
385 <header name="boost/date_time/date_duration.hpp">
386 <namespace name="boost">
387 <namespace name="date_time">
388 <class name="date_duration"><template>
389 <template-type-parameter name="duration_rep_traits"/>
390 </template><inherit access="private">boost::less_than_comparable1&lt; date_duration&lt; duration_rep_traits &gt;, boost::equality_comparable1&lt; date_duration&lt; duration_rep_traits &gt;, boost::addable1&lt; date_duration&lt; duration_rep_traits &gt;, boost::subtractable1&lt; date_duration&lt; duration_rep_traits &gt;, boost::dividable2&lt; date_duration&lt; duration_rep_traits &gt;, int &gt; &gt; &gt; &gt; &gt;</inherit><purpose>Duration type with date level resolution. </purpose><typedef name="duration_rep_type"><type>duration_rep_traits::int_type</type></typedef>
391 <typedef name="duration_rep"><type>duration_rep_traits::impl_type</type></typedef>
392 <method-group name="public member functions">
393 <method name="get_rep" cv="const"><type>duration_rep</type><purpose>returns days_ as it's instantiated type - used for streaming </purpose></method>
394 <method name="is_special" cv="const"><type>bool</type></method>
395 <method name="days" cv="const"><type>duration_rep_type</type><purpose>returns days as value, not object. </purpose></method>
396 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>date_duration</classname> &amp;</paramtype></parameter><purpose>Equality. </purpose></method>
397 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>date_duration</classname> &amp;</paramtype></parameter><purpose>Less. </purpose></method>
398 <method name="operator-="><type><classname>date_duration</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>date_duration</classname> &amp;</paramtype></parameter><purpose>Subtract another duration – result is signed. </purpose></method>
399 <method name="operator+="><type><classname>date_duration</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>date_duration</classname> &amp;</paramtype></parameter><purpose>Add a duration – result is signed. </purpose></method>
400 <method name="operator-" cv="const"><type><classname>date_duration</classname></type><purpose>unary- Allows for dd = -date_duration(2); -&gt; dd == -2 </purpose></method>
401 <method name="operator/="><type><classname>date_duration</classname> &amp;</type><parameter name="divisor"><paramtype>int</paramtype></parameter><purpose>Division operations on a duration with an integer. </purpose></method>
402 <method name="is_negative" cv="const"><type>bool</type><purpose>return sign information </purpose></method>
403 </method-group>
404 <constructor specifiers="explicit"><parameter name="day_count"><paramtype>duration_rep</paramtype></parameter><purpose>Construct from a day count. </purpose></constructor>
405 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter><description><para>construct from special_values - only works when instantiated with <classname alt="boost::date_time::duration_traits_adapted">duration_traits_adapted</classname> </para></description></constructor>
406 <constructor><parameter name="other"><paramtype>const <classname>date_duration</classname>&lt; duration_rep_traits &gt; &amp;</paramtype></parameter><purpose>Construct from another <classname alt="boost::date_time::date_duration">date_duration</classname> (Copy Constructor) </purpose></constructor>
407 <method-group name="public static functions">
408 <method name="unit" specifiers="static"><type><classname>date_duration</classname></type><purpose>Returns the smallest duration – used by to calculate 'end'. </purpose></method>
409 </method-group>
410 </class><struct name="duration_traits_long"><description><para>Struct for instantiating <classname alt="boost::date_time::date_duration">date_duration</classname> with <emphasis role="bold">NO</emphasis> special values functionality. Allows for transparent implementation of either date_duration&lt;long&gt; or <classname alt="boost::date_time::date_duration">date_duration</classname>&lt;int_adapter&lt;long&gt; &gt; </para></description><typedef name="int_type"><type>long</type></typedef>
411 <typedef name="impl_type"><type>long</type></typedef>
412 <method-group name="public static functions">
413 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype>impl_type</paramtype></parameter></method>
414 </method-group>
415 </struct><struct name="duration_traits_adapted"><description><para>Struct for instantiating <classname alt="boost::date_time::date_duration">date_duration</classname> <emphasis role="bold">WITH</emphasis> special values functionality. Allows for transparent implementation of either date_duration&lt;long&gt; or <classname alt="boost::date_time::date_duration">date_duration</classname>&lt;int_adapter&lt;long&gt; &gt; </para></description><typedef name="int_type"><type>long</type></typedef>
416 <typedef name="impl_type"><type><classname>boost::date_time::int_adapter</classname>&lt; long &gt;</type></typedef>
417 <method-group name="public static functions">
418 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype><classname>impl_type</classname></paramtype></parameter></method>
419 </method-group>
420 </struct>
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453 </namespace>
454 </namespace>
455 </header>
456 <header name="boost/date_time/date_duration_types.hpp">
457 <namespace name="boost">
458 <namespace name="date_time">
459 <class name="weeks_duration"><template>
460 <template-type-parameter name="duration_config"/>
461 </template><inherit access="public">boost::date_time::date_duration&lt; duration_config &gt;</inherit><purpose>Additional duration type that represents a number of n*7 days. </purpose><method-group name="public member functions">
462 </method-group>
463 <constructor><parameter name="w"><paramtype>typename duration_config::impl_type</paramtype></parameter></constructor>
464 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter></constructor>
465 </class><class name="months_duration"><template>
466 <template-type-parameter name="base_config"/>
467 </template><purpose>additional duration type that represents a logical month </purpose><description><para>A logical month enables things like: "date(2002,Mar,2) + months(2) -&gt;
468 2002-May2". If the date is a last day-of-the-month, the result will also be a last-day-of-the-month. </para></description><method-group name="public member functions">
469 <method name="number_of_months" cv="const"><type>int_rep</type></method>
470 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><purpose>returns a negative duration </purpose></method>
471 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
472 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
473 <method name="operator!=" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
474 <method name="operator+" cv="const"><type><classname>months_type</classname></type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
475 <method name="operator+="><type><classname>months_type</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
476 <method name="operator-" cv="const"><type><classname>months_type</classname></type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
477 <method name="operator-="><type><classname>months_type</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
478 <method name="operator*" cv="const"><type><classname>months_type</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
479 <method name="operator*="><type><classname>months_type</classname> &amp;</type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
480 <method name="operator/" cv="const"><type><classname>months_type</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
481 <method name="operator/="><type><classname>months_type</classname> &amp;</type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
482 <method name="operator+" cv="const"><type><classname>months_type</classname></type><parameter name="y"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
483 <method name="operator+="><type><classname>months_type</classname> &amp;</type><parameter name="y"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
484 <method name="operator-" cv="const"><type><classname>months_type</classname></type><parameter name="y"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
485 <method name="operator-="><type><classname>months_type</classname> &amp;</type><parameter name="y"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
486 </method-group>
487 <constructor><parameter name="num"><paramtype>int_rep</paramtype></parameter></constructor>
488 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter></constructor>
489 </class><class name="years_duration"><template>
490 <template-type-parameter name="base_config"/>
491 </template><purpose>additional duration type that represents a logical year </purpose><description><para>A logical year enables things like: "date(2002,Mar,2) + years(2) -&gt;
492 2004-Mar-2". If the date is a last day-of-the-month, the result will also be a last-day-of-the-month (ie date(2001-Feb-28) + years(3) -&gt; 2004-Feb-29). </para></description><method-group name="public member functions">
493 <method name="number_of_years" cv="const"><type>int_rep</type></method>
494 <method name="get_neg_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><purpose>returns a negative duration </purpose></method>
495 <method name="get_offset" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
496 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
497 <method name="operator!=" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
498 <method name="operator+" cv="const"><type><classname>years_type</classname></type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
499 <method name="operator+="><type><classname>years_type</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
500 <method name="operator-" cv="const"><type><classname>years_type</classname></type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
501 <method name="operator-="><type><classname>years_type</classname> &amp;</type><parameter name="rhs"><paramtype>const <classname>years_type</classname> &amp;</paramtype></parameter></method>
502 <method name="operator*" cv="const"><type><classname>years_type</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
503 <method name="operator*="><type><classname>years_type</classname> &amp;</type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
504 <method name="operator/" cv="const"><type><classname>years_type</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
505 <method name="operator/="><type><classname>years_type</classname> &amp;</type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
506 <method name="operator+" cv="const"><type><classname>months_type</classname></type><parameter name="m"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
507 <method name="operator-" cv="const"><type><classname>months_type</classname></type><parameter name="m"><paramtype>const <classname>months_type</classname> &amp;</paramtype></parameter></method>
508 </method-group>
509 <constructor><parameter name="num"><paramtype>int_rep</paramtype></parameter></constructor>
510 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter></constructor>
511 </class><data-member name="years_duration"><type>class BOOST_SYMBOL_VISIBLE</type></data-member>
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545 </namespace>
546 </namespace>
547 </header>
548 <header name="boost/date_time/date_facet.hpp">
549 <namespace name="boost">
550 <namespace name="date_time">
551 <class name="date_facet"><template>
552 <template-type-parameter name="date_type"/>
553 <template-type-parameter name="CharT"/>
554 <template-type-parameter name="OutItrT"><default>std::ostreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
555 </template><inherit access="public">facet</inherit><description><para>Class that provides format based I/O facet for date types.</para><para>This class allows the formatting of dates by using format string. Format strings are:</para><para><itemizedlist>
556 <listitem><para>A =&gt; long_weekday_format - Full name Ex: Tuesday</para></listitem><listitem><para>a =&gt; short_weekday_format - Three letter abbreviation Ex: Tue</para></listitem><listitem><para>B =&gt; long_month_format - Full name Ex: October</para></listitem><listitem><para>b =&gt; short_month_format - Three letter abbreviation Ex: Oct</para></listitem><listitem><para>x =&gt; standard_format_specifier - defined by the locale</para></listitem><listitem><para>Y-b-d =&gt; default_date_format - YYYY-Mon-dd</para></listitem></itemizedlist>
557 </para><para>Default month format == b Default weekday format == a </para></description><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
558 <typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
559 <typedef name="day_type"><type>date_type::day_type</type></typedef>
560 <typedef name="month_type"><type>date_type::month_type</type></typedef>
561 <typedef name="period_type"><type><classname>boost::date_time::period</classname>&lt; date_type, duration_type &gt;</type></typedef>
562 <typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
563 <typedef name="char_type"><type>CharT</type></typedef>
564 <typedef name="period_formatter_type"><type><classname>boost::date_time::period_formatter</classname>&lt; CharT &gt;</type></typedef>
565 <typedef name="special_values_formatter_type"><type><classname>boost::date_time::special_values_formatter</classname>&lt; CharT &gt;</type></typedef>
566 <typedef name="input_collection_type"><type>std::vector&lt; std::basic_string&lt; CharT &gt; &gt;</type></typedef>
567 <typedef name="date_gen_formatter_type"><type><classname>date_generator_formatter</classname>&lt; date_type, CharT &gt;</type></typedef>
568 <typedef name="partial_date_type"><type><classname>partial_date</classname>&lt; date_type &gt;</type></typedef>
569 <typedef name="nth_kday_type"><type><classname>nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
570 <typedef name="first_kday_type"><type><classname>first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
571 <typedef name="last_kday_type"><type><classname>last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
572 <typedef name="kday_after_type"><type><classname>first_kday_after</classname>&lt; date_type &gt;</type></typedef>
573 <typedef name="kday_before_type"><type><classname>first_kday_before</classname>&lt; date_type &gt;</type></typedef>
574 <data-member name="long_weekday_format" specifiers="static"><type>const char_type</type></data-member>
575 <data-member name="short_weekday_format" specifiers="static"><type>const char_type</type></data-member>
576 <data-member name="long_month_format" specifiers="static"><type>const char_type</type></data-member>
577 <data-member name="short_month_format" specifiers="static"><type>const char_type</type></data-member>
578 <data-member name="default_period_separator" specifiers="static"><type>const char_type</type></data-member>
579 <data-member name="standard_format_specifier" specifiers="static"><type>const char_type</type></data-member>
580 <data-member name="iso_format_specifier" specifiers="static"><type>const char_type</type></data-member>
581 <data-member name="iso_format_extended_specifier" specifiers="static"><type>const char_type</type></data-member>
582 <data-member name="default_date_format" specifiers="static"><type>const char_type</type></data-member>
583 <data-member name="id" specifiers="static"><type>std::locale::id</type></data-member>
584 <method-group name="public member functions">
585 <method name="__get_id" cv="const"><type>std::locale::id &amp;</type><parameter name=""><paramtype>void</paramtype></parameter></method>
586 <method name="format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
587 <method name="set_iso_format" specifiers="virtual"><type>void</type></method>
588 <method name="set_iso_extended_format" specifiers="virtual"><type>void</type></method>
589 <method name="month_format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
590 <method name="weekday_format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
591 <method name="period_formatter"><type>void</type><parameter name="per_formatter"><paramtype><classname>period_formatter_type</classname></paramtype></parameter></method>
592 <method name="special_values_formatter"><type>void</type><parameter name="svf"><paramtype>const <classname>special_values_formatter_type</classname> &amp;</paramtype></parameter></method>
593 <method name="short_weekday_names"><type>void</type><parameter name="short_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
594 <method name="long_weekday_names"><type>void</type><parameter name="long_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
595 <method name="short_month_names"><type>void</type><parameter name="short_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
596 <method name="long_month_names"><type>void</type><parameter name="long_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
597 <method name="date_gen_phrase_strings"><type>void</type><parameter name="new_strings"><paramtype>const input_collection_type &amp;</paramtype></parameter><parameter name="beg_pos"><paramtype>typename date_gen_formatter_type::phrase_elements</paramtype><default>date_gen_formatter_type::first</default></parameter></method>
598 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
599 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="dd"><paramtype>const duration_type &amp;</paramtype></parameter></method>
600 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="m"><paramtype>const month_type &amp;</paramtype></parameter></method>
601 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="day"><paramtype>const day_type &amp;</paramtype></parameter><purpose>puts the day of month </purpose></method>
602 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="dow"><paramtype>const day_of_week_type &amp;</paramtype></parameter></method>
603 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="p"><paramtype>const <classname>period_type</classname> &amp;</paramtype></parameter></method>
604 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="pd"><paramtype>const <classname>partial_date_type</classname> &amp;</paramtype></parameter></method>
605 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="nkd"><paramtype>const <classname>nth_kday_type</classname> &amp;</paramtype></parameter></method>
606 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="fkd"><paramtype>const <classname>first_kday_type</classname> &amp;</paramtype></parameter></method>
607 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="lkd"><paramtype>const <classname>last_kday_type</classname> &amp;</paramtype></parameter></method>
608 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="fkb"><paramtype>const <classname>kday_before_type</classname> &amp;</paramtype></parameter></method>
609 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="fka"><paramtype>const <classname>kday_after_type</classname> &amp;</paramtype></parameter></method>
610 </method-group>
611 <constructor specifiers="explicit"><parameter name="a_ref"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
612 <constructor specifiers="explicit"><parameter name="format_str"><paramtype>const char_type *</paramtype></parameter><parameter name="short_names"><paramtype>const input_collection_type &amp;</paramtype></parameter><parameter name="ref_count"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
613 <constructor specifiers="explicit"><parameter name="format_str"><paramtype>const char_type *</paramtype></parameter><parameter name="per_formatter"><paramtype><classname>period_formatter_type</classname></paramtype><default><classname alt="boost::date_time::period_formatter">period_formatter_type</classname>()</default></parameter><parameter name="sv_formatter"><paramtype><classname>special_values_formatter_type</classname></paramtype><default><classname alt="boost::date_time::special_values_formatter">special_values_formatter_type</classname>()</default></parameter><parameter name="dg_formatter"><paramtype><classname>date_gen_formatter_type</classname></paramtype><default><classname alt="boost::date_time::date_generator_formatter">date_gen_formatter_type</classname>()</default></parameter><parameter name="ref_count"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
614 <method-group name="protected member functions">
615 <method name="do_put_special" cv="const" specifiers="virtual"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name=""><paramtype>char_type</paramtype></parameter><parameter name="sv"><paramtype>const boost::date_time::special_values</paramtype></parameter></method>
616 <method name="do_put_tm" cv="const" specifiers="virtual"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_char"><paramtype>char_type</paramtype></parameter><parameter name="tm_value"><paramtype>const tm &amp;</paramtype></parameter><parameter name="a_format"><paramtype>string_type</paramtype></parameter></method>
617 </method-group>
618 </class><class name="date_input_facet"><template>
619 <template-type-parameter name="date_type"/>
620 <template-type-parameter name="CharT"/>
621 <template-type-parameter name="InItrT"><default>std::istreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
622 </template><inherit access="public">facet</inherit><purpose>Input facet. </purpose><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
623 <typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
624 <typedef name="day_type"><type>date_type::day_type</type></typedef>
625 <typedef name="month_type"><type>date_type::month_type</type></typedef>
626 <typedef name="year_type"><type>date_type::year_type</type></typedef>
627 <typedef name="period_type"><type><classname>boost::date_time::period</classname>&lt; date_type, duration_type &gt;</type></typedef>
628 <typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
629 <typedef name="char_type"><type>CharT</type></typedef>
630 <typedef name="period_parser_type"><type><classname>boost::date_time::period_parser</classname>&lt; date_type, CharT &gt;</type></typedef>
631 <typedef name="special_values_parser_type"><type><classname>boost::date_time::special_values_parser</classname>&lt; date_type, CharT &gt;</type></typedef>
632 <typedef name="input_collection_type"><type>std::vector&lt; std::basic_string&lt; CharT &gt; &gt;</type></typedef>
633 <typedef name="format_date_parser_type"><type><classname>format_date_parser</classname>&lt; date_type, CharT &gt;</type></typedef>
634 <typedef name="date_gen_parser_type"><type><classname>date_generator_parser</classname>&lt; date_type, CharT &gt;</type></typedef>
635 <typedef name="partial_date_type"><type><classname>partial_date</classname>&lt; date_type &gt;</type></typedef>
636 <typedef name="nth_kday_type"><type><classname>nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
637 <typedef name="first_kday_type"><type><classname>first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
638 <typedef name="last_kday_type"><type><classname>last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
639 <typedef name="kday_after_type"><type><classname>first_kday_after</classname>&lt; date_type &gt;</type></typedef>
640 <typedef name="kday_before_type"><type><classname>first_kday_before</classname>&lt; date_type &gt;</type></typedef>
641 <data-member name="long_weekday_format" specifiers="static"><type>const char_type</type></data-member>
642 <data-member name="short_weekday_format" specifiers="static"><type>const char_type</type></data-member>
643 <data-member name="long_month_format" specifiers="static"><type>const char_type</type></data-member>
644 <data-member name="short_month_format" specifiers="static"><type>const char_type</type></data-member>
645 <data-member name="four_digit_year_format" specifiers="static"><type>const char_type</type></data-member>
646 <data-member name="two_digit_year_format" specifiers="static"><type>const char_type</type></data-member>
647 <data-member name="default_period_separator" specifiers="static"><type>const char_type</type></data-member>
648 <data-member name="standard_format_specifier" specifiers="static"><type>const char_type</type></data-member>
649 <data-member name="iso_format_specifier" specifiers="static"><type>const char_type</type></data-member>
650 <data-member name="iso_format_extended_specifier" specifiers="static"><type>const char_type</type></data-member>
651 <data-member name="default_date_format" specifiers="static"><type>const char_type</type></data-member>
652 <data-member name="id" specifiers="static"><type>std::locale::id</type></data-member>
653 <method-group name="public member functions">
654 <method name="format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
655 <method name="set_iso_format" specifiers="virtual"><type>void</type></method>
656 <method name="set_iso_extended_format" specifiers="virtual"><type>void</type></method>
657 <method name="month_format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
658 <method name="weekday_format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
659 <method name="year_format"><type>void</type><parameter name="format_str"><paramtype>const char_type *const</paramtype></parameter></method>
660 <method name="period_parser"><type>void</type><parameter name="per_parser"><paramtype><classname>period_parser_type</classname></paramtype></parameter></method>
661 <method name="short_weekday_names"><type>void</type><parameter name="weekday_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
662 <method name="long_weekday_names"><type>void</type><parameter name="weekday_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
663 <method name="short_month_names"><type>void</type><parameter name="month_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
664 <method name="long_month_names"><type>void</type><parameter name="month_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
665 <method name="date_gen_element_strings"><type>void</type><parameter name="col"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
666 <method name="date_gen_element_strings"><type>void</type><parameter name="first"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="second"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="third"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fourth"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fifth"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="last"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="before"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="after"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="of"><paramtype>const string_type &amp;</paramtype></parameter></method>
667 <method name="special_values_parser"><type>void</type><parameter name="sv_parser"><paramtype><classname>special_values_parser_type</classname></paramtype></parameter></method>
668 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="d"><paramtype>date_type &amp;</paramtype></parameter></method>
669 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="m"><paramtype>month_type &amp;</paramtype></parameter></method>
670 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="wd"><paramtype>day_of_week_type &amp;</paramtype></parameter></method>
671 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="d"><paramtype>day_type &amp;</paramtype></parameter><purpose>Expects 1 or 2 digit day range: 1-31. </purpose></method>
672 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name=""><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="y"><paramtype>year_type &amp;</paramtype></parameter></method>
673 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="dd"><paramtype>duration_type &amp;</paramtype></parameter></method>
674 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="p"><paramtype><classname>period_type</classname> &amp;</paramtype></parameter></method>
675 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="nkd"><paramtype><classname>nth_kday_type</classname> &amp;</paramtype></parameter></method>
676 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="pd"><paramtype><classname>partial_date_type</classname> &amp;</paramtype></parameter></method>
677 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fkd"><paramtype><classname>first_kday_type</classname> &amp;</paramtype></parameter></method>
678 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="lkd"><paramtype><classname>last_kday_type</classname> &amp;</paramtype></parameter></method>
679 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fkb"><paramtype><classname>kday_before_type</classname> &amp;</paramtype></parameter></method>
680 <method name="get" cv="const"><type>InItrT</type><parameter name="from"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="to"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fka"><paramtype><classname>kday_after_type</classname> &amp;</paramtype></parameter></method>
681 </method-group>
682 <constructor specifiers="explicit"><parameter name="a_ref"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
683 <constructor specifiers="explicit"><parameter name="format_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="a_ref"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
684 <constructor specifiers="explicit"><parameter name="format_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="date_parser"><paramtype>const <classname>format_date_parser_type</classname> &amp;</paramtype></parameter><parameter name="sv_parser"><paramtype>const <classname>special_values_parser_type</classname> &amp;</paramtype></parameter><parameter name="per_parser"><paramtype>const <classname>period_parser_type</classname> &amp;</paramtype></parameter><parameter name="date_gen_parser"><paramtype>const <classname>date_gen_parser_type</classname> &amp;</paramtype></parameter><parameter name="ref_count"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
685 </class>
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718 </namespace>
719 </namespace>
720 </header>
721 <header name="boost/date_time/date_format_simple.hpp">
722 <namespace name="boost">
723 <namespace name="date_time">
724 <class name="simple_format"><template>
725 <template-type-parameter name="charT"/>
726 </template><purpose>Class to provide simple basic formatting rules. </purpose><method-group name="public static functions">
727 <method name="not_a_date" specifiers="static"><type>const charT *</type><purpose>String used printed is date is invalid. </purpose></method>
728 <method name="pos_infinity" specifiers="static"><type>const charT *</type><purpose>String used to for positive infinity value. </purpose></method>
729 <method name="neg_infinity" specifiers="static"><type>const charT *</type><purpose>String used to for positive infinity value. </purpose></method>
730 <method name="month_format" specifiers="static"><type>month_format_spec</type><purpose>Describe month format. </purpose></method>
731 <method name="date_order" specifiers="static"><type>ymd_order_spec</type></method>
732 <method name="has_date_sep_chars" specifiers="static"><type>bool</type><purpose>This format uses '-' to separate date elements. </purpose></method>
733 <method name="year_sep_char" specifiers="static"><type>charT</type><purpose>Char to sep? </purpose></method>
734 <method name="month_sep_char" specifiers="static"><type>charT</type><purpose>char between year-month </purpose></method>
735 <method name="day_sep_char" specifiers="static"><type>charT</type><purpose>Char to separate month-day. </purpose></method>
736 <method name="hour_sep_char" specifiers="static"><type>charT</type><purpose>char between date-hours </purpose></method>
737 <method name="minute_sep_char" specifiers="static"><type>charT</type><purpose>char between hour and minute </purpose></method>
738 <method name="second_sep_char" specifiers="static"><type>charT</type><purpose>char for second </purpose></method>
739 </method-group>
740 </class><class-specialization name="simple_format"><template>
741 </template><specialization><template-arg>wchar_t</template-arg></specialization><purpose>Specialization of formmating rules for wchar_t. </purpose><method-group name="public static functions">
742 <method name="not_a_date" specifiers="static"><type>const wchar_t *</type><purpose>String used printed is date is invalid. </purpose></method>
743 <method name="pos_infinity" specifiers="static"><type>const wchar_t *</type><purpose>String used to for positive infinity value. </purpose></method>
744 <method name="neg_infinity" specifiers="static"><type>const wchar_t *</type><purpose>String used to for positive infinity value. </purpose></method>
745 <method name="month_format" specifiers="static"><type>month_format_spec</type><purpose>Describe month format. </purpose></method>
746 <method name="date_order" specifiers="static"><type>ymd_order_spec</type></method>
747 <method name="has_date_sep_chars" specifiers="static"><type>bool</type><purpose>This format uses '-' to separate date elements. </purpose></method>
748 <method name="year_sep_char" specifiers="static"><type>wchar_t</type><purpose>Char to sep? </purpose></method>
749 <method name="month_sep_char" specifiers="static"><type>wchar_t</type><purpose>char between year-month </purpose></method>
750 <method name="day_sep_char" specifiers="static"><type>wchar_t</type><purpose>Char to separate month-day. </purpose></method>
751 <method name="hour_sep_char" specifiers="static"><type>wchar_t</type><purpose>char between date-hours </purpose></method>
752 <method name="minute_sep_char" specifiers="static"><type>wchar_t</type><purpose>char between hour and minute </purpose></method>
753 <method name="second_sep_char" specifiers="static"><type>wchar_t</type><purpose>char for second </purpose></method>
754 </method-group>
755 </class-specialization>
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788 </namespace>
789 </namespace>
790 </header>
791 <header name="boost/date_time/date_formatting.hpp">
792 <namespace name="boost">
793 <namespace name="date_time">
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827 </namespace>
828 </namespace>
829 </header>
830 <header name="boost/date_time/date_formatting_limited.hpp">
831 <namespace name="boost">
832 <namespace name="date_time">
833 <class name="month_formatter"><template>
834 <template-type-parameter name="month_type"/>
835 <template-type-parameter name="format_type"/>
836 </template><purpose>Formats a month as as string into an ostream. </purpose><method-group name="public static functions">
837 <method name="format_month" specifiers="static"><type>std::ostream &amp;</type><parameter name="month"><paramtype>const month_type &amp;</paramtype></parameter><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><purpose>Formats a month as as string into an ostream. </purpose><description><para>This function demands that month_type provide functions for converting to short and long strings if that capability is used. </para></description></method>
838 <method name="format_month" specifiers="static"><type>ostream_type &amp;</type><parameter name="month"><paramtype>const month_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><purpose>Formats a month as as string into an ostream. </purpose><description><para>This function demands that month_type provide functions for converting to short and long strings if that capability is used. </para></description></method>
839 </method-group>
840 </class><class name="ymd_formatter"><template>
841 <template-type-parameter name="ymd_type"/>
842 <template-type-parameter name="format_type"/>
843 </template><purpose>Convert ymd to a standard string formatting policies. </purpose><method-group name="public static functions">
844 <method name="ymd_to_string" specifiers="static"><type>std::string</type><parameter name="ymd"><paramtype>ymd_type</paramtype></parameter><purpose>Convert ymd to a standard string formatting policies. </purpose><description><para>This is standard code for handling date formatting with year-month-day based date information. This function uses the format_type to control whether the string will contain separator characters, and if so what the character will be. In addtion, it can format the month as either an integer or a string as controled by the formatting policy </para></description></method>
845 <method name="ymd_to_string" specifiers="static"><type>std::basic_string&lt; charT &gt;</type><parameter name="ymd"><paramtype>ymd_type</paramtype></parameter><purpose>Convert ymd to a standard string formatting policies. </purpose><description><para>This is standard code for handling date formatting with year-month-day based date information. This function uses the format_type to control whether the string will contain separator characters, and if so what the character will be. In addtion, it can format the month as either an integer or a string as controled by the formatting policy </para></description></method>
846 </method-group>
847 </class><class name="date_formatter"><template>
848 <template-type-parameter name="date_type"/>
849 <template-type-parameter name="format_type"/>
850 </template><purpose>Convert a date to string using format policies. </purpose><method-group name="public static functions">
851 <method name="date_to_string" specifiers="static"><type>std::string</type><parameter name="d"><paramtype>date_type</paramtype></parameter><purpose>Convert to a date to standard string using format policies. </purpose></method>
852 <method name="date_to_string" specifiers="static"><type>string_type</type><parameter name="d"><paramtype>date_type</paramtype></parameter><purpose>Convert to a date to standard string using format policies. </purpose></method>
853 </method-group>
854 </class>
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887 </namespace>
888 </namespace>
889 </header>
890 <header name="boost/date_time/date_formatting_locales.hpp">
891 <namespace name="boost">
892 <namespace name="date_time">
893 <class name="ostream_month_formatter"><template>
894 <template-type-parameter name="facet_type"/>
895 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
896 </template><purpose>Formats a month as as string into an ostream. </purpose><typedef name="month_type"><type>facet_type::month_type</type></typedef>
897 <typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
898 <method-group name="public static functions">
899 <method name="format_month" specifiers="static"><type>void</type><parameter name="month"><paramtype>const month_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><parameter name="f"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Formats a month as as string into an output iterator. </purpose></method>
900 </method-group>
901 </class><class name="ostream_weekday_formatter"><template>
902 <template-type-parameter name="weekday_type"/>
903 <template-type-parameter name="facet_type"/>
904 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
905 </template><purpose>Formats a weekday. </purpose><typedef name="month_type"><type>facet_type::month_type</type></typedef>
906 <typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
907 <method-group name="public static functions">
908 <method name="format_weekday" specifiers="static"><type>void</type><parameter name="wd"><paramtype>const weekday_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><parameter name="f"><paramtype>const facet_type &amp;</paramtype></parameter><parameter name="as_long_string"><paramtype>bool</paramtype></parameter><purpose>Formats a month as as string into an output iterator. </purpose></method>
909 </method-group>
910 </class><class name="ostream_ymd_formatter"><template>
911 <template-type-parameter name="ymd_type"/>
912 <template-type-parameter name="facet_type"/>
913 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
914 </template><purpose>Convert ymd to a standard string formatting policies. </purpose><typedef name="month_type"><type>ymd_type::month_type</type></typedef>
915 <typedef name="month_formatter_type"><type><classname>ostream_month_formatter</classname>&lt; facet_type, charT &gt;</type></typedef>
916 <typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
917 <typedef name="foo_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
918 <method-group name="public static functions">
919 <method name="ymd_put" specifiers="static"><type>void</type><parameter name="ymd"><paramtype>ymd_type</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><parameter name="f"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Convert ymd to a standard string formatting policies. </purpose><description><para>This is standard code for handling date formatting with year-month-day based date information. This function uses the format_type to control whether the string will contain separator characters, and if so what the character will be. In addtion, it can format the month as either an integer or a string as controled by the formatting policy </para></description></method>
920 </method-group>
921 </class><class name="ostream_date_formatter"><template>
922 <template-type-parameter name="date_type"/>
923 <template-type-parameter name="facet_type"/>
924 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
925 </template><purpose>Convert a date to string using format policies. </purpose><typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
926 <typedef name="ymd_type"><type>date_type::ymd_type</type></typedef>
927 <method-group name="public static functions">
928 <method name="date_put" specifiers="static"><type>void</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><parameter name="f"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put date into an ostream. </purpose></method>
929 <method name="date_put" specifiers="static"><type>void</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><purpose>Put date into an ostream. </purpose></method>
930 </method-group>
931 </class>
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964 </namespace>
965 </namespace>
966 </header>
967 <header name="boost/date_time/date_generator_formatter.hpp">
968 <namespace name="boost">
969 <namespace name="date_time">
970 <class name="date_generator_formatter"><template>
971 <template-type-parameter name="date_type"/>
972 <template-type-parameter name="CharT"/>
973 <template-type-parameter name="OutItrT"><default>std::ostreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
974 </template><purpose>Formats date_generators for output. </purpose><description><para>Formatting of date_generators follows specific orders for the various types of date_generators.<itemizedlist>
975 <listitem><para><classname alt="boost::date_time::partial_date">partial_date</classname> =&gt; "dd Month"</para></listitem><listitem><para>nth_day_of_the_week_in_month =&gt; "nth weekday of month"</para></listitem><listitem><para>first_day_of_the_week_in_month =&gt; "first weekday of month"</para></listitem><listitem><para>last_day_of_the_week_in_month =&gt; "last weekday of month"</para></listitem><listitem><para>first_day_of_the_week_after =&gt; "weekday after"</para></listitem><listitem><para>first_day_of_the_week_before =&gt; "weekday before" While the order of the elements in these phrases cannot be changed, the elements themselves can be. Weekday and Month get their formats and names from the <classname alt="boost::date_time::date_facet">date_facet</classname>. The remaining elements are stored in the <classname alt="boost::date_time::date_generator_formatter">date_generator_formatter</classname> and can be customized upon construction or via a member function. The default elements are those shown in the examples above. </para></listitem></itemizedlist>
976 </para></description><enum name="phrase_elements"><enumvalue name="first"><default>=0</default></enumvalue><enumvalue name="second"/><enumvalue name="third"/><enumvalue name="fourth"/><enumvalue name="fifth"/><enumvalue name="last"/><enumvalue name="before"/><enumvalue name="after"/><enumvalue name="of"/><enumvalue name="number_of_phrase_elements"/></enum>
977 <typedef name="partial_date_type"><type><classname>partial_date</classname>&lt; date_type &gt;</type></typedef>
978 <typedef name="nth_kday_type"><type><classname>nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
979 <typedef name="first_kday_type"><type><classname>first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
980 <typedef name="last_kday_type"><type><classname>last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
981 <typedef name="kday_after_type"><type><classname>first_kday_after</classname>&lt; date_type &gt;</type></typedef>
982 <typedef name="kday_before_type"><type><classname>first_kday_before</classname>&lt; date_type &gt;</type></typedef>
983 <typedef name="char_type"><type>CharT</type></typedef>
984 <typedef name="string_type"><type>std::basic_string&lt; char_type &gt;</type></typedef>
985 <typedef name="collection_type"><type>std::vector&lt; string_type &gt;</type></typedef>
986 <data-member name="first_string" specifiers="static"><type>const char_type</type></data-member>
987 <data-member name="second_string" specifiers="static"><type>const char_type</type></data-member>
988 <data-member name="third_string" specifiers="static"><type>const char_type</type></data-member>
989 <data-member name="fourth_string" specifiers="static"><type>const char_type</type></data-member>
990 <data-member name="fifth_string" specifiers="static"><type>const char_type</type></data-member>
991 <data-member name="last_string" specifiers="static"><type>const char_type</type></data-member>
992 <data-member name="before_string" specifiers="static"><type>const char_type</type></data-member>
993 <data-member name="after_string" specifiers="static"><type>const char_type</type></data-member>
994 <data-member name="of_string" specifiers="static"><type>const char_type</type></data-member>
995 <method-group name="public member functions">
996 <method name="elements"><type>void</type><parameter name="new_strings"><paramtype>const collection_type &amp;</paramtype></parameter><parameter name="beg_pos"><paramtype>phrase_elements</paramtype><default>first</default></parameter><purpose>Replace the set of phrase elements with those contained in new_strings. </purpose><description><para>The order of the strings in the given collection is important. They must follow:<itemizedlist>
997 <listitem><para>first, second, third, fourth, fifth, last, before, after, of.</para></listitem></itemizedlist>
998 </para><para>It is not necessary to send in a complete set if only a few elements are to be replaced as long as the correct beg_pos is used.</para><para>Ex: To keep the default first through fifth elements, but replace the rest with a collection of:<itemizedlist>
999 <listitem><para>"final", "prior", "following", "in". The beg_pos of date_generator_formatter::last would be used. </para></listitem></itemizedlist>
1000 </para></description></method>
1001 <method name="put_partial_date" cv="const"><type>OutItrT</type><template>
1002 <template-type-parameter name="facet_type"/>
1003 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="pd"><paramtype>const <classname>partial_date_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put a <classname alt="boost::date_time::partial_date">partial_date</classname> =&gt; "dd Month". </purpose></method>
1004 <method name="put_nth_kday" cv="const"><type>OutItrT</type><template>
1005 <template-type-parameter name="facet_type"/>
1006 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="nkd"><paramtype>const <classname>nth_kday_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put an nth_day_of_the_week_in_month =&gt; "nth weekday of month". </purpose></method>
1007 <method name="put_first_kday" cv="const"><type>OutItrT</type><template>
1008 <template-type-parameter name="facet_type"/>
1009 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="fkd"><paramtype>const <classname>first_kday_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put a first_day_of_the_week_in_month =&gt; "first weekday of month". </purpose></method>
1010 <method name="put_last_kday" cv="const"><type>OutItrT</type><template>
1011 <template-type-parameter name="facet_type"/>
1012 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="lkd"><paramtype>const <classname>last_kday_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put a last_day_of_the_week_in_month =&gt; "last weekday of month". </purpose></method>
1013 <method name="put_kday_before" cv="const"><type>OutItrT</type><template>
1014 <template-type-parameter name="facet_type"/>
1015 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="fkb"><paramtype>const <classname>kday_before_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put a first_day_of_the_week_before =&gt; "weekday before". </purpose></method>
1016 <method name="put_kday_after" cv="const"><type>OutItrT</type><template>
1017 <template-type-parameter name="facet_type"/>
1018 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>CharT</paramtype></parameter><parameter name="fka"><paramtype>const <classname>kday_after_type</classname> &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Put a first_day_of_the_week_after =&gt; "weekday after". </purpose></method>
1019 </method-group>
1020 <constructor><purpose>Default format elements used. </purpose></constructor>
1021 <constructor><parameter name="first_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="second_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="third_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fourth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fifth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="last_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="before_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="after_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="of_str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Constructor that allows for a custom set of phrase elements. </purpose></constructor>
1022 <method-group name="private member functions">
1023 <method name="put_string" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>helper function to put the various member string into stream </purpose></method>
1024 </method-group>
1025 </class>
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058 </namespace>
1059 </namespace>
1060 </header>
1061 <header name="boost/date_time/date_generator_parser.hpp">
1062 <namespace name="boost">
1063 <namespace name="date_time">
1064 <class name="date_generator_parser"><template>
1065 <template-type-parameter name="date_type"/>
1066 <template-type-parameter name="charT"/>
1067 </template><purpose>Class for date_generator parsing. </purpose><description><para>The elements of a date_generator "phrase" are parsed from the input stream in a particular order. All elements are required and the order in which they appear cannot change, however, the elements themselves can be changed. The default elements and their order are as follows:</para><para><itemizedlist>
1068 <listitem><para><classname alt="boost::date_time::partial_date">partial_date</classname> =&gt; "dd Month"</para></listitem><listitem><para>nth_day_of_the_week_in_month =&gt; "nth weekday of month"</para></listitem><listitem><para>first_day_of_the_week_in_month =&gt; "first weekday of month"</para></listitem><listitem><para>last_day_of_the_week_in_month =&gt; "last weekday of month"</para></listitem><listitem><para>first_day_of_the_week_after =&gt; "weekday after"</para></listitem><listitem><para>first_day_of_the_week_before =&gt; "weekday before"</para></listitem></itemizedlist>
1069 </para><para>Weekday and Month names and formats are handled via the <classname alt="boost::date_time::date_input_facet">date_input_facet</classname>. </para></description><enum name="phrase_elements"><enumvalue name="first"><default>=0</default></enumvalue><enumvalue name="second"/><enumvalue name="third"/><enumvalue name="fourth"/><enumvalue name="fifth"/><enumvalue name="last"/><enumvalue name="before"/><enumvalue name="after"/><enumvalue name="of"/><enumvalue name="number_of_phrase_elements"/></enum>
1070 <typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
1071 <typedef name="stream_itr_type"><type>std::istreambuf_iterator&lt; charT &gt;</type></typedef>
1072 <typedef name="month_type"><type>date_type::month_type</type></typedef>
1073 <typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
1074 <typedef name="day_type"><type>date_type::day_type</type></typedef>
1075 <typedef name="parse_tree_type"><type><classname>string_parse_tree</classname>&lt; charT &gt;</type></typedef>
1076 <typedef name="match_results"><type><classname>parse_tree_type::parse_match_result_type</classname></type></typedef>
1077 <typedef name="collection_type"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type></typedef>
1078 <typedef name="partial_date_type"><type><classname>partial_date</classname>&lt; date_type &gt;</type></typedef>
1079 <typedef name="nth_kday_type"><type><classname>nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1080 <typedef name="first_kday_type"><type><classname>first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1081 <typedef name="last_kday_type"><type><classname>last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1082 <typedef name="kday_after_type"><type><classname>first_kday_after</classname>&lt; date_type &gt;</type></typedef>
1083 <typedef name="kday_before_type"><type><classname>first_kday_before</classname>&lt; date_type &gt;</type></typedef>
1084 <typedef name="char_type"><type>charT</type></typedef>
1085 <data-member name="first_string" specifiers="static"><type>const char_type</type></data-member>
1086 <data-member name="second_string" specifiers="static"><type>const char_type</type></data-member>
1087 <data-member name="third_string" specifiers="static"><type>const char_type</type></data-member>
1088 <data-member name="fourth_string" specifiers="static"><type>const char_type</type></data-member>
1089 <data-member name="fifth_string" specifiers="static"><type>const char_type</type></data-member>
1090 <data-member name="last_string" specifiers="static"><type>const char_type</type></data-member>
1091 <data-member name="before_string" specifiers="static"><type>const char_type</type></data-member>
1092 <data-member name="after_string" specifiers="static"><type>const char_type</type></data-member>
1093 <data-member name="of_string" specifiers="static"><type>const char_type</type></data-member>
1094 <method-group name="public member functions">
1095 <method name="element_strings"><type>void</type><parameter name="first_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="second_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="third_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fourth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fifth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="last_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="before_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="after_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="of_str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Replace strings that determine nth week for generator. </purpose></method>
1096 <method name="element_strings"><type>void</type><parameter name="col"><paramtype>const collection_type &amp;</paramtype></parameter></method>
1097 <method name="get_partial_date_type" cv="const"><type><classname>partial_date_type</classname></type><template>
1098 <template-type-parameter name="facet_type"/>
1099 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns <classname alt="boost::date_time::partial_date">partial_date</classname> parsed from stream </purpose></method>
1100 <method name="get_nth_kday_type" cv="const"><type><classname>nth_kday_type</classname></type><template>
1101 <template-type-parameter name="facet_type"/>
1102 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns nth_kday_of_week parsed from stream </purpose></method>
1103 <method name="get_first_kday_type" cv="const"><type><classname>first_kday_type</classname></type><template>
1104 <template-type-parameter name="facet_type"/>
1105 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns first_kday_of_week parsed from stream </purpose></method>
1106 <method name="get_last_kday_type" cv="const"><type><classname>last_kday_type</classname></type><template>
1107 <template-type-parameter name="facet_type"/>
1108 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns last_kday_of_week parsed from stream </purpose></method>
1109 <method name="get_kday_before_type" cv="const"><type><classname>kday_before_type</classname></type><template>
1110 <template-type-parameter name="facet_type"/>
1111 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns first_kday_of_week parsed from stream </purpose></method>
1112 <method name="get_kday_after_type" cv="const"><type><classname>kday_after_type</classname></type><template>
1113 <template-type-parameter name="facet_type"/>
1114 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>returns first_kday_of_week parsed from stream </purpose></method>
1115 </method-group>
1116 <constructor><purpose>Creates a <classname alt="boost::date_time::date_generator_parser">date_generator_parser</classname> with the default set of "element_strings". </purpose></constructor>
1117 <constructor><parameter name="first_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="second_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="third_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fourth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="fifth_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="last_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="before_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="after_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="of_str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Creates a <classname alt="boost::date_time::date_generator_parser">date_generator_parser</classname> using a user defined set of element strings. </purpose></constructor>
1118 <method-group name="private member functions">
1119 <method name="extract_element" cv="const"><type>void</type><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="ele"><paramtype>typename date_generator_parser::phrase_elements</paramtype></parameter><purpose>Extracts phrase element from input. Throws ios_base::failure on error. </purpose></method>
1120 </method-group>
1121 </class>
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154 </namespace>
1155 </namespace>
1156 </header>
1157 <header name="boost/date_time/date_generators.hpp">
1158 <para>Definition and implementation of date algorithm templates </para><namespace name="boost">
1159 <namespace name="date_time">
1160 <class name="year_based_generator"><template>
1161 <template-type-parameter name="date_type"/>
1162 </template><purpose>Base class for all generators that take a year and produce a date. </purpose><description><para>This class is a base class for polymorphic function objects that take a year and produce a concrete date.
1163 </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1164 <typedef name="year_type"><type>calendar_type::year_type</type></typedef>
1165 <method-group name="public member functions">
1166 <method name="get_date" cv="const = 0" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1167 <method name="to_string" cv="const = 0" specifiers="virtual"><type>std::string</type><purpose>Returns a string for use in a POSIX time_zone string. </purpose></method>
1168 </method-group>
1169 <constructor/>
1170 <destructor/>
1171 </class><class name="partial_date"><template>
1172 <template-type-parameter name="date_type"/>
1173 </template><inherit access="public">boost::date_time::year_based_generator&lt; date_type &gt;</inherit><purpose>Generates a date by applying the year to the given month and day. </purpose><description><para>Example usage: <programlisting language="c++">partial_date pd(1, Jan);
1174 partial_date pd2(70);
1175 date d = pd.get_date(2002); //2002-Jan-01
1176 date d2 = pd2.get_date(2002); //2002-Mar-10
1177 </programlisting> </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1178 <typedef name="day_type"><type>calendar_type::day_type</type></typedef>
1179 <typedef name="month_type"><type>calendar_type::month_type</type></typedef>
1180 <typedef name="year_type"><type>calendar_type::year_type</type></typedef>
1181 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1182 <typedef name="duration_rep"><type>duration_type::duration_rep</type></typedef>
1183 <method-group name="public member functions">
1184 <method name="get_date" cv="const" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter><purpose>Return a concrete date when provided with a year specific year. </purpose><description><para>Will throw an 'invalid_argument' exception if a <classname alt="boost::date_time::partial_date">partial_date</classname> object, instantiated with Feb-29, has get_date called with a non-leap year. Example: <programlisting language="c++">partial_date pd(29, Feb);
1185 pd.get_date(2003); // throws invalid_argument exception
1186 pg.get_date(2000); // returns 2000-2-29
1187 </programlisting> </para></description></method>
1188 <method name="operator()" cv="const"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1189 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>partial_date</classname> &amp;</paramtype></parameter></method>
1190 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>partial_date</classname> &amp;</paramtype></parameter></method>
1191 <method name="month" cv="const"><type>month_type</type></method>
1192 <method name="day" cv="const"><type>day_type</type></method>
1193 <method name="to_string" cv="const" specifiers="virtual"><type>std::string</type><purpose>Returns string suitable for use in POSIX time zone string. </purpose><description><para>Returns string formatted with up to 3 digits: Jan-01 == "0" Feb-29 == "58" Dec-31 == "365" </para></description></method>
1194 </method-group>
1195 <constructor><parameter name="d"><paramtype>day_type</paramtype></parameter><parameter name="m"><paramtype>month_type</paramtype></parameter></constructor>
1196 <constructor><parameter name="days"><paramtype>duration_rep</paramtype></parameter><purpose>Partial date created from number of days into year. Range 1-366. </purpose><description><para>Allowable values range from 1 to 366. 1=Jan1, 366=Dec31. If argument exceeds range, <classname alt="boost::date_time::partial_date">partial_date</classname> will be created with closest in-range value. 60 will always be Feb29, if get_date() is called with a non-leap year an exception will be thrown </para></description></constructor>
1197 </class><class name="nth_kday_of_month"><template>
1198 <template-type-parameter name="date_type"/>
1199 </template><inherit access="public">boost::date_time::year_based_generator&lt; date_type &gt;</inherit><purpose>Useful generator functor for finding holidays. </purpose><description><para>Based on the idea in Cal. Calc. for finding holidays that are the 'first Monday of September'. When instantiated with 'fifth' kday of month, the result will be the last kday of month which can be the fourth or fifth depending on the structure of the month.</para><para>The algorithm here basically guesses for the first day of the month. Then finds the first day of the correct type. That is, if the first of the month is a Tuesday and it needs Wenesday then we simply increment by a day and then we can add the length of a week until we get to the 'nth kday'. There are probably more efficient algorithms based on using a mod 7, but this one works reasonably well for basic applications. </para></description><enum name="week_num"><enumvalue name="first"><default>=1</default></enumvalue><enumvalue name="second"/><enumvalue name="third"/><enumvalue name="fourth"/><enumvalue name="fifth"/></enum>
1200 <typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1201 <typedef name="day_of_week_type"><type>calendar_type::day_of_week_type</type></typedef>
1202 <typedef name="month_type"><type>calendar_type::month_type</type></typedef>
1203 <typedef name="year_type"><type>calendar_type::year_type</type></typedef>
1204 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1205 <method-group name="public member functions">
1206 <method name="get_date" cv="const" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter><purpose>Return a concrete date when provided with a year specific year. </purpose></method>
1207 <method name="month" cv="const"><type>month_type</type></method>
1208 <method name="nth_week" cv="const"><type>week_num</type></method>
1209 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
1210 <method name="nth_week_as_str" cv="const"><type>const char *</type></method>
1211 <method name="to_string" cv="const" specifiers="virtual"><type>std::string</type><purpose>Returns string suitable for use in POSIX time zone string. </purpose><description><para>Returns a string formatted as "M4.3.0" ==&gt; 3rd Sunday in April. </para></description></method>
1212 </method-group>
1213 <constructor><parameter name="week_no"><paramtype>week_num</paramtype></parameter><parameter name="dow"><paramtype>day_of_week_type</paramtype></parameter><parameter name="m"><paramtype>month_type</paramtype></parameter></constructor>
1214 </class><class name="first_kday_of_month"><template>
1215 <template-type-parameter name="date_type"/>
1216 </template><inherit access="public">boost::date_time::year_based_generator&lt; date_type &gt;</inherit><purpose>Useful generator functor for finding holidays and daylight savings. </purpose><description><para>Similar to <classname alt="boost::date_time::nth_kday_of_month">nth_kday_of_month</classname>, but requires less paramters </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1217 <typedef name="day_of_week_type"><type>calendar_type::day_of_week_type</type></typedef>
1218 <typedef name="month_type"><type>calendar_type::month_type</type></typedef>
1219 <typedef name="year_type"><type>calendar_type::year_type</type></typedef>
1220 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1221 <method-group name="public member functions">
1222 <method name="get_date" cv="const" specifiers="virtual"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter><purpose>Return a concrete date when provided with a year specific year. </purpose></method>
1223 <method name="month" cv="const"><type>month_type</type></method>
1224 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
1225 <method name="to_string" cv="const" specifiers="virtual"><type>std::string</type><purpose>Returns string suitable for use in POSIX time zone string. </purpose><description><para>Returns a string formatted as "M4.1.0" ==&gt; 1st Sunday in April. </para></description></method>
1226 </method-group>
1227 <constructor><parameter name="dow"><paramtype>day_of_week_type</paramtype><description><para>The day of week, eg: Sunday, Monday, etc </para></description></parameter><parameter name="m"><paramtype>month_type</paramtype><description><para>The month of the year, eg: Jan, Feb, Mar, etc </para></description></parameter><purpose>Specify the first 'Sunday' in 'April' spec. </purpose><description><para>
1228 </para></description></constructor>
1229 </class><class name="last_kday_of_month"><template>
1230 <template-type-parameter name="date_type"/>
1231 </template><inherit access="public">boost::date_time::year_based_generator&lt; date_type &gt;</inherit><purpose>Calculate something like Last Sunday of January. </purpose><description><para>Useful generator functor for finding holidays and daylight savings Get the last day of the month and then calculate the difference to the last previous day.
1232 </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1233 <typedef name="day_of_week_type"><type>calendar_type::day_of_week_type</type></typedef>
1234 <typedef name="month_type"><type>calendar_type::month_type</type></typedef>
1235 <typedef name="year_type"><type>calendar_type::year_type</type></typedef>
1236 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1237 <method-group name="public member functions">
1238 <method name="get_date" cv="const" specifiers="virtual"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter><purpose>Return a concrete date when provided with a year specific year. </purpose></method>
1239 <method name="month" cv="const"><type>month_type</type></method>
1240 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
1241 <method name="to_string" cv="const" specifiers="virtual"><type>std::string</type><purpose>Returns string suitable for use in POSIX time zone string. </purpose><description><para>Returns a string formatted as "M4.5.0" ==&gt; last Sunday in April. </para></description></method>
1242 </method-group>
1243 <constructor><parameter name="dow"><paramtype>day_of_week_type</paramtype><description><para>The day of week, eg: Sunday, Monday, etc </para></description></parameter><parameter name="m"><paramtype>month_type</paramtype><description><para>The month of the year, eg: Jan, Feb, Mar, etc </para></description></parameter><purpose>Specify the date spec like last 'Sunday' in 'April' spec. </purpose><description><para>
1244 </para></description></constructor>
1245 </class><class name="first_kday_after"><template>
1246 <template-type-parameter name="date_type"/>
1247 </template><purpose>Calculate something like "First Sunday after Jan 1,2002. </purpose><description><para>Date generator that takes a date and finds kday after <programlisting language="c++">typedef <classname alt="boost::date_time::first_kday_after">boost::date_time::first_kday_after&lt;date&gt;</classname> firstkdayafter;
1248 firstkdayafter fkaf(Monday);
1249 fkaf.get_date(date(2002,Feb,1));
1250 </programlisting> </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1251 <typedef name="day_of_week_type"><type>calendar_type::day_of_week_type</type></typedef>
1252 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1253 <method-group name="public member functions">
1254 <method name="get_date" cv="const"><type>date_type</type><parameter name="start_day"><paramtype>date_type</paramtype></parameter><purpose>Return next kday given. </purpose></method>
1255 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
1256 </method-group>
1257 <constructor><parameter name="dow"><paramtype>day_of_week_type</paramtype></parameter></constructor>
1258 </class><class name="first_kday_before"><template>
1259 <template-type-parameter name="date_type"/>
1260 </template><purpose>Calculate something like "First Sunday before Jan 1,2002. </purpose><description><para>Date generator that takes a date and finds kday after <programlisting language="c++">typedef <classname alt="boost::date_time::first_kday_before">boost::date_time::first_kday_before&lt;date&gt;</classname> firstkdaybefore;
1261 firstkdaybefore fkbf(Monday);
1262 fkbf.get_date(date(2002,Feb,1));
1263 </programlisting> </para></description><typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1264 <typedef name="day_of_week_type"><type>calendar_type::day_of_week_type</type></typedef>
1265 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1266 <method-group name="public member functions">
1267 <method name="get_date" cv="const"><type>date_type</type><parameter name="start_day"><paramtype>date_type</paramtype></parameter><purpose>Return next kday given. </purpose></method>
1268 <method name="day_of_week" cv="const"><type>day_of_week_type</type></method>
1269 </method-group>
1270 <constructor><parameter name="dow"><paramtype>day_of_week_type</paramtype></parameter></constructor>
1271 </class>
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299 <function name="nth_as_str"><type>BOOST_DATE_TIME_DECL const char *</type><parameter name="n"><paramtype>int</paramtype></parameter><purpose>Returns nth arg as string. 1 -&gt; "first", 2 -&gt; "second", max is 5. </purpose></function>
1300 <function name="days_until_weekday"><type>date_type::duration_type</type><template>
1301 <template-type-parameter name="date_type"/>
1302 <template-type-parameter name="weekday_type"/>
1303 </template><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>const weekday_type &amp;</paramtype></parameter><purpose>Calculates the number of days until the next weekday. </purpose><description><para>Calculates the number of days until the next weekday. If the date given falls on a Sunday and the given weekday is Tuesday the result will be 2 days </para></description></function>
1304 <function name="days_before_weekday"><type>date_type::duration_type</type><template>
1305 <template-type-parameter name="date_type"/>
1306 <template-type-parameter name="weekday_type"/>
1307 </template><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>const weekday_type &amp;</paramtype></parameter><purpose>Calculates the number of days since the previous weekday. </purpose><description><para>Calculates the number of days since the previous weekday If the date given falls on a Sunday and the given weekday is Tuesday the result will be 5 days. The answer will be a positive number because Tuesday is 5 days before Sunday, not -5 days before. </para></description></function>
1308 <function name="next_weekday"><type>date_type</type><template>
1309 <template-type-parameter name="date_type"/>
1310 <template-type-parameter name="weekday_type"/>
1311 </template><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>const weekday_type &amp;</paramtype></parameter><purpose>Generates a date object representing the date of the following weekday from the given date. </purpose><description><para>Generates a date object representing the date of the following weekday from the given date. If the date given is 2004-May-9 (a Sunday) and the given weekday is Tuesday then the resulting date will be 2004-May-11. </para></description></function>
1312 <function name="previous_weekday"><type>date_type</type><template>
1313 <template-type-parameter name="date_type"/>
1314 <template-type-parameter name="weekday_type"/>
1315 </template><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>const weekday_type &amp;</paramtype></parameter><purpose>Generates a date object representing the date of the previous weekday from the given date. </purpose><description><para>Generates a date object representing the date of the previous weekday from the given date. If the date given is 2004-May-9 (a Sunday) and the given weekday is Tuesday then the resulting date will be 2004-May-4. </para></description></function>
1316 </namespace>
1317 </namespace>
1318 </header>
1319 <header name="boost/date_time/date_iterator.hpp">
1320 <namespace name="boost">
1321 <namespace name="date_time">
1322 <class name="date_itr_base"><template>
1323 <template-type-parameter name="date_type"/>
1324 </template><purpose>Base date iterator type. </purpose><description><para>This class provides the skeleton for the creation of iterators. New and interesting interators can be created by plugging in a new function that derives the next value from the current state. generation of various types of -based information.</para><para><emphasis role="bold">Template Parameters</emphasis></para><para><emphasis role="bold">date_type</emphasis></para><para>The date_type is a concrete date_type. The date_type must define a duration_type and a calendar_type. </para></description><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1325 <typedef name="value_type"><type>date_type</type></typedef>
1326 <typedef name="iterator_category"><type>std::input_iterator_tag</type></typedef>
1327 <method-group name="public member functions">
1328 <method name="operator++"><type><classname>date_itr_base</classname> &amp;</type></method>
1329 <method name="operator--"><type><classname>date_itr_base</classname> &amp;</type></method>
1330 <method name="get_offset" cv="const = 0" specifiers="virtual"><type>duration_type</type><parameter name="current"><paramtype>const date_type &amp;</paramtype></parameter></method>
1331 <method name="get_neg_offset" cv="const = 0" specifiers="virtual"><type>duration_type</type><parameter name="current"><paramtype>const date_type &amp;</paramtype></parameter></method>
1332 <method name="operator*"><type>date_type</type></method>
1333 <method name="operator-&gt;"><type>date_type *</type></method>
1334 <method name="operator&lt;"><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1335 <method name="operator&lt;="><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1336 <method name="operator&gt;"><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1337 <method name="operator&gt;="><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1338 <method name="operator=="><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1339 <method name="operator!="><type>bool</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter></method>
1340 </method-group>
1341 <constructor><parameter name="d"><paramtype>date_type</paramtype></parameter></constructor>
1342 <destructor/>
1343 </class><class name="date_itr"><template>
1344 <template-type-parameter name="offset_functor"/>
1345 <template-type-parameter name="date_type"/>
1346 </template><inherit access="public">boost::date_time::date_itr_base&lt; date_type &gt;</inherit><purpose>Overrides the base date iterator providing hook for functors. </purpose><typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1347 <method-group name="public member functions">
1348 </method-group>
1349 <constructor><parameter name="d"><paramtype>date_type</paramtype></parameter><parameter name="factor"><paramtype>int</paramtype><default>1</default></parameter></constructor>
1350 <method-group name="private member functions">
1351 <method name="get_offset" cv="const" specifiers="virtual"><type>duration_type</type><parameter name="current"><paramtype>const date_type &amp;</paramtype></parameter></method>
1352 <method name="get_neg_offset" cv="const" specifiers="virtual"><type>duration_type</type><parameter name="current"><paramtype>const date_type &amp;</paramtype></parameter></method>
1353 </method-group>
1354 </class><enum name="date_resolutions"><enumvalue name="day"/><enumvalue name="week"/><enumvalue name="months"/><enumvalue name="year"/><enumvalue name="decade"/><enumvalue name="century"/><enumvalue name="NumDateResolutions"/><purpose>An iterator over dates with varying resolution (day, week, month, year, etc) </purpose></enum>
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388 </namespace>
1389 </namespace>
1390 </header>
1391 <header name="boost/date_time/date_names_put.hpp">
1392 <namespace name="boost">
1393 <namespace name="date_time">
1394 <class name="date_names_put"><template>
1395 <template-type-parameter name="Config"/>
1396 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
1397 <template-type-parameter name="OutputIterator"><default>std::ostreambuf_iterator&lt;charT&gt;</default></template-type-parameter>
1398 </template><inherit access="public">facet</inherit><purpose>Output facet base class for gregorian dates. </purpose><description><para>This class is a base class for date facets used to localize the names of months and the names of days in the week.</para><para>Requirements of Config<itemizedlist>
1399 <listitem><para>define an enumeration month_enum that enumerates the months. The enumeration should be '1' based eg: Jan==1</para></listitem><listitem><para>define as_short_string and as_long_string</para></listitem></itemizedlist>
1400 </para><para>(see langer &amp; kreft p334). </para></description><typedef name="iter_type"><type>OutputIterator</type></typedef>
1401 <typedef name="month_type"><type>Config::month_type</type></typedef>
1402 <typedef name="month_enum"><type>Config::month_enum</type></typedef>
1403 <typedef name="weekday_enum"><type>Config::weekday_enum</type></typedef>
1404 <typedef name="special_value_enum"><type>Config::special_value_enum</type></typedef>
1405 <typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
1406 <typedef name="char_type"><type>charT</type></typedef>
1407 <data-member name="default_special_value_names" specifiers="static"><type>const char_type</type></data-member>
1408 <data-member name="separator" specifiers="static"><type>const char_type</type></data-member>
1409 <data-member name="id" specifiers="static"><type>std::locale::id</type><purpose>Generate storage location for a std::locale::id. </purpose></data-member>
1410 <method-group name="public member functions">
1411 <method name="__get_id" cv="const"><type>std::locale::id &amp;</type><parameter name=""><paramtype>void</paramtype></parameter></method>
1412 <method name="put_special_value" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="sv"><paramtype>special_value_enum</paramtype></parameter></method>
1413 <method name="put_month_short" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter></method>
1414 <method name="put_month_long" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter></method>
1415 <method name="put_weekday_short" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>weekday_enum</paramtype></parameter></method>
1416 <method name="put_weekday_long" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>weekday_enum</paramtype></parameter></method>
1417 <method name="has_date_sep_chars" cv="const"><type>bool</type></method>
1418 <method name="year_sep_char" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter></method>
1419 <method name="month_sep_char" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>char between year-month </purpose></method>
1420 <method name="day_sep_char" cv="const"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>Char to separate month-day. </purpose></method>
1421 <method name="date_order" cv="const"><type>ymd_order_spec</type><purpose>Determines the order to put the date elements. </purpose></method>
1422 <method name="month_format" cv="const"><type>month_format_spec</type><purpose>Determines if month is displayed as integer, short or long string. </purpose></method>
1423 </method-group>
1424 <constructor/>
1425 <method-group name="protected member functions">
1426 <method name="do_put_month_short" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter><purpose>Default facet implementation uses month_type defaults. </purpose></method>
1427 <method name="do_put_month_long" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter><purpose>Default facet implementation uses month_type defaults. </purpose></method>
1428 <method name="do_put_special_value" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="sv"><paramtype>special_value_enum</paramtype></parameter><purpose>Default facet implementation for special value types. </purpose></method>
1429 <method name="do_put_weekday_short" cv="const" specifiers="virtual"><type>void</type><parameter name=""><paramtype>iter_type &amp;</paramtype></parameter><parameter name=""><paramtype>weekday_enum</paramtype></parameter></method>
1430 <method name="do_put_weekday_long" cv="const" specifiers="virtual"><type>void</type><parameter name=""><paramtype>iter_type &amp;</paramtype></parameter><parameter name=""><paramtype>weekday_enum</paramtype></parameter></method>
1431 <method name="do_has_date_sep_chars" cv="const" specifiers="virtual"><type>bool</type></method>
1432 <method name="do_year_sep_char" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter></method>
1433 <method name="do_month_sep_char" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>char between year-month </purpose></method>
1434 <method name="do_day_sep_char" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>Char to separate month-day. </purpose></method>
1435 <method name="do_date_order" cv="const" specifiers="virtual"><type>ymd_order_spec</type><purpose>Default for date order. </purpose></method>
1436 <method name="do_month_format" cv="const" specifiers="virtual"><type>month_format_spec</type><purpose>Default month format. </purpose></method>
1437 <method name="put_string" cv="const"><type>void</type><parameter name="oi"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="s"><paramtype>const charT *const</paramtype></parameter></method>
1438 <method name="put_string" cv="const"><type>void</type><parameter name="oi"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="s1"><paramtype>const string_type &amp;</paramtype></parameter></method>
1439 </method-group>
1440 </class><class name="all_date_names_put"><template>
1441 <template-type-parameter name="Config"/>
1442 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
1443 <template-type-parameter name="OutputIterator"><default>std::ostreambuf_iterator&lt;charT&gt;</default></template-type-parameter>
1444 </template><inherit access="public">boost::date_time::date_names_put&lt; Config, charT, OutputIterator &gt;</inherit><purpose>A date name output facet that takes an array of char* to define strings. </purpose><typedef name="iter_type"><type>OutputIterator</type></typedef>
1445 <typedef name="month_enum"><type>Config::month_enum</type></typedef>
1446 <typedef name="weekday_enum"><type>Config::weekday_enum</type></typedef>
1447 <typedef name="special_value_enum"><type>Config::special_value_enum</type></typedef>
1448 <method-group name="public member functions">
1449 <method name="get_short_month_names" cv="const"><type>const charT *const *</type></method>
1450 <method name="get_long_month_names" cv="const"><type>const charT *const *</type></method>
1451 <method name="get_special_value_names" cv="const"><type>const charT *const *</type></method>
1452 <method name="get_short_weekday_names" cv="const"><type>const charT *const *</type></method>
1453 <method name="get_long_weekday_names" cv="const"><type>const charT *const *</type></method>
1454 </method-group>
1455 <constructor><parameter name="month_short_names"><paramtype>const charT *const</paramtype></parameter><parameter name="month_long_names"><paramtype>const charT *const</paramtype></parameter><parameter name="special_value_names"><paramtype>const charT *const</paramtype></parameter><parameter name="weekday_short_names"><paramtype>const charT *const</paramtype></parameter><parameter name="weekday_long_names"><paramtype>const charT *const</paramtype></parameter><parameter name="separator_char"><paramtype>charT</paramtype><default>'-'</default></parameter><parameter name="order_spec"><paramtype>ymd_order_spec</paramtype><default>ymd_order_iso</default></parameter><parameter name="month_format"><paramtype>month_format_spec</paramtype><default>month_as_short_string</default></parameter></constructor>
1456 <method-group name="protected member functions">
1457 <method name="do_put_month_short" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter><purpose>Generic facet that takes array of chars. </purpose></method>
1458 <method name="do_put_month_long" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="moy"><paramtype>month_enum</paramtype></parameter><purpose>Long month names. </purpose></method>
1459 <method name="do_put_special_value" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="sv"><paramtype>special_value_enum</paramtype></parameter><purpose>Special values names. </purpose></method>
1460 <method name="do_put_weekday_short" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>weekday_enum</paramtype></parameter></method>
1461 <method name="do_put_weekday_long" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><parameter name="wd"><paramtype>weekday_enum</paramtype></parameter></method>
1462 <method name="do_month_sep_char" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>char between year-month </purpose></method>
1463 <method name="do_day_sep_char" cv="const" specifiers="virtual"><type>void</type><parameter name="oitr"><paramtype>iter_type &amp;</paramtype></parameter><purpose>Char to separate month-day. </purpose></method>
1464 <method name="do_date_order" cv="const" specifiers="virtual"><type>ymd_order_spec</type><purpose>Set the date ordering. </purpose></method>
1465 <method name="do_month_format" cv="const" specifiers="virtual"><type>month_format_spec</type><purpose>Set the date ordering. </purpose></method>
1466 </method-group>
1467 </class>
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500 </namespace>
1501 </namespace>
1502 </header>
1503 <header name="boost/date_time/date_parsing.hpp">
1504 <namespace name="boost">
1505 <namespace name="date_time">
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524 <function name="convert_to_lower"><type>std::string</type><parameter name="inp"><paramtype>std::string</paramtype></parameter><purpose>A function to replace the std::transform( , , ,tolower) construct. </purpose><description><para>This function simply takes a string, and changes all the characters in that string to lowercase (according to the default system locale). In the event that a compiler does not support locales, the old C style tolower() is used. </para></description></function>
1525 <function name="month_str_to_ushort"><type>unsigned short</type><template>
1526 <template-type-parameter name="month_type"/>
1527 </template><parameter name="s"><paramtype>std::string const &amp;</paramtype></parameter><purpose>Helper function for parse_date. </purpose></function>
1528 <function name="find_match"><type>short</type><template>
1529 <template-type-parameter name="charT"/>
1530 </template><parameter name="short_names"><paramtype>const charT *const *</paramtype></parameter><parameter name="long_names"><paramtype>const charT *const *</paramtype></parameter><parameter name="size"><paramtype>short</paramtype></parameter><parameter name="s"><paramtype>const std::basic_string&lt; charT &gt; &amp;</paramtype></parameter><purpose>Find index of a string in either of 2 arrays. </purpose><description><para>find_match searches both arrays for a match to 's'. Both arrays must contain 'size' elements. The index of the match is returned. If no match is found, 'size' is returned. Ex. "Jan" returns 0, "Dec" returns 11, "Tue" returns 2. 'size' can be sent in with: (greg_month::max)() (which 12), (greg_weekday::max)() + 1 (which is 7) or date_time::NumSpecialValues </para></description></function>
1531 <function name="parse_date"><type>date_type</type><template>
1532 <template-type-parameter name="date_type"/>
1533 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><parameter name="order_spec"><paramtype>int</paramtype><default>ymd_order_iso</default></parameter><purpose>Generic function to parse a delimited date (eg: 2002-02-10) </purpose><description><para>Accepted formats are: "2003-02-10" or " 2003-Feb-10" or "2003-Feburary-10" The order in which the Month, Day, &amp; Year appear in the argument string can be accomodated by passing in the appropriate ymd_order_spec </para></description></function>
1534 <function name="parse_undelimited_date"><type>date_type</type><template>
1535 <template-type-parameter name="date_type"/>
1536 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Generic function to parse undelimited date (eg: 20020201) </purpose></function>
1537 <function name="from_stream_type"><type>date_type</type><template>
1538 <template-type-parameter name="date_type"/>
1539 <template-type-parameter name="iterator_type"/>
1540 </template><parameter name="beg"><paramtype>iterator_type &amp;</paramtype></parameter><parameter name="end"><paramtype>iterator_type const &amp;</paramtype></parameter><parameter name=""><paramtype>char</paramtype></parameter><purpose>Helper function for 'date gregorian::from_stream()'. </purpose><description><para>Creates a string from the iterators that reference the begining &amp; end of a char[] or string. All elements are used in output string </para></description></function>
1541 <function name="from_stream_type"><type>date_type</type><template>
1542 <template-type-parameter name="date_type"/>
1543 <template-type-parameter name="iterator_type"/>
1544 </template><parameter name="beg"><paramtype>iterator_type &amp;</paramtype></parameter><parameter name=""><paramtype>iterator_type const &amp;</paramtype></parameter><parameter name=""><paramtype>std::string const &amp;</paramtype></parameter><purpose>Helper function for 'date gregorian::from_stream()'. </purpose><description><para>Returns the first string found in the stream referenced by the begining &amp; end iterators </para></description></function>
1545 <function name="from_stream_type"><type>date_type</type><template>
1546 <template-type-parameter name="date_type"/>
1547 <template-type-parameter name="iterator_type"/>
1548 </template><parameter name="beg"><paramtype>iterator_type &amp;</paramtype></parameter><parameter name="end"><paramtype>iterator_type const &amp;</paramtype></parameter><parameter name=""><paramtype>wchar_t</paramtype></parameter><purpose>Helper function for 'date gregorian::from_stream()'. </purpose><description><para>Creates a string from the iterators that reference the begining &amp; end of a wstring. All elements are used in output string </para></description></function>
1549 <function name="from_stream_type"><type>date_type</type><template>
1550 <template-type-parameter name="date_type"/>
1551 <template-type-parameter name="iterator_type"/>
1552 </template><parameter name="beg"><paramtype>iterator_type &amp;</paramtype></parameter><parameter name=""><paramtype>iterator_type const &amp;</paramtype></parameter><parameter name=""><paramtype>std::wstring const &amp;</paramtype></parameter><purpose>Helper function for 'date gregorian::from_stream()'. </purpose><description><para>Creates a string from the first wstring found in the stream referenced by the begining &amp; end iterators </para></description></function>
1553 <function name="from_simple_string_type"><type><classname>period</classname>&lt; date_type, typename date_type::duration_type &gt;</type><template>
1554 <template-type-parameter name="date_type"/>
1555 <template-type-parameter name="charT"/>
1556 </template><parameter name="s"><paramtype>const std::basic_string&lt; charT &gt; &amp;</paramtype></parameter><purpose>function called by wrapper functions: date_period_from_(w)string() </purpose></function>
1557
1558
1559
1560
1561
1562 </namespace>
1563 </namespace>
1564 </header>
1565 <header name="boost/date_time/dst_rules.hpp">
1566 <para>Contains template class to provide static dst rule calculations </para><namespace name="boost">
1567 <namespace name="date_time">
1568 <class name="dst_calculator"><template>
1569 <template-type-parameter name="date_type_"/>
1570 <template-type-parameter name="time_duration_type_"/>
1571 </template><purpose>Dynamic class used to caluclate dst transition information. </purpose><typedef name="time_duration_type"><type>time_duration_type_</type></typedef>
1572 <typedef name="date_type"><type>date_type_</type></typedef>
1573 <method-group name="public static functions">
1574 <method name="process_local_dst_start_day" specifiers="static"><type>time_is_dst_result</type><parameter name="time_of_day"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset in the day for the local time </para></description></parameter><parameter name="dst_start_offset_minutes"><paramtype>unsigned int</paramtype><description><para>Local day offset for start of dst </para></description></parameter><parameter name="dst_length_minutes"><paramtype>long</paramtype><description><para>Number of minutes to adjust clock forward </para></description></parameter><purpose>Check the local time offset when on dst start day. </purpose><description><para>On this dst transition, the time label between the transition boundary and the boudary + the offset are invalid times. If before the boundary then still not in dst.
1575
1576 </para></description></method>
1577 <method name="process_local_dst_end_day" specifiers="static"><type>time_is_dst_result</type><parameter name="time_of_day"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset in the day for the local time </para></description></parameter><parameter name="dst_end_offset_minutes"><paramtype>unsigned int</paramtype><description><para>Local time of day for end of dst </para></description></parameter><parameter name="dst_length_minutes"><paramtype>long</paramtype></parameter><purpose>Check the local time offset when on the last day of dst. </purpose><description><para>This is the calculation for the DST end day. On that day times prior to the conversion time - dst_length (1 am in US) are still in dst. Times between the above and the switch time are ambiguous. Times after the start_offset are not in dst.
1578
1579 </para></description></method>
1580 <method name="local_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name="current_day"><paramtype>const date_type &amp;</paramtype><description><para>The day to check for dst </para></description></parameter><parameter name="time_of_day"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset within the day to check </para></description></parameter><parameter name="dst_start_day"><paramtype>const date_type &amp;</paramtype><description><para>Starting day of dst for the given locality </para></description></parameter><parameter name="dst_start_offset"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset within day for dst boundary </para></description></parameter><parameter name="dst_end_day"><paramtype>const date_type &amp;</paramtype><description><para>Ending day of dst for the given locality </para></description></parameter><parameter name="dst_end_offset"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset within day given in dst for dst boundary </para></description></parameter><parameter name="dst_length_minutes"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>Calculates if the given local time is dst or not. </purpose><description><para>Determines if the time is really in DST or not. Also checks for invalid and ambiguous.
1581
1582 </para></description></method>
1583 <method name="local_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name="current_day"><paramtype>const date_type &amp;</paramtype><description><para>The day to check for dst </para></description></parameter><parameter name="time_of_day"><paramtype>const time_duration_type &amp;</paramtype><description><para>Time offset within the day to check </para></description></parameter><parameter name="dst_start_day"><paramtype>const date_type &amp;</paramtype><description><para>Starting day of dst for the given locality </para></description></parameter><parameter name="dst_start_offset_minutes"><paramtype>unsigned int</paramtype><description><para>Offset within day for dst boundary (eg 120 for US which is 02:00:00) </para></description></parameter><parameter name="dst_end_day"><paramtype>const date_type &amp;</paramtype><description><para>Ending day of dst for the given locality </para></description></parameter><parameter name="dst_end_offset_minutes"><paramtype>unsigned int</paramtype><description><para>Offset within day given in dst for dst boundary (eg 120 for US which is 02:00:00) </para></description></parameter><parameter name="dst_length_minutes"><paramtype>long</paramtype><description><para>Length of dst adjusment (eg: 60 for US) </para></description></parameter><purpose>Calculates if the given local time is dst or not. </purpose><description><para>Determines if the time is really in DST or not. Also checks for invalid and ambiguous.
1584
1585 </para></description></method>
1586 </method-group>
1587 </class><class name="dst_calc_engine"><template>
1588 <template-type-parameter name="date_type"/>
1589 <template-type-parameter name="time_duration_type"/>
1590 <template-type-parameter name="dst_traits"/>
1591 </template><purpose>Compile-time configurable daylight savings time calculation engine. </purpose><typedef name="year_type"><type>date_type::year_type</type></typedef>
1592 <typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1593 <typedef name="dstcalc"><type><classname>dst_calculator</classname>&lt; date_type, time_duration_type &gt;</type></typedef>
1594 <method-group name="public static functions">
1595 <method name="local_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>Calculates if the given local time is dst or not. </purpose><description><para>Determines if the time is really in DST or not. Also checks for invalid and ambiguous.
1596 </para></description></method>
1597 <method name="is_dst_boundary_day" specifiers="static"><type>bool</type><parameter name="d"><paramtype>date_type</paramtype></parameter></method>
1598 <method name="dst_offset" specifiers="static"><type>time_duration_type</type><purpose>The time of day for the dst transition (eg: typically 01:00:00 or 02:00:00) </purpose></method>
1599 <method name="local_dst_start_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
1600 <method name="local_dst_end_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
1601 </method-group>
1602 </class><class name="us_dst_rules"><template>
1603 <template-type-parameter name="date_type_"/>
1604 <template-type-parameter name="time_duration_type_"/>
1605 <template-nontype-parameter name="dst_start_offset_minutes"><type>unsigned int</type><default>120</default></template-nontype-parameter>
1606 <template-nontype-parameter name="dst_length_minutes"><type>short</type><default>60</default></template-nontype-parameter>
1607 </template><purpose>Depricated: Class to calculate dst boundaries for US time zones. </purpose><typedef name="time_duration_type"><type>time_duration_type_</type></typedef>
1608 <typedef name="date_type"><type>date_type_</type></typedef>
1609 <typedef name="year_type"><type>date_type::year_type</type></typedef>
1610 <typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
1611 <typedef name="lkday"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1612 <typedef name="fkday"><type><classname>date_time::first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1613 <typedef name="nkday"><type><classname>date_time::nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
1614 <typedef name="dstcalc"><type><classname>dst_calculator</classname>&lt; date_type, time_duration_type &gt;</type></typedef>
1615 <method-group name="public static functions">
1616 <method name="local_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>Calculates if the given local time is dst or not. </purpose><description><para>Determines if the time is really in DST or not. Also checks for invalid and ambiguous.
1617 </para></description></method>
1618 <method name="is_dst_boundary_day" specifiers="static"><type>bool</type><parameter name="d"><paramtype>date_type</paramtype></parameter></method>
1619 <method name="local_dst_start_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
1620 <method name="local_dst_end_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
1621 <method name="dst_offset" specifiers="static"><type>time_duration_type</type></method>
1622 </method-group>
1623 </class><class name="null_dst_rules"><template>
1624 <template-type-parameter name="date_type_"/>
1625 <template-type-parameter name="time_duration_type_"/>
1626 </template><purpose>Used for local time adjustments in places that don't use dst. </purpose><typedef name="time_duration_type"><type>time_duration_type_</type></typedef>
1627 <typedef name="date_type"><type>date_type_</type></typedef>
1628 <method-group name="public static functions">
1629 <method name="local_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name=""><paramtype>const date_type &amp;</paramtype></parameter><parameter name=""><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>Calculates if the given local time is dst or not. </purpose><description><para>
1630 </para></description></method>
1631 <method name="utc_is_dst" specifiers="static"><type>time_is_dst_result</type><parameter name=""><paramtype>const date_type &amp;</paramtype></parameter><parameter name=""><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>Calculates if the given utc time is in dst. </purpose></method>
1632 <method name="is_dst_boundary_day" specifiers="static"><type>bool</type><parameter name=""><paramtype>date_type</paramtype></parameter></method>
1633 <method name="dst_offset" specifiers="static"><type>time_duration_type</type></method>
1634 </method-group>
1635 </class><enum name="time_is_dst_result"><enumvalue name="is_not_in_dst"/><enumvalue name="is_in_dst"/><enumvalue name="ambiguous"/><enumvalue name="invalid_time_label"/></enum>
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669 </namespace>
1670 </namespace>
1671 </header>
1672 <header name="boost/date_time/dst_transition_generators.hpp">
1673 <namespace name="boost">
1674 <namespace name="date_time">
1675 <class name="dst_day_calc_rule"><template>
1676 <template-type-parameter name="date_type"/>
1677 </template><purpose>Defines base interface for calculating start and end date of daylight savings. </purpose><typedef name="year_type"><type>date_type::year_type</type></typedef>
1678 <method-group name="public member functions">
1679 <method name="start_day" cv="const = 0" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1680 <method name="start_rule_as_string" cv="const = 0" specifiers="virtual"><type>std::string</type></method>
1681 <method name="end_day" cv="const = 0" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1682 <method name="end_rule_as_string" cv="const = 0" specifiers="virtual"><type>std::string</type></method>
1683 </method-group>
1684 <destructor/>
1685 </class><class name="day_calc_dst_rule"><template>
1686 <template-type-parameter name="spec"/>
1687 </template><inherit access="public">boost::date_time::dst_day_calc_rule&lt; spec::date_type &gt;</inherit><purpose>Canonical form for a class that provides day rule calculation. </purpose><description><para>This class is used to generate specific sets of dst rules</para><para>
1688 </para></description><typedef name="date_type"><type>spec::date_type</type></typedef>
1689 <typedef name="year_type"><type>date_type::year_type</type></typedef>
1690 <typedef name="start_rule"><type>spec::start_rule</type></typedef>
1691 <typedef name="end_rule"><type>spec::end_rule</type></typedef>
1692 <method-group name="public member functions">
1693 <method name="start_day" cv="const" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1694 <method name="start_rule_as_string" cv="const" specifiers="virtual"><type>std::string</type></method>
1695 <method name="end_day" cv="const" specifiers="virtual"><type>date_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
1696 <method name="end_rule_as_string" cv="const" specifiers="virtual"><type>std::string</type></method>
1697 </method-group>
1698 <constructor><parameter name="dst_start"><paramtype>start_rule</paramtype></parameter><parameter name="dst_end"><paramtype>end_rule</paramtype></parameter></constructor>
1699 </class>
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732 </namespace>
1733 </namespace>
1734 </header>
1735 <header name="boost/date_time/filetime_functions.hpp">
1736 <para>Function(s) for converting between a FILETIME structure and a time object. This file is only available on systems that have BOOST_HAS_FTIME defined. </para><namespace name="boost">
1737 <namespace name="date_time">
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755 <function name="time_from_ftime"><type>TimeT</type><template>
1756 <template-type-parameter name="TimeT"/>
1757 <template-type-parameter name="FileTimeT"/>
1758 </template><parameter name="ft"><paramtype>const FileTimeT &amp;</paramtype></parameter><purpose>Create a time object from an initialized FILETIME struct. </purpose><description><para>Create a time object from an initialized FILETIME struct. A FILETIME struct holds 100-nanosecond units (0.0000001). When built with microsecond resolution the file_time's sub second value will be truncated. Nanosecond resolution has no truncation.</para><para><note><para>The function is templated on the FILETIME type, so that it can be used with both native FILETIME and the ad-hoc boost::detail::winapi::FILETIME_ type. </para></note>
1759 </para></description></function>
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775 </namespace>
1776 </namespace>
1777 </header>
1778 <header name="boost/date_time/format_date_parser.hpp">
1779 <namespace name="std">
1780 </namespace>
1781 <namespace name="boost">
1782 <namespace name="date_time">
1783 <class name="format_date_parser"><template>
1784 <template-type-parameter name="date_type"/>
1785 <template-type-parameter name="charT"/>
1786 </template><purpose>Class with generic date parsing using a format string. </purpose><description><para>The following is the set of recognized format specifiers<itemizedlist>
1787 <listitem><para>a - Short weekday name</para></listitem><listitem><para>A - Long weekday name</para></listitem><listitem><para>b - Abbreviated month name</para></listitem><listitem><para>B - Full month name</para></listitem><listitem><para>d - Day of the month as decimal 01 to 31</para></listitem><listitem><para>j - Day of year as decimal from 001 to 366</para></listitem><listitem><para>m - Month name as a decimal 01 to 12</para></listitem><listitem><para>U - Week number 00 to 53 with first Sunday as the first day of week 1?</para></listitem><listitem><para>w - Weekday as decimal number 0 to 6 where Sunday == 0</para></listitem><listitem><para>W - Week number 00 to 53 where Monday is first day of week 1</para></listitem><listitem><para>x - facet default date representation</para></listitem><listitem><para>y - Year without the century - eg: 04 for 2004</para></listitem><listitem><para>Y - Year with century</para></listitem></itemizedlist>
1788 </para><para>The weekday specifiers (a and A) do not add to the date construction, but they provide a way to skip over the weekday names for formats that provide them.</para><para>todo – Another interesting feature that this approach could provide is an option to fill in any missing fields with the current values from the clock. So if you have m-d the parser would detect the missing year value and fill it in using the clock.</para><para>todo – What to do with the x. x in the classic facet is just bad... </para></description><typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
1789 <typedef name="stringstream_type"><type>std::basic_istringstream&lt; charT &gt;</type></typedef>
1790 <typedef name="stream_itr_type"><type>std::istreambuf_iterator&lt; charT &gt;</type></typedef>
1791 <typedef name="const_itr"><type>string_type::const_iterator</type></typedef>
1792 <typedef name="year_type"><type>date_type::year_type</type></typedef>
1793 <typedef name="month_type"><type>date_type::month_type</type></typedef>
1794 <typedef name="day_type"><type>date_type::day_type</type></typedef>
1795 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
1796 <typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
1797 <typedef name="day_of_year_type"><type>date_type::day_of_year_type</type></typedef>
1798 <typedef name="parse_tree_type"><type><classname>string_parse_tree</classname>&lt; charT &gt;</type></typedef>
1799 <typedef name="match_results"><type><classname>parse_tree_type::parse_match_result_type</classname></type></typedef>
1800 <typedef name="input_collection_type"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type></typedef>
1801 <method-group name="public member functions">
1802 <method name="format" cv="const"><type>string_type</type></method>
1803 <method name="format"><type>void</type><parameter name="format_str"><paramtype>string_type</paramtype></parameter></method>
1804 <method name="short_month_names"><type>void</type><parameter name="month_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
1805 <method name="long_month_names"><type>void</type><parameter name="month_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
1806 <method name="short_weekday_names"><type>void</type><parameter name="weekday_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
1807 <method name="long_weekday_names"><type>void</type><parameter name="weekday_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></method>
1808 <method name="parse_date" cv="const"><type>date_type</type><parameter name="value"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="format_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="sv_parser"><paramtype>const <classname>special_values_parser</classname>&lt; date_type, charT &gt; &amp;</paramtype></parameter></method>
1809 <method name="parse_date" cv="const"><type>date_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="sv_parser"><paramtype>const <classname>special_values_parser</classname>&lt; date_type, charT &gt; &amp;</paramtype></parameter></method>
1810 <method name="parse_date" cv="const"><type>date_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><parameter name="sv_parser"><paramtype>const <classname>special_values_parser</classname>&lt; date_type, charT &gt; &amp;</paramtype></parameter><description><para>Of all the objects that the <classname alt="boost::date_time::format_date_parser">format_date_parser</classname> can parse, only a date can be a special value. Therefore, only parse_date checks for special_values. </para></description></method>
1811 <method name="parse_month" cv="const"><type>month_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><purpose>Throws bad_month if unable to parse. </purpose></method>
1812 <method name="parse_month" cv="const"><type>month_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><parameter name="mr"><paramtype><classname>match_results</classname> &amp;</paramtype></parameter><purpose>Throws bad_month if unable to parse. </purpose></method>
1813 <method name="parse_var_day_of_month" cv="const"><type>day_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><purpose>Expects 1 or 2 digits 1-31. Throws bad_day_of_month if unable to parse. </purpose></method>
1814 <method name="parse_day_of_month" cv="const"><type>day_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><purpose>Expects 2 digits 01-31. Throws bad_day_of_month if unable to parse. </purpose></method>
1815 <method name="parse_weekday" cv="const"><type>day_of_week_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter></method>
1816 <method name="parse_weekday" cv="const"><type>day_of_week_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><parameter name="mr"><paramtype><classname>match_results</classname> &amp;</paramtype></parameter></method>
1817 <method name="parse_year" cv="const"><type>year_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><purpose>throws bad_year if unable to parse </purpose></method>
1818 <method name="parse_year" cv="const"><type>year_type</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="format_str"><paramtype>string_type</paramtype></parameter><parameter name="mr"><paramtype><classname>match_results</classname> &amp;</paramtype></parameter><purpose>throws bad_year if unable to parse </purpose></method>
1819 </method-group>
1820 <constructor><parameter name="format_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="month_short_names"><paramtype>const input_collection_type &amp;</paramtype></parameter><parameter name="month_long_names"><paramtype>const input_collection_type &amp;</paramtype></parameter><parameter name="weekday_short_names"><paramtype>const input_collection_type &amp;</paramtype></parameter><parameter name="weekday_long_names"><paramtype>const input_collection_type &amp;</paramtype></parameter></constructor>
1821 <constructor><parameter name="format_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="locale"><paramtype>const std::locale &amp;</paramtype></parameter></constructor>
1822 <constructor><parameter name="fdp"><paramtype>const <classname>format_date_parser</classname>&lt; date_type, charT &gt; &amp;</paramtype></parameter></constructor>
1823 </class>
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837 <function name="fixed_string_to_int"><type>int_type</type><template>
1838 <template-type-parameter name="int_type"/>
1839 <template-type-parameter name="charT"/>
1840 </template><parameter name="itr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="mr"><paramtype><classname>parse_match_result</classname>&lt; charT &gt; &amp;</paramtype></parameter><parameter name="length"><paramtype>unsigned int</paramtype></parameter><parameter name="fill_char"><paramtype>const charT &amp;</paramtype></parameter><purpose>Helper function for parsing fixed length strings into integers. </purpose><description><para>Will consume 'length' number of characters from stream. Consumed character are transfered to <classname alt="boost::date_time::parse_match_result">parse_match_result</classname> struct. Returns '-1' if no number can be parsed or incorrect number of digits in stream. </para></description></function>
1841 <function name="fixed_string_to_int"><type>int_type</type><template>
1842 <template-type-parameter name="int_type"/>
1843 <template-type-parameter name="charT"/>
1844 </template><parameter name="itr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="mr"><paramtype><classname>parse_match_result</classname>&lt; charT &gt; &amp;</paramtype></parameter><parameter name="length"><paramtype>unsigned int</paramtype></parameter><purpose>Helper function for parsing fixed length strings into integers. </purpose><description><para>Will consume 'length' number of characters from stream. Consumed character are transfered to <classname alt="boost::date_time::parse_match_result">parse_match_result</classname> struct. Returns '-1' if no number can be parsed or incorrect number of digits in stream. </para></description></function>
1845 <function name="var_string_to_int"><type>int_type</type><template>
1846 <template-type-parameter name="int_type"/>
1847 <template-type-parameter name="charT"/>
1848 </template><parameter name="itr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>const std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="max_length"><paramtype>unsigned int</paramtype></parameter><purpose>Helper function for parsing varied length strings into integers. </purpose><description><para>Will consume 'max_length' characters from stream only if those characters are digits. Returns '-1' if no number can be parsed. Will not parse a number preceeded by a '+' or '-'. </para></description></function>
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865 </namespace>
1866 </namespace>
1867 </header>
1868 <header name="boost/date_time/gregorian_calendar.hpp">
1869 <namespace name="boost">
1870 <namespace name="date_time">
1871 <class name="gregorian_calendar_base"><template>
1872 <template-type-parameter name="ymd_type_"/>
1873 <template-type-parameter name="date_int_type_"/>
1874 </template><purpose>An implementation of the Gregorian calendar. </purpose><description><para>This is a parameterized implementation of a proleptic Gregorian Calendar that can be used in the creation of date systems or just to perform calculations. All the methods of this class are static functions, so the intent is to never create instances of this class.
1875 </para></description><typedef name="ymd_type"><purpose>define a type a date split into components </purpose><type>ymd_type_</type></typedef>
1876 <typedef name="month_type"><purpose>define a type for representing months </purpose><type>ymd_type::month_type</type></typedef>
1877 <typedef name="day_type"><purpose>define a type for representing days </purpose><type>ymd_type::day_type</type></typedef>
1878 <typedef name="year_type"><purpose>Type to hold a stand alone year value (eg: 2002) </purpose><type>ymd_type::year_type</type></typedef>
1879 <typedef name="date_int_type"><purpose>Define the integer type to use for internal calculations. </purpose><type>date_int_type_</type></typedef>
1880 <method-group name="public static functions">
1881 <method name="day_of_week" specifiers="static"><type>unsigned short</type><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></method>
1882 <method name="week_number" specifiers="static"><type>int</type><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></method>
1883 <method name="day_number" specifiers="static"><type>date_int_type</type><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></method>
1884 <method name="julian_day_number" specifiers="static"><type>date_int_type</type><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></method>
1885 <method name="modjulian_day_number" specifiers="static"><type>date_int_type</type><parameter name="ymd"><paramtype>const ymd_type &amp;</paramtype></parameter></method>
1886 <method name="from_day_number" specifiers="static"><type>ymd_type</type><parameter name=""><paramtype>date_int_type</paramtype></parameter></method>
1887 <method name="from_julian_day_number" specifiers="static"><type>ymd_type</type><parameter name=""><paramtype>date_int_type</paramtype></parameter></method>
1888 <method name="from_modjulian_day_number" specifiers="static"><type>ymd_type</type><parameter name=""><paramtype>date_int_type</paramtype></parameter></method>
1889 <method name="is_leap_year" specifiers="static"><type>bool</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
1890 <method name="end_of_month_day" specifiers="static"><type>unsigned short</type><parameter name="y"><paramtype>year_type</paramtype></parameter><parameter name="m"><paramtype>month_type</paramtype></parameter></method>
1891 <method name="epoch" specifiers="static"><type>ymd_type</type></method>
1892 <method name="days_in_week" specifiers="static"><type>unsigned short</type></method>
1893 </method-group>
1894 </class>
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927 </namespace>
1928 </namespace>
1929 </header>
1930 <header name="boost/date_time/int_adapter.hpp">
1931 <namespace name="boost">
1932 <namespace name="date_time">
1933 <class name="int_adapter"><template>
1934 <template-type-parameter name="int_type_"/>
1935 </template><purpose>Adapter to create integer types with +-infinity, and not a value. </purpose><description><para>This class is used internally in counted date/time representations. It adds the floating point like features of infinities and not a number. It also provides mathmatical operations with consideration to special values following these rules: <programlisting language="c++">+infinity - infinity == Not A Number (NAN)
1936 infinity * non-zero == infinity
1937 infinity * zero == NAN
1938 +infinity * -integer == -infinity
1939 infinity / infinity == NAN
1940 infinity * infinity == infinity
1941 </programlisting> </para></description><typedef name="int_type"><type>int_type_</type></typedef>
1942 <method-group name="public member functions">
1943 <method name="is_infinity" cv="const"><type>bool</type></method>
1944 <method name="is_pos_infinity" cv="const"><type>bool</type></method>
1945 <method name="is_neg_infinity" cv="const"><type>bool</type></method>
1946 <method name="is_nan" cv="const"><type>bool</type></method>
1947 <method name="is_special" cv="const"><type>bool</type></method>
1948 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1949 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const int &amp;</paramtype></parameter></method>
1950 <method name="operator!=" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1951 <method name="operator!=" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const int &amp;</paramtype></parameter></method>
1952 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1953 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const int &amp;</paramtype></parameter></method>
1954 <method name="operator&gt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1955 <method name="as_number" cv="const"><type>int_type</type></method>
1956 <method name="as_special" cv="const"><type>special_values</type><purpose>Returns either special value type or is_not_special. </purpose></method>
1957 <method name="operator+" cv="const"><type><classname>int_adapter</classname></type><template>
1958 <template-type-parameter name="rhs_type"/>
1959 </template><parameter name="rhs"><paramtype>const <classname>int_adapter</classname>&lt; rhs_type &gt; &amp;</paramtype></parameter><description><para>Operator allows for adding dissimilar <classname alt="boost::date_time::int_adapter">int_adapter</classname> types. The return type will match that of the the calling object's type </para></description></method>
1960 <method name="operator+" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
1961 <method name="operator-" cv="const"><type><classname>int_adapter</classname></type><template>
1962 <template-type-parameter name="rhs_type"/>
1963 </template><parameter name="rhs"><paramtype>const <classname>int_adapter</classname>&lt; rhs_type &gt; &amp;</paramtype></parameter><description><para>Operator allows for subtracting dissimilar <classname alt="boost::date_time::int_adapter">int_adapter</classname> types. The return type will match that of the the calling object's type </para></description></method>
1964 <method name="operator-" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int_type</paramtype></parameter></method>
1965 <method name="operator*" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1966 <method name="operator*" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int</paramtype></parameter><description><para>Provided for cases when automatic conversion from 'int' to '<classname alt="boost::date_time::int_adapter">int_adapter</classname>' causes incorrect results. </para></description></method>
1967 <method name="operator/" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1968 <method name="operator/" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int</paramtype></parameter><description><para>Provided for cases when automatic conversion from 'int' to '<classname alt="boost::date_time::int_adapter">int_adapter</classname>' causes incorrect results. </para></description></method>
1969 <method name="operator%" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter></method>
1970 <method name="operator%" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int</paramtype></parameter><description><para>Provided for cases when automatic conversion from 'int' to '<classname alt="boost::date_time::int_adapter">int_adapter</classname>' causes incorrect results. </para></description></method>
1971 </method-group>
1972 <constructor><parameter name="v"><paramtype>int_type</paramtype></parameter></constructor>
1973 <method-group name="public static functions">
1974 <method name="has_infinity" specifiers="static"><type>bool</type></method>
1975 <method name="pos_infinity" specifiers="static"><type>const <classname>int_adapter</classname></type></method>
1976 <method name="neg_infinity" specifiers="static"><type>const <classname>int_adapter</classname></type></method>
1977 <method name="not_a_number" specifiers="static"><type>const <classname>int_adapter</classname></type></method>
1978 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type><classname>int_adapter</classname> max</type></method>
1979 <method name="BOOST_PREVENT_MACRO_SUBSTITUTION" specifiers="static"><type><classname>int_adapter</classname> min</type></method>
1980 <method name="from_special" specifiers="static"><type><classname>int_adapter</classname></type><parameter name="sv"><paramtype>special_values</paramtype></parameter></method>
1981 <method name="is_inf" specifiers="static"><type>bool</type><parameter name="v"><paramtype>int_type</paramtype></parameter></method>
1982 <method name="is_neg_inf" specifiers="static"><type>bool</type><parameter name="v"><paramtype>int_type</paramtype></parameter></method>
1983 <method name="is_pos_inf" specifiers="static"><type>bool</type><parameter name="v"><paramtype>int_type</paramtype></parameter></method>
1984 <method name="is_not_a_number" specifiers="static"><type>bool</type><parameter name="v"><paramtype>int_type</paramtype></parameter></method>
1985 <method name="to_special" specifiers="static"><type>special_values</type><parameter name="v"><paramtype>int_type</paramtype></parameter><purpose>Returns either special value type or is_not_special. </purpose></method>
1986 <method name="maxcount" specifiers="static"><type>int_type</type></method>
1987 </method-group>
1988 <method-group name="private member functions">
1989 <method name="compare" cv="const"><type>int</type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter><purpose>returns -1, 0, 1, or 2 if 'this' is &lt;, ==, &gt;, or 'nan comparison' rhs </purpose></method>
1990 <method name="mult_div_specials" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const <classname>int_adapter</classname> &amp;</paramtype></parameter><purpose>Assumes at least 'this' or 'rhs' is a special value. </purpose></method>
1991 <method name="mult_div_specials" cv="const"><type><classname>int_adapter</classname></type><parameter name="rhs"><paramtype>const int &amp;</paramtype></parameter><purpose>Assumes 'this' is a special value. </purpose></method>
1992 </method-group>
1993 </class>
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006 <function name="operator&lt;&lt;"><type>std::basic_ostream&lt; charT, traits &gt; &amp;</type><template>
2007 <template-type-parameter name="charT"/>
2008 <template-type-parameter name="traits"/>
2009 <template-type-parameter name="int_type"/>
2010 </template><parameter name="os"><paramtype>std::basic_ostream&lt; charT, traits &gt; &amp;</paramtype></parameter><parameter name="ia"><paramtype>const <classname>int_adapter</classname>&lt; int_type &gt; &amp;</paramtype></parameter><description><para>Expected output is either a numeric representation or a special values representation.<sbr/>
2011 Ex. "12", "+infinity", "not-a-number", etc. </para></description></function>
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031 </namespace>
2032 </namespace>
2033 </header>
2034 <header name="boost/date_time/iso_format.hpp">
2035 <namespace name="boost">
2036 <namespace name="date_time">
2037 <class name="iso_format_base"><template>
2038 <template-type-parameter name="charT"/>
2039 </template><purpose>Class to provide common iso formatting spec. </purpose><method-group name="public static functions">
2040 <method name="month_format" specifiers="static"><type>month_format_spec</type><purpose>Describe month format – its an integer in iso format. </purpose></method>
2041 <method name="not_a_date" specifiers="static"><type>const charT *</type><purpose>String used printed is date is invalid. </purpose></method>
2042 <method name="pos_infinity" specifiers="static"><type>const charT *</type><purpose>String used to for positive infinity value. </purpose></method>
2043 <method name="neg_infinity" specifiers="static"><type>const charT *</type><purpose>String used to for positive infinity value. </purpose></method>
2044 <method name="year_sep_char" specifiers="static"><type>charT</type><purpose>ISO char for a year – used in durations. </purpose></method>
2045 <method name="month_sep_char" specifiers="static"><type>charT</type><purpose>ISO char for a month. </purpose></method>
2046 <method name="day_sep_char" specifiers="static"><type>charT</type><purpose>ISO char for a day. </purpose></method>
2047 <method name="hour_sep_char" specifiers="static"><type>charT</type><purpose>char for minute </purpose></method>
2048 <method name="minute_sep_char" specifiers="static"><type>charT</type><purpose>char for minute </purpose></method>
2049 <method name="second_sep_char" specifiers="static"><type>charT</type><purpose>char for second </purpose></method>
2050 <method name="period_start_char" specifiers="static"><type>charT</type><purpose>ISO char for a period. </purpose></method>
2051 <method name="time_start_char" specifiers="static"><type>charT</type><purpose>Used in time in mixed strings to set start of time. </purpose></method>
2052 <method name="week_start_char" specifiers="static"><type>charT</type><purpose>Used in mixed strings to identify start of a week number. </purpose></method>
2053 <method name="period_sep_char" specifiers="static"><type>charT</type><purpose>Separators for periods. </purpose></method>
2054 <method name="time_sep_char" specifiers="static"><type>charT</type><purpose>Separator for hh:mm:ss. </purpose></method>
2055 <method name="fractional_time_sep_char" specifiers="static"><type>charT</type><purpose>Preferred Separator for hh:mm:ss,decimal_fraction. </purpose></method>
2056 <method name="is_component_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>charT</paramtype></parameter></method>
2057 <method name="is_fractional_time_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>charT</paramtype></parameter></method>
2058 <method name="is_timezone_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>charT</paramtype></parameter></method>
2059 <method name="element_sep_char" specifiers="static"><type>charT</type></method>
2060 </method-group>
2061 </class><class-specialization name="iso_format_base"><template>
2062 </template><specialization><template-arg>wchar_t</template-arg></specialization><purpose>Class to provide common iso formatting spec. </purpose><method-group name="public static functions">
2063 <method name="month_format" specifiers="static"><type>month_format_spec</type><purpose>Describe month format – its an integer in iso format. </purpose></method>
2064 <method name="not_a_date" specifiers="static"><type>const wchar_t *</type><purpose>String used printed is date is invalid. </purpose></method>
2065 <method name="pos_infinity" specifiers="static"><type>const wchar_t *</type><purpose>String used to for positive infinity value. </purpose></method>
2066 <method name="neg_infinity" specifiers="static"><type>const wchar_t *</type><purpose>String used to for positive infinity value. </purpose></method>
2067 <method name="year_sep_char" specifiers="static"><type>wchar_t</type><purpose>ISO char for a year – used in durations. </purpose></method>
2068 <method name="month_sep_char" specifiers="static"><type>wchar_t</type><purpose>ISO char for a month. </purpose></method>
2069 <method name="day_sep_char" specifiers="static"><type>wchar_t</type><purpose>ISO char for a day. </purpose></method>
2070 <method name="hour_sep_char" specifiers="static"><type>wchar_t</type><purpose>char for minute </purpose></method>
2071 <method name="minute_sep_char" specifiers="static"><type>wchar_t</type><purpose>char for minute </purpose></method>
2072 <method name="second_sep_char" specifiers="static"><type>wchar_t</type><purpose>char for second </purpose></method>
2073 <method name="period_start_char" specifiers="static"><type>wchar_t</type><purpose>ISO char for a period. </purpose></method>
2074 <method name="time_start_char" specifiers="static"><type>wchar_t</type><purpose>Used in time in mixed strings to set start of time. </purpose></method>
2075 <method name="week_start_char" specifiers="static"><type>wchar_t</type><purpose>Used in mixed strings to identify start of a week number. </purpose></method>
2076 <method name="period_sep_char" specifiers="static"><type>wchar_t</type><purpose>Separators for periods. </purpose></method>
2077 <method name="time_sep_char" specifiers="static"><type>wchar_t</type><purpose>Separator for hh:mm:ss. </purpose></method>
2078 <method name="fractional_time_sep_char" specifiers="static"><type>wchar_t</type><purpose>Preferred Separator for hh:mm:ss,decimal_fraction. </purpose></method>
2079 <method name="is_component_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>wchar_t</paramtype></parameter></method>
2080 <method name="is_fractional_time_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>wchar_t</paramtype></parameter></method>
2081 <method name="is_timezone_sep" specifiers="static"><type>bool</type><parameter name="sep"><paramtype>wchar_t</paramtype></parameter></method>
2082 <method name="element_sep_char" specifiers="static"><type>wchar_t</type></method>
2083 </method-group>
2084 </class-specialization><class name="iso_format"><template>
2085 <template-type-parameter name="charT"/>
2086 </template><inherit access="public">boost::date_time::iso_format_base&lt; charT &gt;</inherit><purpose>Format description for iso normal YYYYMMDD. </purpose><method-group name="public static functions">
2087 <method name="has_date_sep_chars" specifiers="static"><type>bool</type><purpose>The ios standard format doesn't use char separators. </purpose></method>
2088 </method-group>
2089 </class><class name="iso_extended_format"><template>
2090 <template-type-parameter name="charT"/>
2091 </template><inherit access="public">boost::date_time::iso_format_base&lt; charT &gt;</inherit><purpose>Extended format uses seperators YYYY-MM-DD. </purpose><method-group name="public static functions">
2092 <method name="has_date_sep_chars" specifiers="static"><type>bool</type><purpose>Extended format needs char separators. </purpose></method>
2093 </method-group>
2094 </class>
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127 </namespace>
2128 </namespace>
2129 </header>
2130 <header name="boost/date_time/local_time_adjustor.hpp">
2131 <para>Time adjustment calculations for local times </para><namespace name="boost">
2132 <namespace name="date_time">
2133 <class name="utc_adjustment"><template>
2134 <template-type-parameter name="time_duration_type"/>
2135 <template-nontype-parameter name="hours"><type>short</type></template-nontype-parameter>
2136 <template-nontype-parameter name="minutes"><type>unsigned short</type><default>0</default></template-nontype-parameter>
2137 </template><purpose>Provides a base offset adjustment from utc. </purpose><method-group name="public static functions">
2138 <method name="local_to_utc_base_offset" specifiers="static"><type>time_duration_type</type></method>
2139 <method name="utc_to_local_base_offset" specifiers="static"><type>time_duration_type</type></method>
2140 </method-group>
2141 </class><class name="dynamic_local_time_adjustor"><template>
2142 <template-type-parameter name="time_type"/>
2143 <template-type-parameter name="dst_rules"/>
2144 </template><inherit access="public">dst_rules</inherit><purpose>Allow sliding utc adjustment with fixed dst rules. </purpose><typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
2145 <typedef name="date_type"><type>time_type::date_type</type></typedef>
2146 <method-group name="public member functions">
2147 <method name="utc_offset"><type>time_duration_type</type><parameter name="is_dst"><paramtype>bool</paramtype></parameter><purpose>Presumes local time. </purpose></method>
2148 </method-group>
2149 <constructor><parameter name="utc_offset"><paramtype>time_duration_type</paramtype></parameter></constructor>
2150 </class><class name="static_local_time_adjustor"><template>
2151 <template-type-parameter name="time_type"/>
2152 <template-type-parameter name="dst_rules"/>
2153 <template-type-parameter name="utc_offset_rules"/>
2154 </template><inherit access="public">dst_rules</inherit><inherit access="public">utc_offset_rules</inherit><purpose>Embed the rules for local time adjustments at compile time. </purpose><typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
2155 <typedef name="date_type"><type>time_type::date_type</type></typedef>
2156 <method-group name="public static functions">
2157 <method name="utc_to_local_offset" specifiers="static"><type>time_duration_type</type><parameter name="t"><paramtype>const time_type &amp;</paramtype><description><para>UTC time to calculate offset to local time This adjustment depends on the following observations about the workings of the DST boundary offset. Since UTC time labels are monotonically increasing we can determine if a given local time is in DST or not and therefore adjust the offset appropriately.</para></description></parameter><purpose>Calculates the offset from a utc time to local based on dst and utc offset. </purpose><description><para>
2158 The logic is as follows. Starting with UTC time use the offset to create a label for an non-dst adjusted local time. Then call dst_rules::local_is_dst with the non adjust local time. The results of this function will either unabiguously decide that the initial local time is in dst or return an illegal or ambiguous result. An illegal result only occurs at the end of dst (where labels are skipped) and indicates that dst has ended. An ambiguous result means that we need to recheck by making a dst adjustment and then rechecking. If the dst offset is added to the utc time and the recheck proves non-ambiguous then we are past the boundary. If it is still ambiguous then we are ahead of the boundary and dst is still in effect.</para><para>TODO – check if all dst offsets are positive. If not then the algorithm needs to check for this and reverse the illegal/ambiguous logic. </para></description></method>
2159 <method name="local_to_utc_offset" specifiers="static"><type>time_duration_type</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter><parameter name="dst"><paramtype>date_time::dst_flags</paramtype><default>date_time::calculate</default></parameter><purpose>Get the offset to UTC given a local time. </purpose></method>
2160 </method-group>
2161 </class><class name="local_adjustor"><template>
2162 <template-type-parameter name="time_type"/>
2163 <template-nontype-parameter name="utc_offset"><type>short</type></template-nontype-parameter>
2164 <template-type-parameter name="dst_rule"/>
2165 </template><purpose>Template that simplifies the creation of local time calculator. </purpose><description><para>Use this template to create the timezone to utc convertors as required.</para><para>This class will also work for other regions that don't use dst and have a utc offset which is an integral number of hours.</para><para><emphasis role="bold">Template Parameters</emphasis> -time_type – Time class to use -utc_offset – Number hours local time is adjust from utc -use_dst – true (default) if region uses dst, false otherwise For example: <programlisting language="c++"> //eastern timezone is utc-5
2166 typedef date_time::local_adjustor&lt;ptime, -5, us_dst&gt; us_eastern;
2167 typedef date_time::local_adjustor&lt;ptime, -6, us_dst&gt; us_central;
2168 typedef date_time::local_adjustor&lt;ptime, -7, us_dst&gt; us_mountain;
2169 typedef date_time::local_adjustor&lt;ptime, -8, us_dst&gt; us_pacific;
2170 typedef date_time::local_adjustor&lt;ptime, -7, no_dst&gt; us_arizona;
2171 </programlisting> </para></description><typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
2172 <typedef name="date_type"><type>time_type::date_type</type></typedef>
2173 <typedef name="dst_adjustor"><type><classname>static_local_time_adjustor</classname>&lt; time_type, dst_rule, <classname>utc_adjustment</classname>&lt; time_duration_type, utc_offset &gt; &gt;</type></typedef>
2174 <method-group name="public static functions">
2175 <method name="utc_to_local" specifiers="static"><type>time_type</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter><purpose>Convert a utc time to local time. </purpose></method>
2176 <method name="local_to_utc" specifiers="static"><type>time_type</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter><parameter name="dst"><paramtype>date_time::dst_flags</paramtype><default>date_time::calculate</default></parameter><purpose>Convert a local time to utc. </purpose></method>
2177 </method-group>
2178 </class>
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190 <function name="dummy_to_prevent_msvc6_ice"><type>void</type></function>
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211 </namespace>
2212 </namespace>
2213 </header>
2214 <header name="boost/date_time/local_timezone_defs.hpp">
2215 <namespace name="boost">
2216 <namespace name="date_time">
2217 <struct name="us_dst_trait"><template>
2218 <template-type-parameter name="date_type"/>
2219 </template><purpose>Specification for daylight savings start rules in US. </purpose><description><para>This class is used to configure <classname alt="boost::date_time::dst_calc_engine">dst_calc_engine</classname> template typically as follows: <programlisting language="c++">using namespace boost::gregorian;
2220 using namespace boost::posix_time;
2221 typedef us_dst_trait&lt;date&gt; us_dst_traits;
2222 typedef <classname alt="boost::date_time::dst_calc_engine">boost::date_time::dst_calc_engine</classname>&lt;date, time_duration,
2223 us_dst_traits&gt;
2224 us_dst_calc;
2225 //calculate the 2002 transition day of USA April 7 2002
2226 date dst_start = us_dst_calc::local_dst_start_day(2002);
2227
2228 //calculate the 2002 transition day of USA Oct 27 2002
2229 date dst_end = us_dst_calc::local_dst_end_day(2002);
2230
2231 //check if a local time is in dst or not -- posible answers
2232 //are yes, no, invalid time label, ambiguous
2233 ptime t(...some time...);
2234 if (us_dst::local_is_dst(t.date(), t.time_of_day())
2235 == boost::date_time::is_not_in_dst)
2236 {
2237
2238 }
2239 </programlisting> This generates a type suitable for the calculation of dst transitions for the United States. Of course other templates can be used for other locales. </para></description><typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
2240 <typedef name="month_type"><type>date_type::month_type</type></typedef>
2241 <typedef name="year_type"><type>date_type::year_type</type></typedef>
2242 <typedef name="start_rule_functor"><type><classname>date_time::nth_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2243 <typedef name="end_rule_functor"><type><classname>date_time::first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2244 <typedef name="start_rule_functor_pre2007"><type><classname>date_time::first_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2245 <typedef name="end_rule_functor_pre2007"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2246 <method-group name="public static functions">
2247 <method name="start_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2248 <method name="start_month" specifiers="static"><type>month_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
2249 <method name="end_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2250 <method name="end_month" specifiers="static"><type>month_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter></method>
2251 <method name="local_dst_start_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2252 <method name="local_dst_end_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2253 <method name="dst_start_offset_minutes" specifiers="static"><type>int</type></method>
2254 <method name="dst_end_offset_minutes" specifiers="static"><type>int</type></method>
2255 <method name="dst_shift_length_minutes" specifiers="static"><type>int</type></method>
2256 </method-group>
2257 </struct><struct name="eu_dst_trait"><template>
2258 <template-type-parameter name="date_type"/>
2259 </template><purpose>Rules for daylight savings start in the EU (Last Sun in Mar) </purpose><description><para>These amount to the following:<itemizedlist>
2260 <listitem><para>Start of dst day is last Sunday in March</para></listitem><listitem><para>End day of dst is last Sunday in Oct</para></listitem><listitem><para>Going forward switch time is 2:00 am (offset 120 minutes)</para></listitem><listitem><para>Going back switch time is 3:00 am (off set 180 minutes)</para></listitem><listitem><para>Shift duration is one hour (60 minutes) </para></listitem></itemizedlist>
2261 </para></description><typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
2262 <typedef name="month_type"><type>date_type::month_type</type></typedef>
2263 <typedef name="year_type"><type>date_type::year_type</type></typedef>
2264 <typedef name="start_rule_functor"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2265 <typedef name="end_rule_functor"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2266 <method-group name="public static functions">
2267 <method name="start_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2268 <method name="start_month" specifiers="static"><type>month_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2269 <method name="end_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2270 <method name="end_month" specifiers="static"><type>month_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2271 <method name="dst_start_offset_minutes" specifiers="static"><type>int</type></method>
2272 <method name="dst_end_offset_minutes" specifiers="static"><type>int</type></method>
2273 <method name="dst_shift_length_minutes" specifiers="static"><type>int</type></method>
2274 <method name="local_dst_start_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2275 <method name="local_dst_end_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2276 </method-group>
2277 </struct><struct name="uk_dst_trait"><template>
2278 <template-type-parameter name="date_type"/>
2279 </template><inherit access="public">boost::date_time::eu_dst_trait&lt; date_type &gt;</inherit><purpose>Alternative dst traits for some parts of the United Kingdom. </purpose><method-group name="public static functions">
2280 <method name="dst_start_offset_minutes" specifiers="static"><type>int</type></method>
2281 <method name="dst_end_offset_minutes" specifiers="static"><type>int</type></method>
2282 <method name="dst_shift_length_minutes" specifiers="static"><type>int</type></method>
2283 </method-group>
2284 </struct><struct name="acst_dst_trait"><template>
2285 <template-type-parameter name="date_type"/>
2286 </template><typedef name="day_of_week_type"><type>date_type::day_of_week_type</type></typedef>
2287 <typedef name="month_type"><type>date_type::month_type</type></typedef>
2288 <typedef name="year_type"><type>date_type::year_type</type></typedef>
2289 <typedef name="start_rule_functor"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2290 <typedef name="end_rule_functor"><type><classname>date_time::last_kday_of_month</classname>&lt; date_type &gt;</type></typedef>
2291 <method-group name="public static functions">
2292 <method name="start_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2293 <method name="start_month" specifiers="static"><type>month_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2294 <method name="end_day" specifiers="static"><type>day_of_week_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2295 <method name="end_month" specifiers="static"><type>month_type</type><parameter name=""><paramtype>year_type</paramtype></parameter></method>
2296 <method name="dst_start_offset_minutes" specifiers="static"><type>int</type></method>
2297 <method name="dst_end_offset_minutes" specifiers="static"><type>int</type></method>
2298 <method name="dst_shift_length_minutes" specifiers="static"><type>int</type></method>
2299 <method name="local_dst_start_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2300 <method name="local_dst_end_day" specifiers="static"><type>date_type</type><parameter name="year"><paramtype>year_type</paramtype></parameter></method>
2301 </method-group>
2302 </struct>
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335 </namespace>
2336 </namespace>
2337 </header>
2338 <header name="boost/date_time/locale_config.hpp">
2339 </header>
2340 <header name="boost/date_time/microsec_time_clock.hpp">
2341 <para>This file contains a high resolution time clock implementation. </para><namespace name="boost">
2342 <namespace name="date_time">
2343 <class name="microsec_clock"><template>
2344 <template-type-parameter name="time_type"/>
2345 </template><purpose>A clock providing microsecond level resolution. </purpose><description><para>A high precision clock that measures the local time at a resolution up to microseconds and adjusts to the resolution of the time system. For example, for the a library configuration with nano second resolution, the last 3 places of the fractional seconds will always be 000 since there are 1000 nano-seconds in a micro second. </para></description><typedef name="date_type"><type>time_type::date_type</type></typedef>
2346 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
2347 <typedef name="resolution_traits_type"><type>time_duration_type::rep_type</type></typedef>
2348 <method-group name="public static functions">
2349 <method name="local_time" specifiers="static"><type>time_type</type><template>
2350 <template-type-parameter name="time_zone_type"/>
2351 </template><parameter name="tz_ptr"><paramtype>shared_ptr&lt; time_zone_type &gt;</paramtype></parameter><purpose>return a local time object for the given zone, based on computer clock </purpose></method>
2352 <method name="local_time" specifiers="static"><type>time_type</type><purpose>Returns the local time based on computer clock settings. </purpose></method>
2353 <method name="universal_time" specifiers="static"><type>time_type</type><purpose>Returns the UTC time based on computer settings. </purpose></method>
2354 </method-group>
2355 <method-group name="private static functions">
2356 <method name="create_time" specifiers="static"><type>time_type</type><parameter name="converter"><paramtype>time_converter</paramtype></parameter></method>
2357 <method name="file_time_to_microseconds" specifiers="static"><type>boost::uint64_t</type><parameter name="ft"><paramtype>boost::winapi::FILETIME_ const &amp;</paramtype></parameter><description><para>The function converts file_time into number of microseconds elapsed since 1970-Jan-01</para><para><note><para>Only dates after 1970-Jan-01 are supported. Dates before will be wrapped. </para></note>
2358 </para></description></method>
2359 </method-group>
2360 </class>
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393 </namespace>
2394 </namespace>
2395 </header>
2396 <header name="boost/date_time/parse_format_base.hpp">
2397 <namespace name="boost">
2398 <namespace name="date_time">
2399 <enum name="month_format_spec"><enumvalue name="month_as_integer"/><enumvalue name="month_as_short_string"/><enumvalue name="month_as_long_string"/><purpose>Enum for distinguishing parsing and formatting options. </purpose></enum>
2400 <enum name="ymd_order_spec"><enumvalue name="ymd_order_iso"/><enumvalue name="ymd_order_dmy"/><enumvalue name="ymd_order_us"/><purpose>Enum for distinguishing the order of Month, Day, &amp; Year. </purpose><description><para>Enum for distinguishing the order in which Month, Day, &amp; Year will appear in a date string </para></description></enum>
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434 </namespace>
2435 </namespace>
2436 </header>
2437 <header name="boost/date_time/period.hpp">
2438 <para>This file contain the implementation of the period abstraction. This is basically the same idea as a range. Although this class is intended for use in the time library, it is pretty close to general enough for other numeric uses. </para><namespace name="boost">
2439 <namespace name="date_time">
2440 <class name="period"><template>
2441 <template-type-parameter name="point_rep"/>
2442 <template-type-parameter name="duration_rep"/>
2443 </template><inherit access="private">boost::less_than_comparable&lt; period&lt; point_rep, duration_rep &gt;, boost::equality_comparable&lt; period&lt; point_rep, duration_rep &gt; &gt; &gt;</inherit><purpose>Provides generalized period type useful in date-time systems. </purpose><description><para>This template uses a class to represent a time point within the period and another class to represent a duration. As a result, this class is not appropriate for use when the number and duration representation are the same (eg: in the regular number domain).</para><para>A period can be specified by providing either the begining point and a duration or the begining point and the end point( end is NOT part of the period but 1 unit past it. A period will be "invalid" if either end_point &lt;= begin_point or the given duration is &lt;= 0. Any valid period will return false for is_null().</para><para>Zero length periods are also considered invalid. Zero length periods are periods where the begining and end points are the same, or, the given duration is zero. For a zero length period, the last point will be one unit less than the begining point.</para><para>In the case that the begin and last are the same, the period has a length of one unit.</para><para>The best way to handle periods is usually to provide a begining point and a duration. So, day1 + 7 days is a week period which includes all of the first day and 6 more days (eg: Sun to Sat). </para></description><typedef name="point_type"><type>point_rep</type></typedef>
2444 <typedef name="duration_type"><type>duration_rep</type></typedef>
2445 <method-group name="public member functions">
2446 <method name="begin" cv="const"><type>point_rep</type><purpose>Return the first element in the period. </purpose></method>
2447 <method name="end" cv="const"><type>point_rep</type><purpose>Return one past the last element. </purpose></method>
2448 <method name="last" cv="const"><type>point_rep</type><purpose>Return the last item in the period. </purpose></method>
2449 <method name="length" cv="const"><type>duration_rep</type><purpose>Return the length of the period. </purpose></method>
2450 <method name="is_null" cv="const"><type>bool</type><purpose>True if period is ill formed (length is zero or less) </purpose></method>
2451 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>Equality operator. </purpose></method>
2452 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>Strict as defined by rhs.last &lt;= lhs.last. </purpose></method>
2453 <method name="shift"><type>void</type><parameter name="d"><paramtype>const duration_rep &amp;</paramtype></parameter><purpose>Shift the start and end by the specified amount. </purpose></method>
2454 <method name="expand"><type>void</type><parameter name="d"><paramtype>const duration_rep &amp;</paramtype></parameter><description><para>Expands the size of the period by the duration on both ends.</para><para>So before expand <programlisting language="c++"> [-------]
2455 ^ ^ ^ ^ ^ ^ ^
2456 1 2 3 4 5 6 7
2457 </programlisting> After expand(2) <programlisting language="c++">[----------------------]
2458 ^ ^ ^ ^ ^ ^ ^
2459 1 2 3 4 5 6 7
2460 </programlisting> </para></description></method>
2461 <method name="contains" cv="const"><type>bool</type><parameter name="point"><paramtype>const point_rep &amp;</paramtype></parameter><purpose>True if the point is inside the period, zero length periods contain no points. </purpose></method>
2462 <method name="contains" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>True if this period fully contains (or equals) the other period. </purpose></method>
2463 <method name="intersects" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>True if the periods overlap in any way. </purpose></method>
2464 <method name="is_adjacent" cv="const"><type>bool</type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>True if periods are next to each other without a gap. </purpose></method>
2465 <method name="is_before" cv="const"><type>bool</type><parameter name="point"><paramtype>const point_rep &amp;</paramtype></parameter><purpose>True if all of the period is prior to the passed point or end &lt;= t. </purpose></method>
2466 <method name="is_after" cv="const"><type>bool</type><parameter name="point"><paramtype>const point_rep &amp;</paramtype></parameter><purpose>True if all of the period is prior or t &lt; start. </purpose></method>
2467 <method name="intersection" cv="const"><type><classname>period</classname></type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>Returns the period of intersection or invalid range no intersection. </purpose></method>
2468 <method name="merge" cv="const"><type><classname>period</classname></type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>Returns the union of intersecting periods – or null period. </purpose></method>
2469 <method name="span" cv="const"><type><classname>period</classname></type><parameter name="other"><paramtype>const <classname>period</classname> &amp;</paramtype></parameter><purpose>Combine two periods with earliest start and latest end. </purpose><description><para>Combines two periods and any gap between them such that start = min(p1.start, p2.start) end = max(p1.end , p2.end) <programlisting language="c++"> [---p1---)
2470 [---p2---)
2471 result:
2472 [-----------p3----------)
2473 </programlisting> </para></description></method>
2474 </method-group>
2475 <constructor><parameter name="first_point"><paramtype>point_rep</paramtype></parameter><parameter name="end_point"><paramtype>point_rep</paramtype></parameter><purpose>create a period from begin to last eg: [begin,end) </purpose><description><para>If end &lt;= begin then the period will be invalid </para></description></constructor>
2476 <constructor><parameter name="first_point"><paramtype>point_rep</paramtype></parameter><parameter name="len"><paramtype>duration_rep</paramtype></parameter><purpose>create a period as [begin, begin+len) </purpose><description><para>If len is &lt;= 0 then the period will be invalid </para></description></constructor>
2477 </class>
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510 </namespace>
2511 </namespace>
2512 </header>
2513 <header name="boost/date_time/period_formatter.hpp">
2514 <namespace name="boost">
2515 <namespace name="date_time">
2516 <class name="period_formatter"><template>
2517 <template-type-parameter name="CharT"/>
2518 <template-type-parameter name="OutItrT"><default>std::ostreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
2519 </template><purpose>Not a facet, but a class used to specify and control period formats. </purpose><description><para>Provides settings for the following:<itemizedlist>
2520 <listitem><para>period_separator – default '/'</para></listitem><listitem><para>period_open_start_delimeter – default '['</para></listitem><listitem><para>period_open_range_end_delimeter – default ')'</para></listitem><listitem><para>period_closed_range_end_delimeter – default ']'</para></listitem><listitem><para>display_as_open_range, display_as_closed_range – default closed_range</para></listitem></itemizedlist>
2521 </para><para>Thus the default formatting for a period is as follows: <programlisting language="c++">[period.start()/period.last()]
2522 </programlisting> So for a typical date_period this would be <programlisting language="c++">[2004-Jan-04/2004-Feb-01]
2523 </programlisting> where the date formatting is controlled by the date facet </para></description><enum name="range_display_options"><enumvalue name="AS_OPEN_RANGE"/><enumvalue name="AS_CLOSED_RANGE"/></enum>
2524 <typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
2525 <typedef name="char_type"><type>CharT</type></typedef>
2526 <typedef name="const_itr_type"><type>std::basic_string&lt; char_type &gt;::const_iterator</type></typedef>
2527 <typedef name="collection_type"><type>std::vector&lt; std::basic_string&lt; CharT &gt; &gt;</type></typedef>
2528 <data-member name="default_period_separator" specifiers="static"><type>const char_type</type></data-member>
2529 <data-member name="default_period_start_delimeter" specifiers="static"><type>const char_type</type></data-member>
2530 <data-member name="default_period_open_range_end_delimeter" specifiers="static"><type>const char_type</type></data-member>
2531 <data-member name="default_period_closed_range_end_delimeter" specifiers="static"><type>const char_type</type></data-member>
2532 <method-group name="public member functions">
2533 <method name="put_period_separator" cv="const"><type>OutItrT</type><parameter name="oitr"><paramtype>OutItrT &amp;</paramtype></parameter><purpose>Puts the characters between period elements into stream – default is /. </purpose></method>
2534 <method name="put_period_start_delimeter" cv="const"><type>OutItrT</type><parameter name="oitr"><paramtype>OutItrT &amp;</paramtype></parameter><purpose>Puts the period start characters into stream – default is [. </purpose></method>
2535 <method name="put_period_end_delimeter" cv="const"><type>OutItrT</type><parameter name="oitr"><paramtype>OutItrT &amp;</paramtype></parameter><purpose>Puts the period end characters into stream as controled by open/closed range setting. </purpose></method>
2536 <method name="range_option" cv="const"><type>range_display_options</type></method>
2537 <method name="range_option" cv="const"><type>void</type><parameter name="option"><paramtype>range_display_options</paramtype></parameter><purpose>Reset the range_option control. </purpose></method>
2538 <method name="delimiter_strings"><type>void</type><parameter name=""><paramtype>const string_type &amp;</paramtype></parameter><parameter name=""><paramtype>const string_type &amp;</paramtype></parameter><parameter name=""><paramtype>const string_type &amp;</paramtype></parameter><parameter name=""><paramtype>const string_type &amp;</paramtype></parameter></method>
2539 <method name="put_period" cv="const"><type>OutItrT</type><template>
2540 <template-type-parameter name="period_type"/>
2541 <template-type-parameter name="facet_type"/>
2542 </template><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="a_fill"><paramtype>char_type</paramtype></parameter><parameter name="p"><paramtype>const period_type &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Generic code to output a period – no matter the period type. </purpose><description><para>This generic code will output any period using a facet to to output the 'elements'. For example, in the case of a date_period the elements will be instances of a date which will be formatted according the to setup in the passed facet parameter.</para><para>The steps for formatting a period are always the same:<itemizedlist>
2543 <listitem><para>put the start delimiter</para></listitem><listitem><para>put start element</para></listitem><listitem><para>put the separator</para></listitem><listitem><para>put either last or end element depending on range settings</para></listitem><listitem><para>put end delimeter depending on range settings</para></listitem></itemizedlist>
2544 </para><para>Thus for a typical date period the result might look like this: <programlisting language="c++">[March 01, 2004/June 07, 2004] &lt;-- closed range
2545 [March 01, 2004/June 08, 2004) &lt;-- open range
2546 </programlisting> </para></description></method>
2547 </method-group>
2548 <constructor><parameter name="range_option_in"><paramtype>range_display_options</paramtype><default>AS_CLOSED_RANGE</default></parameter><parameter name="period_separator"><paramtype>const char_type *const</paramtype><default>default_period_separator</default></parameter><parameter name="period_start_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_start_delimeter</default></parameter><parameter name="period_open_range_end_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_open_range_end_delimeter</default></parameter><parameter name="period_closed_range_end_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_closed_range_end_delimeter</default></parameter><purpose>Constructor that sets up period formatter options – default should suffice most cases. </purpose></constructor>
2549 </class>
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582 </namespace>
2583 </namespace>
2584 </header>
2585 <header name="boost/date_time/period_parser.hpp">
2586 <namespace name="boost">
2587 <namespace name="date_time">
2588 <class name="period_parser"><template>
2589 <template-type-parameter name="date_type"/>
2590 <template-type-parameter name="CharT"/>
2591 </template><purpose>Not a facet, but a class used to specify and control period parsing. </purpose><description><para>Provides settings for the following:<itemizedlist>
2592 <listitem><para>period_separator – default '/'</para></listitem><listitem><para>period_open_start_delimeter – default '['</para></listitem><listitem><para>period_open_range_end_delimeter – default ')'</para></listitem><listitem><para>period_closed_range_end_delimeter – default ']'</para></listitem><listitem><para>display_as_open_range, display_as_closed_range – default closed_range</para></listitem></itemizedlist>
2593 </para><para>For a typical date_period, the contents of the input stream would be <programlisting language="c++">[2004-Jan-04/2004-Feb-01]
2594 </programlisting> where the date format is controlled by the date facet </para></description><enum name="period_range_option"><enumvalue name="AS_OPEN_RANGE"/><enumvalue name="AS_CLOSED_RANGE"/></enum>
2595 <typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
2596 <typedef name="char_type"><type>CharT</type></typedef>
2597 <typedef name="stream_itr_type"><type>std::istreambuf_iterator&lt; CharT &gt;</type></typedef>
2598 <typedef name="parse_tree_type"><type><classname>string_parse_tree</classname>&lt; CharT &gt;</type></typedef>
2599 <typedef name="match_results"><type><classname>parse_tree_type::parse_match_result_type</classname></type></typedef>
2600 <typedef name="collection_type"><type>std::vector&lt; std::basic_string&lt; CharT &gt; &gt;</type></typedef>
2601 <data-member name="default_period_separator" specifiers="static"><type>const char_type</type></data-member>
2602 <data-member name="default_period_start_delimeter" specifiers="static"><type>const char_type</type></data-member>
2603 <data-member name="default_period_open_range_end_delimeter" specifiers="static"><type>const char_type</type></data-member>
2604 <data-member name="default_period_closed_range_end_delimeter" specifiers="static"><type>const char_type</type></data-member>
2605 <method-group name="public member functions">
2606 <method name="range_option" cv="const"><type>period_range_option</type></method>
2607 <method name="range_option"><type>void</type><parameter name="option"><paramtype>period_range_option</paramtype></parameter></method>
2608 <method name="delimiter_strings" cv="const"><type>collection_type</type></method>
2609 <method name="delimiter_strings"><type>void</type><parameter name="separator"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="start_delim"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="open_end_delim"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="closed_end_delim"><paramtype>const string_type &amp;</paramtype></parameter></method>
2610 <method name="get_period" cv="const"><type>period_type</type><template>
2611 <template-type-parameter name="period_type"/>
2612 <template-type-parameter name="duration_type"/>
2613 <template-type-parameter name="facet_type"/>
2614 </template><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="a_ios"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name=""><paramtype>const period_type &amp;</paramtype></parameter><parameter name="dur_unit"><paramtype>const duration_type &amp;</paramtype></parameter><parameter name="facet"><paramtype>const facet_type &amp;</paramtype></parameter><purpose>Generic code to parse a period – no matter the period type. </purpose><description><para>This generic code will parse any period using a facet to to get the 'elements'. For example, in the case of a date_period the elements will be instances of a date which will be parsed according the to setup in the passed facet parameter.</para><para>The steps for parsing a period are always the same:<itemizedlist>
2615 <listitem><para>consume the start delimiter</para></listitem><listitem><para>get start element</para></listitem><listitem><para>consume the separator</para></listitem><listitem><para>get either last or end element depending on range settings</para></listitem><listitem><para>consume the end delimeter depending on range settings</para></listitem></itemizedlist>
2616 </para><para>Thus for a typical date period the contents of the input stream might look like this: <programlisting language="c++">[March 01, 2004/June 07, 2004] &lt;-- closed range
2617 [March 01, 2004/June 08, 2004) &lt;-- open range
2618 </programlisting> </para></description></method>
2619 </method-group>
2620 <constructor><parameter name="range_opt"><paramtype>period_range_option</paramtype><default>AS_CLOSED_RANGE</default></parameter><parameter name="period_separator"><paramtype>const char_type *const</paramtype><default>default_period_separator</default></parameter><parameter name="period_start_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_start_delimeter</default></parameter><parameter name="period_open_range_end_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_open_range_end_delimeter</default></parameter><parameter name="period_closed_range_end_delimeter"><paramtype>const char_type *const</paramtype><default>default_period_closed_range_end_delimeter</default></parameter><purpose>Constructor that sets up period parser options. </purpose></constructor>
2621 <constructor><parameter name="p_parser"><paramtype>const <classname>period_parser</classname>&lt; date_type, CharT &gt; &amp;</paramtype></parameter></constructor>
2622 <method-group name="private member functions">
2623 <method name="consume_delim" cv="const"><type>void</type><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="delim"><paramtype>const string_type &amp;</paramtype></parameter><purpose>throws ios_base::failure if delimiter and parsed data do not match </purpose></method>
2624 </method-group>
2625 </class>
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658 </namespace>
2659 </namespace>
2660 </header>
2661 <header name="boost/date_time/special_defs.hpp">
2662 <namespace name="boost">
2663 <namespace name="date_time">
2664 <enum name="special_values"><enumvalue name="not_a_date_time"/><enumvalue name="neg_infin"/><enumvalue name="pos_infin"/><enumvalue name="min_date_time"/><enumvalue name="max_date_time"/><enumvalue name="not_special"/><enumvalue name="NumSpecialValues"/></enum>
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698 </namespace>
2699 </namespace>
2700 </header>
2701 <header name="boost/date_time/special_values_formatter.hpp">
2702 <namespace name="boost">
2703 <namespace name="date_time">
2704 <class name="special_values_formatter"><template>
2705 <template-type-parameter name="CharT"/>
2706 <template-type-parameter name="OutItrT"><default>std::ostreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
2707 </template><purpose>Class that provides generic formmatting ostream formatting for special values. </purpose><description><para>This class provides for the formmating of special values to an output stream. In particular, it produces strings for the values of negative and positive infinity as well as not_a_date_time.</para><para>While not a facet, this class is used by the date and time facets for formatting special value types. </para></description><typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
2708 <typedef name="char_type"><type>CharT</type></typedef>
2709 <typedef name="collection_type"><type>std::vector&lt; string_type &gt;</type></typedef>
2710 <data-member name="default_special_value_names" specifiers="static"><type>const char_type</type><purpose>Storage for the strings used to indicate special values. </purpose></data-member>
2711 <method-group name="public member functions">
2712 <method name="put_special" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="value"><paramtype>const boost::date_time::special_values &amp;</paramtype></parameter></method>
2713 </method-group>
2714 <constructor><purpose>Construct special values formatter using default strings. </purpose><description><para>Default strings are not-a-date-time -infinity +infinity </para></description></constructor>
2715 <constructor><parameter name="begin"><paramtype>const char_type *const *</paramtype></parameter><parameter name="end"><paramtype>const char_type *const *</paramtype></parameter><purpose>Construct special values formatter from array of strings. </purpose><description><para>This constructor will take pair of iterators from an array of strings that represent the special values and copy them for use in formatting special values. <programlisting language="c++">const char* const special_value_names[]={"nadt","-inf","+inf" };
2716
2717 special_value_formatter svf(&amp;special_value_names[0], &amp;special_value_names[3]);
2718 </programlisting> </para></description></constructor>
2719 <constructor><parameter name="beg"><paramtype>typename collection_type::iterator</paramtype></parameter><parameter name="end"><paramtype>typename collection_type::iterator</paramtype></parameter></constructor>
2720 </class>
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753 </namespace>
2754 </namespace>
2755 </header>
2756 <header name="boost/date_time/special_values_parser.hpp">
2757 <namespace name="boost">
2758 <namespace name="date_time">
2759 <class name="special_values_parser"><template>
2760 <template-type-parameter name="date_type"/>
2761 <template-type-parameter name="charT"/>
2762 </template><purpose>Class for special_value parsing. </purpose><description><para>TODO: add doc-comments for which elements can be changed Parses input stream for strings representing special_values. Special values parsed are:<itemizedlist>
2763 <listitem><para>not_a_date_time</para></listitem><listitem><para>neg_infin</para></listitem><listitem><para>pod_infin</para></listitem><listitem><para>min_date_time</para></listitem><listitem><para>max_date_time </para></listitem></itemizedlist>
2764 </para></description><typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
2765 <typedef name="stream_itr_type"><type>std::istreambuf_iterator&lt; charT &gt;</type></typedef>
2766 <typedef name="duration_type"><type>date_type::duration_type</type></typedef>
2767 <typedef name="parse_tree_type"><type><classname>string_parse_tree</classname>&lt; charT &gt;</type></typedef>
2768 <typedef name="match_results"><type><classname>parse_tree_type::parse_match_result_type</classname></type></typedef>
2769 <typedef name="collection_type"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type></typedef>
2770 <typedef name="char_type"><type>charT</type></typedef>
2771 <data-member name="nadt_string" specifiers="static"><type>const char_type</type></data-member>
2772 <data-member name="neg_inf_string" specifiers="static"><type>const char_type</type></data-member>
2773 <data-member name="pos_inf_string" specifiers="static"><type>const char_type</type></data-member>
2774 <data-member name="min_date_time_string" specifiers="static"><type>const char_type</type></data-member>
2775 <data-member name="max_date_time_string" specifiers="static"><type>const char_type</type></data-member>
2776 <method-group name="public member functions">
2777 <method name="sv_strings"><type>void</type><parameter name="nadt_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="neg_inf_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="pos_inf_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="min_dt_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="max_dt_str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Replace special value strings. </purpose></method>
2778 <method name="match" cv="const"><type>bool</type><parameter name="sitr"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="str_end"><paramtype>stream_itr_type &amp;</paramtype></parameter><parameter name="mr"><paramtype><classname>match_results</classname> &amp;</paramtype></parameter><purpose>Sets match_results.current_match to the corresponding special_value or -1. </purpose></method>
2779 </method-group>
2780 <constructor><purpose>Creates a <classname alt="boost::date_time::special_values_parser">special_values_parser</classname> with the default set of "sv_strings". </purpose></constructor>
2781 <constructor><parameter name="nadt_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="neg_inf_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="pos_inf_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="min_dt_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="max_dt_str"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Creates a <classname alt="boost::date_time::special_values_parser">special_values_parser</classname> using a user defined set of element strings. </purpose></constructor>
2782 <constructor><parameter name="beg"><paramtype>typename collection_type::iterator</paramtype></parameter><parameter name="end"><paramtype>typename collection_type::iterator</paramtype></parameter></constructor>
2783 <constructor><parameter name="svp"><paramtype>const <classname>special_values_parser</classname>&lt; date_type, charT &gt; &amp;</paramtype></parameter></constructor>
2784 </class>
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817 </namespace>
2818 </namespace>
2819 </header>
2820 <header name="boost/date_time/string_convert.hpp">
2821 <namespace name="boost">
2822 <namespace name="date_time">
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834 <function name="convert_string_type"><type>std::basic_string&lt; OutputT &gt;</type><template>
2835 <template-type-parameter name="InputT"/>
2836 <template-type-parameter name="OutputT"/>
2837 </template><parameter name="inp_str"><paramtype>const std::basic_string&lt; InputT &gt; &amp;</paramtype></parameter><purpose>Converts a string from one value_type to another. </purpose><description><para>Converts a wstring to a string (or a string to wstring). If both template parameters are of same type, a copy of the input string is returned. </para></description></function>
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859 </namespace>
2860 </namespace>
2861 </header>
2862 <header name="boost/date_time/string_parse_tree.hpp">
2863 <namespace name="boost">
2864 <namespace name="date_time">
2865 <struct name="parse_match_result"><template>
2866 <template-type-parameter name="charT"/>
2867 </template><enum name="PARSE_STATE"><enumvalue name="PARSE_ERROR"><default>= -1</default></enumvalue></enum>
2868 <typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
2869 <data-member name="cache"><type>string_type</type></data-member>
2870 <data-member name="match_depth"><type>unsigned short</type></data-member>
2871 <data-member name="current_match"><type>short</type></data-member>
2872 <method-group name="public member functions">
2873 <method name="remaining" cv="const"><type>string_type</type></method>
2874 <method name="last_char" cv="const"><type>charT</type></method>
2875 <method name="has_remaining" cv="const"><type>bool</type><purpose>Returns true if more characters were parsed than was necessary. </purpose><description><para>Should be used in conjunction with last_char() to get the remaining character. </para></description></method>
2876 </method-group>
2877 <constructor/>
2878 </struct><struct name="string_parse_tree"><template>
2879 <template-type-parameter name="charT"/>
2880 </template><purpose>Recursive data structure to allow efficient parsing of various strings. </purpose><description><para>This class provides a quick lookup by building what amounts to a tree data structure. It also features a match function which can can handle nasty input interators by caching values as it recurses the tree so that it can backtrack as needed. </para></description><typedef name="ptree_coll"><type>std::multimap&lt; charT, <classname>string_parse_tree</classname>&lt; charT &gt; &gt;</type></typedef>
2881 <typedef name="ptree_coll"><type>std::multimap&lt; charT, <classname>string_parse_tree</classname> &gt;</type></typedef>
2882 <typedef name="value_type"><type>ptree_coll::value_type</type></typedef>
2883 <typedef name="iterator"><type>ptree_coll::iterator</type></typedef>
2884 <typedef name="const_iterator"><type>ptree_coll::const_iterator</type></typedef>
2885 <typedef name="string_type"><type>std::basic_string&lt; charT &gt;</type></typedef>
2886 <typedef name="collection_type"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type></typedef>
2887 <typedef name="parse_match_result_type"><type><classname>parse_match_result</classname>&lt; charT &gt;</type></typedef>
2888 <data-member name="m_next_chars"><type>ptree_coll</type></data-member>
2889 <data-member name="m_value"><type>short</type></data-member>
2890 <method-group name="public member functions">
2891 <method name="insert"><type>void</type><parameter name="s"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="value"><paramtype>unsigned short</paramtype></parameter></method>
2892 <method name="match" cv="const"><type>short</type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="result"><paramtype><classname>parse_match_result_type</classname> &amp;</paramtype></parameter><parameter name="level"><paramtype>unsigned int &amp;</paramtype></parameter><purpose>Recursive function that finds a matching string in the tree. </purpose><description><para>Must check match_results::has_remaining() after match() is called. This is required so the user can determine if stream iterator is already pointing to the expected character or not (match() might advance sitr to next char in stream).</para><para>A <classname alt="boost::date_time::parse_match_result">parse_match_result</classname> that has been returned from a failed match attempt can be sent in to the match function of a different <classname alt="boost::date_time::string_parse_tree">string_parse_tree</classname> to attempt a match there. Use the iterators for the partially consumed stream, the <classname alt="boost::date_time::parse_match_result">parse_match_result</classname> object, and '0' for the level parameter. </para></description></method>
2893 <method name="match" cv="const"><type><classname>parse_match_result_type</classname></type><parameter name="sitr"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>std::istreambuf_iterator&lt; charT &gt; &amp;</paramtype></parameter><description><para>Must check match_results::has_remaining() after match() is called. This is required so the user can determine if stream iterator is already pointing to the expected character or not (match() might advance sitr to next char in stream). </para></description></method>
2894 <method name="printme"><type>void</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="level"><paramtype>int &amp;</paramtype></parameter></method>
2895 <method name="print"><type>void</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter></method>
2896 <method name="printmatch"><type>void</type><parameter name="os"><paramtype>std::ostream &amp;</paramtype></parameter><parameter name="c"><paramtype>charT</paramtype></parameter></method>
2897 </method-group>
2898 <constructor><parameter name="names"><paramtype>collection_type</paramtype></parameter><parameter name="starting_point"><paramtype>unsigned int</paramtype><default>0</default></parameter><description><para>Parameter "starting_point" designates where the numbering begins. A starting_point of zero will start the numbering at zero (Sun=0, Mon=1, ...) were a starting_point of one starts the numbering at one (Jan=1, Feb=2, ...). The default is zero, negative vaules are not allowed </para></description></constructor>
2899 <constructor><parameter name="value"><paramtype>short</paramtype><default>-1</default></parameter></constructor>
2900 </struct>
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910 <function name="operator&lt;&lt;"><type>std::basic_ostream&lt; charT &gt; &amp;</type><template>
2911 <template-type-parameter name="charT"/>
2912 </template><parameter name="os"><paramtype>std::basic_ostream&lt; charT &gt; &amp;</paramtype></parameter><parameter name="mr"><paramtype><classname>parse_match_result</classname>&lt; charT &gt; &amp;</paramtype></parameter></function>
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935 </namespace>
2936 </namespace>
2937 </header>
2938 <header name="boost/date_time/strings_from_facet.hpp">
2939 <namespace name="boost">
2940 <namespace name="date_time">
2941
2942
2943
2944
2945
2946
2947
2948
2949 <function name="gather_month_strings"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type><template>
2950 <template-type-parameter name="charT"/>
2951 </template><parameter name="locale"><paramtype>const std::locale &amp;</paramtype><description><para>The locale to use when gathering the strings </para></description></parameter><parameter name="short_strings"><paramtype>bool</paramtype><default>true</default><description><para>True(default) to gather short strings, false for long strings. </para></description></parameter><purpose>This function gathers up all the month strings from a std::locale. </purpose><description><para>Using the time_put facet, this function creates a collection of all the month strings from a locale. This is handy when building custom date parsers or formatters that need to be localized.</para><para>
2952
2953 </para></description><returns><para>A vector of strings containing the strings in order. eg: Jan, Feb, Mar, etc. </para></returns></function>
2954 <function name="gather_weekday_strings"><type>std::vector&lt; std::basic_string&lt; charT &gt; &gt;</type><template>
2955 <template-type-parameter name="charT"/>
2956 </template><parameter name="locale"><paramtype>const std::locale &amp;</paramtype><description><para>The locale to use when gathering the strings </para></description></parameter><parameter name="short_strings"><paramtype>bool</paramtype><default>true</default><description><para>True(default) to gather short strings, false for long strings. </para></description></parameter><purpose>This function gathers up all the weekday strings from a std::locale. </purpose><description><para>Using the time_put facet, this function creates a collection of all the weekday strings from a locale starting with the string for 'Sunday'. This is handy when building custom date parsers or formatters that need to be localized.</para><para>
2957
2958 </para></description><returns><para>A vector of strings containing the weekdays in order. eg: Sun, Mon, Tue, Wed, Thu, Fri, Sat </para></returns></function>
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982 </namespace>
2983 </namespace>
2984 </header>
2985 <header name="boost/date_time/time.hpp">
2986 <para>This file contains the interface for the time associated classes. </para><namespace name="boost">
2987 <namespace name="date_time">
2988 <class name="base_time"><template>
2989 <template-type-parameter name="T"/>
2990 <template-type-parameter name="time_system"/>
2991 </template><inherit access="private">boost::less_than_comparable&lt; T, boost::equality_comparable&lt; T &gt; &gt;</inherit><purpose>Representation of a precise moment in time, including the date. </purpose><description><para>This class is a skeleton for the interface of a temporal type with a resolution that is higher than a day. It is intended that this class be the base class and that the actual time class be derived using the BN pattern. In this way, the derived class can make decisions such as 'should there be a default constructor' and what should it set its value to, should there be optional constructors say allowing only an time_durations that generate a time from a clock,etc. So, in fact multiple time types can be created for a time_system with different construction policies, and all of them can perform basic operations by only writing a copy constructor. Finally, compiler errors are also shorter.</para><para>The real behavior of the time class is provided by the time_system template parameter. This class must provide all the logic for addition, subtraction, as well as define all the interface types. </para></description><typedef name="_is_boost_date_time_time_point"><type>void</type></typedef>
2992 <typedef name="time_type"><type>T</type></typedef>
2993 <typedef name="time_rep_type"><type>time_system::time_rep_type</type></typedef>
2994 <typedef name="date_type"><type>time_system::date_type</type></typedef>
2995 <typedef name="date_duration_type"><type>time_system::date_duration_type</type></typedef>
2996 <typedef name="time_duration_type"><type>time_system::time_duration_type</type></typedef>
2997 <method-group name="public member functions">
2998 <method name="date" cv="const"><type>date_type</type></method>
2999 <method name="time_of_day" cv="const"><type>time_duration_type</type></method>
3000 <method name="zone_name" cv="const"><type>std::string</type><parameter name=""><paramtype>bool</paramtype><default>false</default></parameter><description><para>Optional bool parameter will return time zone as an offset (ie "+07:00"). Empty string is returned for classes that do not use a time_zone </para></description></method>
3001 <method name="zone_abbrev" cv="const"><type>std::string</type><parameter name=""><paramtype>bool</paramtype><default>false</default></parameter><description><para>Optional bool parameter will return time zone as an offset (ie "+07:00"). Empty string is returned for classes that do not use a time_zone </para></description></method>
3002 <method name="zone_as_posix_string" cv="const"><type>std::string</type><purpose>An empty string is returned for classes that do not use a time_zone. </purpose></method>
3003 <method name="is_not_a_date_time" cv="const"><type>bool</type><purpose>check to see if date is not a value </purpose></method>
3004 <method name="is_infinity" cv="const"><type>bool</type><purpose>check to see if date is one of the infinity values </purpose></method>
3005 <method name="is_pos_infinity" cv="const"><type>bool</type><purpose>check to see if date is greater than all possible dates </purpose></method>
3006 <method name="is_neg_infinity" cv="const"><type>bool</type><purpose>check to see if date is greater than all possible dates </purpose></method>
3007 <method name="is_special" cv="const"><type>bool</type><purpose>check to see if time is a special value </purpose></method>
3008 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const time_type &amp;</paramtype></parameter><purpose>Equality operator – others generated by boost::equality_comparable. </purpose></method>
3009 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const time_type &amp;</paramtype></parameter><purpose>Equality operator – others generated by boost::less_than_comparable. </purpose></method>
3010 <method name="operator-" cv="const"><type>time_duration_type</type><parameter name="rhs"><paramtype>const time_type &amp;</paramtype></parameter><purpose>difference between two times </purpose></method>
3011 <method name="operator+" cv="const"><type>time_type</type><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter><purpose>add date durations </purpose></method>
3012 <method name="operator+="><type>time_type</type><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3013 <method name="operator-" cv="const"><type>time_type</type><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter><purpose>subtract date durations </purpose></method>
3014 <method name="operator-="><type>time_type</type><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3015 <method name="operator+" cv="const"><type>time_type</type><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>add time durations </purpose></method>
3016 <method name="operator+="><type>time_type</type><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter></method>
3017 <method name="operator-" cv="const"><type>time_type</type><parameter name="rhs"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>subtract time durations </purpose></method>
3018 <method name="operator-="><type>time_type</type><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter></method>
3019 </method-group>
3020 <constructor><parameter name="day"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="dst"><paramtype>dst_flags</paramtype><default>not_dst</default></parameter></constructor>
3021 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter></constructor>
3022 <constructor><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></constructor>
3023 </class>
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056 </namespace>
3057 </namespace>
3058 </header>
3059 <header name="boost/date_time/time_clock.hpp">
3060 <para>This file contains the interface for clock devices. </para><namespace name="boost">
3061 <namespace name="date_time">
3062 <class name="second_clock"><template>
3063 <template-type-parameter name="time_type"/>
3064 </template><purpose>A clock providing time level services based on C time_t capabilities. </purpose><description><para>This clock provides resolution to the 1 second level </para></description><typedef name="date_type"><type>time_type::date_type</type></typedef>
3065 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3066 <method-group name="public static functions">
3067 <method name="local_time" specifiers="static"><type>time_type</type></method>
3068 <method name="universal_time" specifiers="static"><type>time_type</type><purpose>Get the current day in universal date as a ymd_type. </purpose></method>
3069 <method name="local_time" specifiers="static"><type>time_type</type><template>
3070 <template-type-parameter name="time_zone_type"/>
3071 </template><parameter name="tz_ptr"><paramtype>boost::shared_ptr&lt; time_zone_type &gt;</paramtype></parameter></method>
3072 </method-group>
3073 <method-group name="private static functions">
3074 <method name="create_time" specifiers="static"><type>time_type</type><parameter name="current"><paramtype>::std::tm *</paramtype></parameter></method>
3075 </method-group>
3076 </class>
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109 </namespace>
3110 </namespace>
3111 </header>
3112 <header name="boost/date_time/time_defs.hpp">
3113 <para>This file contains nice definitions for handling the resoluion of various time reprsentations. </para><namespace name="boost">
3114 <namespace name="date_time">
3115 <enum name="time_resolutions"><enumvalue name="sec"/><enumvalue name="tenth"/><enumvalue name="hundreth"/><enumvalue name="hundredth"><default>= hundreth</default></enumvalue><enumvalue name="milli"/><enumvalue name="ten_thousandth"/><enumvalue name="micro"/><enumvalue name="nano"/><enumvalue name="NumResolutions"/><purpose>Defines some nice types for handling time level resolutions. </purpose></enum>
3116 <enum name="dst_flags"><enumvalue name="not_dst"/><enumvalue name="is_dst"/><enumvalue name="calculate"/><purpose>Flags for daylight savings or summer time. </purpose></enum>
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150 </namespace>
3151 </namespace>
3152 </header>
3153 <header name="boost/date_time/time_duration.hpp">
3154 <namespace name="boost">
3155 <namespace name="date_time">
3156 <class name="time_duration"><template>
3157 <template-type-parameter name="T"/>
3158 <template-type-parameter name="rep_type"/>
3159 </template><inherit access="private">boost::less_than_comparable&lt; T, boost::equality_comparable&lt; T &gt; &gt;</inherit><purpose>Represents some amount of elapsed time measure to a given resolution. </purpose><description><para>This class represents a standard set of capabilities for all counted time durations. Time duration implementations should derive from this class passing their type as the first template parameter. This design allows the subclass duration types to provide custom construction policies or other custom features not provided here.</para><para>
3160 </para></description><typedef name="_is_boost_date_time_duration"><type>void</type></typedef>
3161 <typedef name="duration_type"><type>T</type></typedef>
3162 <typedef name="traits_type"><type>rep_type</type></typedef>
3163 <typedef name="day_type"><type>rep_type::day_type</type></typedef>
3164 <typedef name="hour_type"><type>rep_type::hour_type</type></typedef>
3165 <typedef name="min_type"><type>rep_type::min_type</type></typedef>
3166 <typedef name="sec_type"><type>rep_type::sec_type</type></typedef>
3167 <typedef name="fractional_seconds_type"><type>rep_type::fractional_seconds_type</type></typedef>
3168 <typedef name="tick_type"><type>rep_type::tick_type</type></typedef>
3169 <typedef name="impl_type"><type>rep_type::impl_type</type></typedef>
3170 <method-group name="public member functions">
3171 <method name="hours" cv="const"><type>hour_type</type><purpose>Returns number of hours in the duration. </purpose></method>
3172 <method name="minutes" cv="const"><type>min_type</type><purpose>Returns normalized number of minutes. </purpose></method>
3173 <method name="seconds" cv="const"><type>sec_type</type><purpose>Returns normalized number of seconds (0..60) </purpose></method>
3174 <method name="total_seconds" cv="const"><type>sec_type</type><purpose>Returns total number of seconds truncating any fractional seconds. </purpose></method>
3175 <method name="total_milliseconds" cv="const"><type>tick_type</type><purpose>Returns total number of milliseconds truncating any fractional seconds. </purpose></method>
3176 <method name="total_nanoseconds" cv="const"><type>tick_type</type><purpose>Returns total number of nanoseconds truncating any sub millisecond values. </purpose></method>
3177 <method name="total_microseconds" cv="const"><type>tick_type</type><purpose>Returns total number of microseconds truncating any sub microsecond values. </purpose></method>
3178 <method name="fractional_seconds" cv="const"><type>fractional_seconds_type</type><purpose>Returns count of fractional seconds at given resolution. </purpose></method>
3179 <method name="invert_sign" cv="const"><type>duration_type</type></method>
3180 <method name="is_negative" cv="const"><type>bool</type></method>
3181 <method name="operator&lt;" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>time_duration</classname> &amp;</paramtype></parameter></method>
3182 <method name="operator==" cv="const"><type>bool</type><parameter name="rhs"><paramtype>const <classname>time_duration</classname> &amp;</paramtype></parameter></method>
3183 <method name="operator-" cv="const"><type>duration_type</type><purpose>unary- Allows for <classname alt="boost::date_time::time_duration">time_duration</classname> td = -td1 </purpose></method>
3184 <method name="operator-" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const duration_type &amp;</paramtype></parameter></method>
3185 <method name="operator+" cv="const"><type>duration_type</type><parameter name="d"><paramtype>const duration_type &amp;</paramtype></parameter></method>
3186 <method name="operator/" cv="const"><type>duration_type</type><parameter name="divisor"><paramtype>int</paramtype></parameter></method>
3187 <method name="operator-="><type>duration_type</type><parameter name="d"><paramtype>const duration_type &amp;</paramtype></parameter></method>
3188 <method name="operator+="><type>duration_type</type><parameter name="d"><paramtype>const duration_type &amp;</paramtype></parameter></method>
3189 <method name="operator/="><type>duration_type</type><parameter name="divisor"><paramtype>int</paramtype></parameter><purpose>Division operations on a duration with an integer. </purpose></method>
3190 <method name="operator*" cv="const"><type>duration_type</type><parameter name="rhs"><paramtype>int</paramtype></parameter><purpose>Multiplication operations an a duration with an integer. </purpose></method>
3191 <method name="operator*="><type>duration_type</type><parameter name="divisor"><paramtype>int</paramtype></parameter></method>
3192 <method name="ticks" cv="const"><type>tick_type</type></method>
3193 <method name="is_special" cv="const"><type>bool</type><purpose>Is ticks_ a special value? </purpose></method>
3194 <method name="is_pos_infinity" cv="const"><type>bool</type><purpose>Is duration pos-infinity. </purpose></method>
3195 <method name="is_neg_infinity" cv="const"><type>bool</type><purpose>Is duration neg-infinity. </purpose></method>
3196 <method name="is_not_a_date_time" cv="const"><type>bool</type><purpose>Is duration not-a-date-time. </purpose></method>
3197 <method name="get_rep" cv="const"><type>impl_type</type><purpose>Used for special_values output. </purpose></method>
3198 </method-group>
3199 <constructor/>
3200 <constructor><parameter name="hours_in"><paramtype>hour_type</paramtype></parameter><parameter name="minutes_in"><paramtype>min_type</paramtype></parameter><parameter name="seconds_in"><paramtype>sec_type</paramtype><default>0</default></parameter><parameter name="frac_sec_in"><paramtype>fractional_seconds_type</paramtype><default>0</default></parameter></constructor>
3201 <constructor><parameter name="other"><paramtype>const <classname>time_duration</classname>&lt; T, rep_type &gt; &amp;</paramtype></parameter><purpose>Construct from another <classname alt="boost::date_time::time_duration">time_duration</classname> (Copy constructor) </purpose></constructor>
3202 <constructor><parameter name="sv"><paramtype>special_values</paramtype></parameter><purpose>Construct from special_values. </purpose></constructor>
3203 <method-group name="public static functions">
3204 <method name="unit" specifiers="static"><type>duration_type</type><purpose>Returns smallest representable duration. </purpose></method>
3205 <method name="ticks_per_second" specifiers="static"><type>tick_type</type><purpose>Return the number of ticks in a second. </purpose></method>
3206 <method name="resolution" specifiers="static"><type>time_resolutions</type><purpose>Provide the resolution of this duration type. </purpose></method>
3207 <method name="num_fractional_digits" specifiers="static"><type>unsigned short</type><purpose>Returns number of possible digits in fractional seconds. </purpose></method>
3208 </method-group>
3209 <method-group name="protected member functions">
3210 </method-group>
3211 <constructor specifiers="explicit"><parameter name="in"><paramtype>impl_type</paramtype></parameter></constructor>
3212 </class><class name="subsecond_duration"><template>
3213 <template-type-parameter name="base_duration"/>
3214 <template-nontype-parameter name="frac_of_second"><type>boost::int64_t</type></template-nontype-parameter>
3215 </template><inherit access="public">base_duration</inherit><purpose>Template for instantiating derived adjusting durations. </purpose><typedef name="impl_type"><type>base_duration::impl_type</type></typedef>
3216 <typedef name="traits_type"><type>base_duration::traits_type</type></typedef>
3217 <method-group name="private member functions">
3218 <method name="BOOST_STATIC_ASSERT_MSG"><type/><parameter name=""><paramtype>(traits_type::ticks_per_second &gt;=frac_of_second?traits_type::ticks_per_second%frac_of_second:frac_of_second%traits_type::ticks_per_second)</paramtype><default>=0</default></parameter><parameter name=""><paramtype>\"The base duration resolution must be a multiple of the subsecond duration resolution"</paramtype></parameter></method>
3219 <method name="BOOST_STATIC_CONSTANT"><type/><parameter name=""><paramtype>boost::int64_t</paramtype></parameter><parameter name=""><paramtype>adjustment_ratio</paramtype><default>(traits_type::ticks_per_second &gt;=frac_of_second?traits_type::ticks_per_second/frac_of_second:frac_of_second/traits_type::ticks_per_second)</default></parameter></method>
3220 </method-group>
3221 <method-group name="public member functions">
3222 </method-group>
3223 <constructor specifiers="explicit"><parameter name="ss"><paramtype>boost::int64_t</paramtype></parameter></constructor>
3224 </class>
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257 </namespace>
3258 </namespace>
3259 </header>
3260 <header name="boost/date_time/time_facet.hpp">
3261 <namespace name="boost">
3262 <namespace name="date_time">
3263 <struct name="time_formats"><template>
3264 <template-type-parameter name="CharT"/>
3265 </template><typedef name="char_type"><type>CharT</type></typedef>
3266 <data-member name="fractional_seconds_format" specifiers="static"><type>const char_type</type></data-member>
3267 <data-member name="fractional_seconds_or_none_format" specifiers="static"><type>const char_type</type></data-member>
3268 <data-member name="seconds_with_fractional_seconds_format" specifiers="static"><type>const char_type</type></data-member>
3269 <data-member name="seconds_format" specifiers="static"><type>const char_type</type></data-member>
3270 <data-member name="hours_format" specifiers="static"><type>const char_type</type></data-member>
3271 <data-member name="unrestricted_hours_format" specifiers="static"><type>const char_type</type></data-member>
3272 <data-member name="full_24_hour_time_format" specifiers="static"><type>const char_type</type></data-member>
3273 <data-member name="full_24_hour_time_expanded_format" specifiers="static"><type>const char_type</type></data-member>
3274 <data-member name="short_24_hour_time_format" specifiers="static"><type>const char_type</type></data-member>
3275 <data-member name="short_24_hour_time_expanded_format" specifiers="static"><type>const char_type</type></data-member>
3276 <data-member name="standard_format" specifiers="static"><type>const char_type</type></data-member>
3277 <data-member name="zone_abbrev_format" specifiers="static"><type>const char_type</type></data-member>
3278 <data-member name="zone_name_format" specifiers="static"><type>const char_type</type></data-member>
3279 <data-member name="zone_iso_format" specifiers="static"><type>const char_type</type></data-member>
3280 <data-member name="zone_iso_extended_format" specifiers="static"><type>const char_type</type></data-member>
3281 <data-member name="posix_zone_string_format" specifiers="static"><type>const char_type</type></data-member>
3282 <data-member name="duration_sign_negative_only" specifiers="static"><type>const char_type</type></data-member>
3283 <data-member name="duration_sign_always" specifiers="static"><type>const char_type</type></data-member>
3284 <data-member name="duration_seperator" specifiers="static"><type>const char_type</type></data-member>
3285 <data-member name="negative_sign" specifiers="static"><type>const char_type</type></data-member>
3286 <data-member name="positive_sign" specifiers="static"><type>const char_type</type></data-member>
3287 <data-member name="iso_time_format_specifier" specifiers="static"><type>const char_type</type></data-member>
3288 <data-member name="iso_time_format_extended_specifier" specifiers="static"><type>const char_type</type></data-member>
3289 <data-member name="default_time_format" specifiers="static"><type>const char_type</type></data-member>
3290 <data-member name="default_time_input_format" specifiers="static"><type>const char_type</type></data-member>
3291 <data-member name="default_time_duration_format" specifiers="static"><type>const char_type</type></data-member>
3292 </struct><class name="time_facet"><template>
3293 <template-type-parameter name="time_type"/>
3294 <template-type-parameter name="CharT"/>
3295 <template-type-parameter name="OutItrT"><default>std::ostreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
3296 </template><inherit access="public">boost::date_time::date_facet&lt; time_type::date_type, CharT, OutItrT &gt;</inherit><description><para>Facet used for format-based output of time types This class provides for the use of format strings to output times. In addition to the flags for formatting date elements, the following are the allowed format flags:<itemizedlist>
3297 <listitem><para>x X =&gt; default format - enables addition of more flags to default (ie. "%x %X %z")</para></listitem><listitem><para>f =&gt; fractional seconds ".123456"</para></listitem><listitem><para>F =&gt; fractional seconds or none: like frac sec but empty if frac sec == 0</para></listitem><listitem><para>s =&gt; seconds w/ fractional sec "02.123" (this is the same as "%S%f)
3298 - %S =&gt; seconds "02"
3299 - %z =&gt; abbreviated time zone "EDT"
3300 - %Z =&gt; full time zone name "Eastern Daylight Time" </para></listitem></itemizedlist>
3301 </para></description><typedef name="date_type"><type>time_type::date_type</type></typedef>
3302 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3303 <typedef name="period_type"><type><classname>boost::date_time::period</classname>&lt; time_type, time_duration_type &gt;</type></typedef>
3304 <typedef name="base_type"><type><classname>boost::date_time::date_facet</classname>&lt; typename time_type::date_type, CharT, OutItrT &gt;</type></typedef>
3305 <typedef name="string_type"><type>base_type::string_type</type></typedef>
3306 <typedef name="char_type"><type>base_type::char_type</type></typedef>
3307 <typedef name="period_formatter_type"><type><classname>base_type::period_formatter_type</classname></type></typedef>
3308 <typedef name="special_values_formatter_type"><type><classname>base_type::special_values_formatter_type</classname></type></typedef>
3309 <typedef name="date_gen_formatter_type"><type><classname>base_type::date_gen_formatter_type</classname></type></typedef>
3310 <data-member name="fractional_seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3311 <data-member name="fractional_seconds_or_none_format" specifiers="static"><type>const char_type *</type></data-member>
3312 <data-member name="seconds_with_fractional_seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3313 <data-member name="seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3314 <data-member name="hours_format" specifiers="static"><type>const char_type *</type></data-member>
3315 <data-member name="unrestricted_hours_format" specifiers="static"><type>const char_type *</type></data-member>
3316 <data-member name="standard_format" specifiers="static"><type>const char_type *</type></data-member>
3317 <data-member name="zone_abbrev_format" specifiers="static"><type>const char_type *</type></data-member>
3318 <data-member name="zone_name_format" specifiers="static"><type>const char_type *</type></data-member>
3319 <data-member name="zone_iso_format" specifiers="static"><type>const char_type *</type></data-member>
3320 <data-member name="zone_iso_extended_format" specifiers="static"><type>const char_type *</type></data-member>
3321 <data-member name="posix_zone_string_format" specifiers="static"><type>const char_type *</type></data-member>
3322 <data-member name="duration_seperator" specifiers="static"><type>const char_type *</type></data-member>
3323 <data-member name="duration_sign_always" specifiers="static"><type>const char_type *</type></data-member>
3324 <data-member name="duration_sign_negative_only" specifiers="static"><type>const char_type *</type></data-member>
3325 <data-member name="negative_sign" specifiers="static"><type>const char_type *</type></data-member>
3326 <data-member name="positive_sign" specifiers="static"><type>const char_type *</type></data-member>
3327 <data-member name="iso_time_format_specifier" specifiers="static"><type>const char_type *</type></data-member>
3328 <data-member name="iso_time_format_extended_specifier" specifiers="static"><type>const char_type *</type></data-member>
3329 <data-member name="default_time_format" specifiers="static"><type>const char_type *</type></data-member>
3330 <data-member name="default_time_duration_format" specifiers="static"><type>const char_type *</type></data-member>
3331 <data-member name="id" specifiers="static"><type>std::locale::id</type></data-member>
3332 <method-group name="public member functions">
3333 <method name="__get_id" cv="const"><type>std::locale::id &amp;</type><parameter name=""><paramtype>void</paramtype></parameter></method>
3334 <method name="time_duration_format"><type>void</type><parameter name="format"><paramtype>const char_type *const</paramtype></parameter><purpose>Changes format for <classname alt="boost::date_time::time_duration">time_duration</classname>. </purpose></method>
3335 <method name="set_iso_format" specifiers="virtual"><type>void</type></method>
3336 <method name="set_iso_extended_format" specifiers="virtual"><type>void</type></method>
3337 <method name="put" cv="const"><type>OutItrT</type><parameter name="next_arg"><paramtype>OutItrT</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_arg"><paramtype>char_type</paramtype></parameter><parameter name="time_arg"><paramtype>const time_type &amp;</paramtype></parameter></method>
3338 <method name="put" cv="const"><type>OutItrT</type><parameter name="next_arg"><paramtype>OutItrT</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill_arg"><paramtype>char_type</paramtype></parameter><parameter name="time_dur_arg"><paramtype>const time_duration_type &amp;</paramtype></parameter><purpose>put function for <classname alt="boost::date_time::time_duration">time_duration</classname> </purpose></method>
3339 <method name="put" cv="const"><type>OutItrT</type><parameter name="next"><paramtype>OutItrT</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="fill"><paramtype>char_type</paramtype></parameter><parameter name="p"><paramtype>const <classname>period_type</classname> &amp;</paramtype></parameter></method>
3340 </method-group>
3341 <constructor specifiers="explicit"><parameter name="ref_arg"><paramtype>::size_t</paramtype><default>0</default></parameter><purpose>sets default formats for ptime, local_date_time, and <classname alt="boost::date_time::time_duration">time_duration</classname> </purpose></constructor>
3342 <constructor specifiers="explicit"><parameter name="format_arg"><paramtype>const char_type *</paramtype></parameter><parameter name="period_formatter_arg"><paramtype><classname>period_formatter_type</classname></paramtype><default><classname alt="boost::date_time::period_formatter">period_formatter_type</classname>()</default></parameter><parameter name="special_value_formatter"><paramtype>const <classname>special_values_formatter_type</classname> &amp;</paramtype><default><classname alt="boost::date_time::special_values_formatter">special_values_formatter_type</classname>()</default></parameter><parameter name="dg_formatter"><paramtype><classname>date_gen_formatter_type</classname></paramtype><default><classname alt="boost::date_time::date_generator_formatter">date_gen_formatter_type</classname>()</default></parameter><parameter name="ref_arg"><paramtype>::size_t</paramtype><default>0</default></parameter><purpose>Construct the facet with an explicitly specified format. </purpose></constructor>
3343 <method-group name="protected static functions">
3344 <method name="fractional_seconds_as_string" specifiers="static"><type>string_type</type><parameter name="time_arg"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="null_when_zero"><paramtype>bool</paramtype></parameter></method>
3345 <method name="hours_as_string" specifiers="static"><type>string_type</type><parameter name="time_arg"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="width"><paramtype>int</paramtype><default>2</default></parameter></method>
3346 <method name="integral_as_string" specifiers="static"><type>string_type</type><template>
3347 <template-type-parameter name="IntT"/>
3348 </template><parameter name="val"><paramtype>IntT</paramtype></parameter><parameter name="width"><paramtype>int</paramtype><default>2</default></parameter></method>
3349 </method-group>
3350 </class><class name="time_input_facet"><template>
3351 <template-type-parameter name="time_type"/>
3352 <template-type-parameter name="CharT"/>
3353 <template-type-parameter name="InItrT"><default>std::istreambuf_iterator&lt;CharT, std::char_traits&lt;CharT&gt; &gt;</default></template-type-parameter>
3354 </template><inherit access="public">boost::date_time::date_input_facet&lt; time_type::date_type, CharT, InItrT &gt;</inherit><purpose>Facet for format-based input. </purpose><typedef name="date_type"><type>time_type::date_type</type></typedef>
3355 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3356 <typedef name="fracional_seconds_type"><type>time_duration_type::fractional_seconds_type</type></typedef>
3357 <typedef name="period_type"><type><classname>boost::date_time::period</classname>&lt; time_type, time_duration_type &gt;</type></typedef>
3358 <typedef name="base_type"><type><classname>boost::date_time::date_input_facet</classname>&lt; typename time_type::date_type, CharT, InItrT &gt;</type></typedef>
3359 <typedef name="date_duration_type"><type>base_type::duration_type</type></typedef>
3360 <typedef name="year_type"><type>base_type::year_type</type></typedef>
3361 <typedef name="month_type"><type>base_type::month_type</type></typedef>
3362 <typedef name="day_type"><type>base_type::day_type</type></typedef>
3363 <typedef name="string_type"><type>base_type::string_type</type></typedef>
3364 <typedef name="const_itr"><type>string_type::const_iterator</type></typedef>
3365 <typedef name="char_type"><type>base_type::char_type</type></typedef>
3366 <typedef name="format_date_parser_type"><type><classname>base_type::format_date_parser_type</classname></type></typedef>
3367 <typedef name="period_parser_type"><type><classname>base_type::period_parser_type</classname></type></typedef>
3368 <typedef name="special_values_parser_type"><type><classname>base_type::special_values_parser_type</classname></type></typedef>
3369 <typedef name="date_gen_parser_type"><type><classname>base_type::date_gen_parser_type</classname></type></typedef>
3370 <typedef name="match_results"><type>base_type::special_values_parser_type::match_results</type></typedef>
3371 <data-member name="fractional_seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3372 <data-member name="fractional_seconds_or_none_format" specifiers="static"><type>const char_type *</type></data-member>
3373 <data-member name="seconds_with_fractional_seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3374 <data-member name="seconds_format" specifiers="static"><type>const char_type *</type></data-member>
3375 <data-member name="standard_format" specifiers="static"><type>const char_type *</type></data-member>
3376 <data-member name="zone_abbrev_format" specifiers="static"><type>const char_type *</type></data-member>
3377 <data-member name="zone_name_format" specifiers="static"><type>const char_type *</type></data-member>
3378 <data-member name="zone_iso_format" specifiers="static"><type>const char_type *</type></data-member>
3379 <data-member name="zone_iso_extended_format" specifiers="static"><type>const char_type *</type></data-member>
3380 <data-member name="duration_seperator" specifiers="static"><type>const char_type *</type></data-member>
3381 <data-member name="iso_time_format_specifier" specifiers="static"><type>const char_type *</type></data-member>
3382 <data-member name="iso_time_format_extended_specifier" specifiers="static"><type>const char_type *</type></data-member>
3383 <data-member name="default_time_input_format" specifiers="static"><type>const char_type *</type></data-member>
3384 <data-member name="default_time_duration_format" specifiers="static"><type>const char_type *</type></data-member>
3385 <data-member name="id" specifiers="static"><type>std::locale::id</type></data-member>
3386 <method-group name="public member functions">
3387 <method name="time_duration_format"><type>void</type><parameter name="format"><paramtype>const char_type *const</paramtype></parameter><purpose>Set the format for <classname alt="boost::date_time::time_duration">time_duration</classname>. </purpose></method>
3388 <method name="set_iso_format" specifiers="virtual"><type>void</type></method>
3389 <method name="set_iso_extended_format" specifiers="virtual"><type>void</type></method>
3390 <method name="get" cv="const"><type>InItrT</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="p"><paramtype><classname>period_type</classname> &amp;</paramtype></parameter></method>
3391 <method name="get" cv="const"><type>InItrT</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="td"><paramtype>time_duration_type &amp;</paramtype></parameter></method>
3392 <method name="get" cv="const"><type>InItrT</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="t"><paramtype>time_type &amp;</paramtype></parameter><purpose>Parses a time object from the input stream. </purpose></method>
3393 <method name="get_local_time" cv="const"><type>InItrT</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="t"><paramtype>time_type &amp;</paramtype></parameter><parameter name="tz_str"><paramtype>string_type &amp;</paramtype></parameter><purpose>Expects a time_zone in the input stream. </purpose></method>
3394 </method-group>
3395 <constructor specifiers="explicit"><parameter name="format"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="ref_arg"><paramtype>::size_t</paramtype><default>0</default></parameter><purpose>Constructor that takes a format string for a ptime. </purpose></constructor>
3396 <constructor specifiers="explicit"><parameter name="format"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="date_parser"><paramtype>const <classname>format_date_parser_type</classname> &amp;</paramtype></parameter><parameter name="sv_parser"><paramtype>const <classname>special_values_parser_type</classname> &amp;</paramtype></parameter><parameter name="per_parser"><paramtype>const <classname>period_parser_type</classname> &amp;</paramtype></parameter><parameter name="date_gen_parser"><paramtype>const <classname>date_gen_parser_type</classname> &amp;</paramtype></parameter><parameter name="ref_arg"><paramtype>::size_t</paramtype><default>0</default></parameter></constructor>
3397 <constructor specifiers="explicit"><parameter name="ref_arg"><paramtype>::size_t</paramtype><default>0</default></parameter><purpose>sets default formats for ptime, local_date_time, and <classname alt="boost::date_time::time_duration">time_duration</classname> </purpose></constructor>
3398 <method-group name="protected member functions">
3399 <method name="get" cv="const"><type>InItrT</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="ios_arg"><paramtype>std::ios_base &amp;</paramtype></parameter><parameter name="t"><paramtype>time_type &amp;</paramtype></parameter><parameter name="tz_str"><paramtype>string_type &amp;</paramtype></parameter><parameter name="time_is_local"><paramtype>bool</paramtype></parameter></method>
3400 <method name="check_special_value" cv="const"><type>InItrT</type><template>
3401 <template-type-parameter name="temporal_type"/>
3402 </template><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="tt"><paramtype>temporal_type &amp;</paramtype></parameter><parameter name="c"><paramtype>char_type</paramtype><default>'\0'</default></parameter><purpose>Helper function to check for special_value. </purpose><description><para>First character may have been consumed during original parse attempt. Parameter 'c' should be a copy of that character. Throws ios_base::failure if parse fails. </para></description></method>
3403 <method name="parse_frac_type" cv="const"><type>void</type><parameter name="sitr"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="stream_end"><paramtype>InItrT &amp;</paramtype></parameter><parameter name="frac"><paramtype>fracional_seconds_type &amp;</paramtype></parameter><purpose>Helper function for parsing a fractional second type from the stream. </purpose></method>
3404 </method-group>
3405 <method-group name="private member functions">
3406 <method name="decimal_adjust" cv="const"><type>int_type</type><template>
3407 <template-type-parameter name="int_type"/>
3408 </template><parameter name="val"><paramtype>int_type</paramtype></parameter><parameter name="places"><paramtype>const unsigned short</paramtype></parameter><purpose>Helper function to adjust trailing zeros when parsing fractional digits. </purpose></method>
3409 </method-group>
3410 </class>
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443 </namespace>
3444 </namespace>
3445 </header>
3446 <header name="boost/date_time/time_formatting_streams.hpp">
3447 <namespace name="boost">
3448 <namespace name="date_time">
3449 <class name="ostream_time_duration_formatter"><template>
3450 <template-type-parameter name="time_duration_type"/>
3451 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
3452 </template><purpose>Put a time type into a stream using appropriate facets. </purpose><typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
3453 <typedef name="fractional_seconds_type"><type>time_duration_type::fractional_seconds_type</type></typedef>
3454 <method-group name="public static functions">
3455 <method name="duration_put" specifiers="static"><type>void</type><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><purpose>Put time into an ostream. </purpose></method>
3456 </method-group>
3457 </class><class name="ostream_time_formatter"><template>
3458 <template-type-parameter name="time_type"/>
3459 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
3460 </template><purpose>Put a time type into a stream using appropriate facets. </purpose><typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
3461 <typedef name="date_type"><type>time_type::date_type</type></typedef>
3462 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3463 <typedef name="duration_formatter"><type><classname>ostream_time_duration_formatter</classname>&lt; time_duration_type, charT &gt;</type></typedef>
3464 <method-group name="public static functions">
3465 <method name="time_put" specifiers="static"><type>void</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><purpose>Put time into an ostream. </purpose></method>
3466 </method-group>
3467 </class><class name="ostream_time_period_formatter"><template>
3468 <template-type-parameter name="time_period_type"/>
3469 <template-type-parameter name="charT"><default>char</default></template-type-parameter>
3470 </template><purpose>Put a time period into a stream using appropriate facets. </purpose><typedef name="ostream_type"><type>std::basic_ostream&lt; charT &gt;</type></typedef>
3471 <typedef name="time_type"><type>time_period_type::point_type</type></typedef>
3472 <typedef name="time_formatter"><type><classname>ostream_time_formatter</classname>&lt; time_type, charT &gt;</type></typedef>
3473 <method-group name="public static functions">
3474 <method name="period_put" specifiers="static"><type>void</type><parameter name="tp"><paramtype>const time_period_type &amp;</paramtype></parameter><parameter name="os"><paramtype>ostream_type &amp;</paramtype></parameter><purpose>Put time into an ostream. </purpose></method>
3475 </method-group>
3476 </class>
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509 </namespace>
3510 </namespace>
3511 </header>
3512 <header name="boost/date_time/time_iterator.hpp">
3513 <namespace name="boost">
3514 <namespace name="date_time">
3515 <class name="time_itr"><template>
3516 <template-type-parameter name="time_type"/>
3517 </template><purpose>Simple time iterator skeleton class. </purpose><typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3518 <method-group name="public member functions">
3519 <method name="operator++"><type><classname>time_itr</classname> &amp;</type></method>
3520 <method name="operator--"><type><classname>time_itr</classname> &amp;</type></method>
3521 <method name="operator*"><type>time_type</type></method>
3522 <method name="operator-&gt;"><type>time_type *</type></method>
3523 <method name="operator&lt;"><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3524 <method name="operator&lt;="><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3525 <method name="operator!="><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3526 <method name="operator=="><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3527 <method name="operator&gt;"><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3528 <method name="operator&gt;="><type>bool</type><parameter name="t"><paramtype>const time_type &amp;</paramtype></parameter></method>
3529 </method-group>
3530 <constructor><parameter name="t"><paramtype>time_type</paramtype></parameter><parameter name="d"><paramtype>time_duration_type</paramtype></parameter></constructor>
3531 </class>
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564 </namespace>
3565 </namespace>
3566 </header>
3567 <header name="boost/date_time/time_parsing.hpp">
3568 <namespace name="boost">
3569 <namespace name="date_time">
3570
3571 <function name="power"><type>int_type</type><template>
3572 <template-type-parameter name="int_type"/>
3573 </template><parameter name="base"><paramtype>int_type</paramtype></parameter><parameter name="exponent"><paramtype>int_type</paramtype></parameter><purpose>computes exponential math like 2^8 =&gt; 256, only works with positive integers </purpose></function>
3574 <function name="str_from_delimited_time_duration"><type><classname>time_duration</classname></type><template>
3575 <template-type-parameter name="time_duration"/>
3576 <template-type-parameter name="char_type"/>
3577 </template><parameter name="s"><paramtype>const std::basic_string&lt; char_type &gt; &amp;</paramtype></parameter><purpose>Creates a <classname alt="boost::date_time::time_duration">time_duration</classname> object from a delimited string. </purpose><description><para>Expected format for string is "[-]h[h][:mm][:ss][.fff]". If the number of fractional digits provided is greater than the precision of the time duration type then the extra digits are truncated.</para><para>A negative duration will be created if the first character in string is a '-', all other '-' will be treated as delimiters. Accepted delimiters are "-:,.". </para></description></function>
3578 <function name="parse_delimited_time_duration"><type><classname>time_duration</classname></type><template>
3579 <template-type-parameter name="time_duration"/>
3580 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Creates a <classname alt="boost::date_time::time_duration">time_duration</classname> object from a delimited string. </purpose><description><para>Expected format for string is "[-]h[h][:mm][:ss][.fff]". If the number of fractional digits provided is greater than the precision of the time duration type then the extra digits are truncated.</para><para>A negative duration will be created if the first character in string is a '-', all other '-' will be treated as delimiters. Accepted delimiters are "-:,.". </para></description></function>
3581 <function name="split"><type>bool</type><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><parameter name="sep"><paramtype>char</paramtype></parameter><parameter name="first"><paramtype>std::string &amp;</paramtype></parameter><parameter name="second"><paramtype>std::string &amp;</paramtype></parameter><purpose>Utility function to split appart string. </purpose></function>
3582 <function name="parse_delimited_time"><type>time_type</type><template>
3583 <template-type-parameter name="time_type"/>
3584 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><parameter name="sep"><paramtype>char</paramtype></parameter></function>
3585 <function name="parse_undelimited_time_duration"><type><classname>time_duration</classname></type><template>
3586 <template-type-parameter name="time_duration"/>
3587 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Parse time duration part of an iso time of form: [-]hhmmss<ulink url="eg: 120259.123 is 12 hours, 2 min, 59 seconds, 123000 microseconds">.fff...</ulink> </purpose></function>
3588 <function name="parse_iso_time"><type>time_type</type><template>
3589 <template-type-parameter name="time_type"/>
3590 </template><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter><parameter name="sep"><paramtype>char</paramtype></parameter><purpose>Parse time string of form YYYYMMDDThhmmss where T is delimeter between date and time. </purpose></function>
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616 </namespace>
3617 </namespace>
3618 </header>
3619 <header name="boost/date_time/time_resolution_traits.hpp">
3620 <namespace name="boost">
3621 <namespace name="date_time">
3622 <struct name="time_resolution_traits_bi32_impl"><purpose>traits struct for <classname alt="boost::date_time::time_resolution_traits">time_resolution_traits</classname> implementation type </purpose><typedef name="int_type"><type>boost::int32_t</type></typedef>
3623 <typedef name="impl_type"><type>boost::int32_t</type></typedef>
3624 <method-group name="public static functions">
3625 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype>impl_type</paramtype></parameter></method>
3626 <method name="is_adapted" specifiers="static"><type>bool</type><purpose>Used to determine if implemented type is <classname alt="boost::date_time::int_adapter">int_adapter</classname> or int. </purpose></method>
3627 </method-group>
3628 </struct><struct name="time_resolution_traits_adapted32_impl"><purpose>traits struct for <classname alt="boost::date_time::time_resolution_traits">time_resolution_traits</classname> implementation type </purpose><typedef name="int_type"><type>boost::int32_t</type></typedef>
3629 <typedef name="impl_type"><type><classname>boost::date_time::int_adapter</classname>&lt; boost::int32_t &gt;</type></typedef>
3630 <method-group name="public static functions">
3631 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype><classname>impl_type</classname></paramtype></parameter></method>
3632 <method name="is_adapted" specifiers="static"><type>bool</type><purpose>Used to determine if implemented type is <classname alt="boost::date_time::int_adapter">int_adapter</classname> or int. </purpose></method>
3633 </method-group>
3634 </struct><struct name="time_resolution_traits_bi64_impl"><purpose>traits struct for <classname alt="boost::date_time::time_resolution_traits">time_resolution_traits</classname> implementation type </purpose><typedef name="int_type"><type>boost::int64_t</type></typedef>
3635 <typedef name="impl_type"><type>boost::int64_t</type></typedef>
3636 <method-group name="public static functions">
3637 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype>impl_type</paramtype></parameter></method>
3638 <method name="is_adapted" specifiers="static"><type>bool</type><purpose>Used to determine if implemented type is <classname alt="boost::date_time::int_adapter">int_adapter</classname> or int. </purpose></method>
3639 </method-group>
3640 </struct><struct name="time_resolution_traits_adapted64_impl"><purpose>traits struct for <classname alt="boost::date_time::time_resolution_traits">time_resolution_traits</classname> implementation type </purpose><typedef name="int_type"><type>boost::int64_t</type></typedef>
3641 <typedef name="impl_type"><type><classname>boost::date_time::int_adapter</classname>&lt; boost::int64_t &gt;</type></typedef>
3642 <method-group name="public static functions">
3643 <method name="as_number" specifiers="static"><type>int_type</type><parameter name="i"><paramtype><classname>impl_type</classname></paramtype></parameter></method>
3644 <method name="is_adapted" specifiers="static"><type>bool</type><purpose>Used to determine if implemented type is <classname alt="boost::date_time::int_adapter">int_adapter</classname> or int. </purpose></method>
3645 </method-group>
3646 </struct><class name="time_resolution_traits"><template>
3647 <template-type-parameter name="frac_sec_type"/>
3648 <template-nontype-parameter name="res"><type>time_resolutions</type></template-nontype-parameter>
3649 <template-nontype-parameter name="resolution_adjust"><type>#if(defined(BOOST_MSVC)&amp;&amp;(_MSC_VER&lt; 1300)) boost::int64_t</type></template-nontype-parameter>
3650 <template-nontype-parameter name="resolution_adjust"><type>#else typename frac_sec_type::int_type</type></template-nontype-parameter>
3651 <template-nontype-parameter name="frac_digits"><type>#endif unsigned short</type></template-nontype-parameter>
3652 <template-type-parameter name="var_type"><default>std::time_t</default></template-type-parameter>
3653 </template><typedef name="fractional_seconds_type"><type>frac_sec_type::int_type</type></typedef>
3654 <typedef name="tick_type"><type>frac_sec_type::int_type</type></typedef>
3655 <typedef name="impl_type"><type>frac_sec_type::impl_type</type></typedef>
3656 <typedef name="day_type"><type>var_type</type></typedef>
3657 <typedef name="hour_type"><type>var_type</type></typedef>
3658 <typedef name="min_type"><type>var_type</type></typedef>
3659 <typedef name="sec_type"><type>var_type</type></typedef>
3660 <method-group name="public static functions">
3661 <method name="as_number" specifiers="static"><type>fractional_seconds_type</type><parameter name="i"><paramtype>impl_type</paramtype></parameter></method>
3662 <method name="is_adapted" specifiers="static"><type>bool</type></method>
3663 <method name="resolution" specifiers="static"><type>time_resolutions</type></method>
3664 <method name="num_fractional_digits" specifiers="static"><type>unsigned short</type></method>
3665 <method name="res_adjust" specifiers="static"><type>fractional_seconds_type</type></method>
3666 <method name="to_tick_count" specifiers="static"><type>tick_type</type><parameter name="hours"><paramtype>hour_type</paramtype></parameter><parameter name="minutes"><paramtype>min_type</paramtype></parameter><parameter name="seconds"><paramtype>sec_type</paramtype></parameter><parameter name="fs"><paramtype>fractional_seconds_type</paramtype></parameter><purpose>Any negative argument results in a negative tick_count. </purpose></method>
3667 </method-group>
3668 <method-group name="public member functions">
3669 <method name="BOOST_STATIC_CONSTANT"><type/><parameter name=""><paramtype>boost::int64_t</paramtype></parameter><parameter name=""><paramtype>ticks_per_second</paramtype><default>resolution_adjust</default></parameter></method>
3670 <method name="BOOST_STATIC_CONSTANT"><type/><parameter name=""><paramtype>fractional_seconds_type</paramtype></parameter><parameter name=""><paramtype>ticks_per_second</paramtype><default>resolution_adjust</default></parameter></method>
3671 </method-group>
3672 </class><typedef name="milli_res"><type><classname>time_resolution_traits</classname>&lt; <classname>time_resolution_traits_adapted32_impl</classname>, milli, 1000, 3 &gt;</type></typedef>
3673 <typedef name="micro_res"><type><classname>time_resolution_traits</classname>&lt; <classname>time_resolution_traits_adapted64_impl</classname>, micro, 1000000, 6 &gt;</type></typedef>
3674 <typedef name="nano_res"><type><classname>time_resolution_traits</classname>&lt; <classname>time_resolution_traits_adapted64_impl</classname>, nano, 1000000000, 9 &gt;</type></typedef>
3675 <function name="absolute_value"><type>T</type><template>
3676 <template-type-parameter name="T"/>
3677 </template><parameter name="x"><paramtype>T</paramtype></parameter><purpose>Simple function to calculate absolute value of a numeric type. </purpose></function>
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710 </namespace>
3711 </namespace>
3712 </header>
3713 <header name="boost/date_time/time_system_counted.hpp">
3714 <namespace name="boost">
3715 <namespace name="date_time">
3716 <struct name="counted_time_rep"><template>
3717 <template-type-parameter name="config"/>
3718 </template><purpose>Time representation that uses a single integer count. </purpose><typedef name="int_type"><type>config::int_type</type></typedef>
3719 <typedef name="date_type"><type>config::date_type</type></typedef>
3720 <typedef name="impl_type"><type>config::impl_type</type></typedef>
3721 <typedef name="date_duration_type"><type>date_type::duration_type</type></typedef>
3722 <typedef name="calendar_type"><type>date_type::calendar_type</type></typedef>
3723 <typedef name="ymd_type"><type>date_type::ymd_type</type></typedef>
3724 <typedef name="time_duration_type"><type>config::time_duration_type</type></typedef>
3725 <typedef name="resolution_traits"><type>config::resolution_traits</type></typedef>
3726 <method-group name="public member functions">
3727 <method name="date" cv="const"><type>date_type</type></method>
3728 <method name="day_count" cv="const"><type>unsigned long</type></method>
3729 <method name="time_count" cv="const"><type>int_type</type></method>
3730 <method name="tod" cv="const"><type>int_type</type></method>
3731 <method name="is_pos_infinity" cv="const"><type>bool</type></method>
3732 <method name="is_neg_infinity" cv="const"><type>bool</type></method>
3733 <method name="is_not_a_date_time" cv="const"><type>bool</type></method>
3734 <method name="is_special" cv="const"><type>bool</type></method>
3735 <method name="get_rep" cv="const"><type>impl_type</type></method>
3736 </method-group>
3737 <constructor><parameter name="d"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="time_of_day"><paramtype>const time_duration_type &amp;</paramtype></parameter></constructor>
3738 <constructor specifiers="explicit"><parameter name="count"><paramtype>int_type</paramtype></parameter></constructor>
3739 <constructor specifiers="explicit"><parameter name="count"><paramtype>impl_type</paramtype></parameter></constructor>
3740 <method-group name="public static functions">
3741 <method name="frac_sec_per_day" specifiers="static"><type>int_type</type></method>
3742 </method-group>
3743 </struct><class name="counted_time_system"><template>
3744 <template-type-parameter name="time_rep"/>
3745 </template><purpose>An unadjusted time system implementation. </purpose><typedef name="time_rep_type"><type>time_rep</type></typedef>
3746 <typedef name="impl_type"><type>time_rep_type::impl_type</type></typedef>
3747 <typedef name="time_duration_type"><type>time_rep_type::time_duration_type</type></typedef>
3748 <typedef name="fractional_seconds_type"><type>time_duration_type::fractional_seconds_type</type></typedef>
3749 <typedef name="date_type"><type>time_rep_type::date_type</type></typedef>
3750 <typedef name="date_duration_type"><type>time_rep_type::date_duration_type</type></typedef>
3751 <method-group name="public static functions">
3752 <method name="unused_var" specifiers="static"><type>void</type><template>
3753 <template-type-parameter name="T"/>
3754 </template><parameter name=""><paramtype>const T &amp;</paramtype></parameter></method>
3755 <method name="get_time_rep" specifiers="static"><type>time_rep_type</type><parameter name="day"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="tod"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="dst"><paramtype>date_time::dst_flags</paramtype><default>not_dst</default></parameter></method>
3756 <method name="get_time_rep" specifiers="static"><type>time_rep_type</type><parameter name="sv"><paramtype>special_values</paramtype></parameter></method>
3757 <method name="get_date" specifiers="static"><type>date_type</type><parameter name="val"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3758 <method name="get_time_of_day" specifiers="static"><type>time_duration_type</type><parameter name="val"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3759 <method name="zone_name" specifiers="static"><type>std::string</type><parameter name=""><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3760 <method name="is_equal" specifiers="static"><type>bool</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3761 <method name="is_less" specifiers="static"><type>bool</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3762 <method name="add_days" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3763 <method name="subtract_days" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3764 <method name="subtract_time_duration" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter></method>
3765 <method name="add_time_duration" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="td"><paramtype>time_duration_type</paramtype></parameter></method>
3766 <method name="subtract_times" specifiers="static"><type>time_duration_type</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3767 </method-group>
3768 </class>
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801 </namespace>
3802 </namespace>
3803 </header>
3804 <header name="boost/date_time/time_system_split.hpp">
3805 <namespace name="boost">
3806 <namespace name="date_time">
3807 <class name="split_timedate_system"><template>
3808 <template-type-parameter name="config"/>
3809 <template-nontype-parameter name="ticks_per_second"><type>boost::int32_t</type></template-nontype-parameter>
3810 </template><purpose>An unadjusted time system implementation. </purpose><typedef name="time_rep_type"><type>config::time_rep_type</type></typedef>
3811 <typedef name="date_type"><type>config::date_type</type></typedef>
3812 <typedef name="time_duration_type"><type>config::time_duration_type</type></typedef>
3813 <typedef name="date_duration_type"><type>config::date_duration_type</type></typedef>
3814 <typedef name="int_type"><type>config::int_type</type></typedef>
3815 <typedef name="resolution_traits"><type>config::resolution_traits</type></typedef>
3816 <typedef name="wrap_int_type"><type><classname>date_time::wrapping_int</classname>&lt; int_type, INT64_C(86400)*ticks_per_second &gt;</type></typedef>
3817 <typedef name="wrap_int_type"><type><classname>date_time::wrapping_int</classname>&lt; split_timedate_system::int_type, split_timedate_system::ticks_per_day &gt;</type></typedef>
3818 <typedef name="wrap_int_type"><type><classname>date_time::wrapping_int</classname>&lt; int_type, ticks_per_day &gt;</type></typedef>
3819 <method-group name="private member functions">
3820 <method name="BOOST_STATIC_CONSTANT"><type/><parameter name=""><paramtype>int_type</paramtype></parameter><parameter name=""><paramtype>ticks_per_day</paramtype><default>INT64_C(86400)*config::tick_per_second</default></parameter></method>
3821 </method-group>
3822 <method-group name="public static functions">
3823 <method name="get_time_rep" specifiers="static"><type>time_rep_type</type><parameter name="sv"><paramtype>special_values</paramtype></parameter></method>
3824 <method name="get_time_rep" specifiers="static"><type>time_rep_type</type><parameter name="day"><paramtype>const date_type &amp;</paramtype></parameter><parameter name="tod"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name=""><paramtype>date_time::dst_flags</paramtype><default>not_dst</default></parameter></method>
3825 <method name="get_date" specifiers="static"><type>date_type</type><parameter name="val"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3826 <method name="get_time_of_day" specifiers="static"><type>time_duration_type</type><parameter name="val"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3827 <method name="zone_name" specifiers="static"><type>std::string</type><parameter name=""><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3828 <method name="is_equal" specifiers="static"><type>bool</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3829 <method name="is_less" specifiers="static"><type>bool</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3830 <method name="add_days" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3831 <method name="subtract_days" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="dd"><paramtype>const date_duration_type &amp;</paramtype></parameter></method>
3832 <method name="subtract_time_duration" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="td"><paramtype>const time_duration_type &amp;</paramtype></parameter></method>
3833 <method name="add_time_duration" specifiers="static"><type>time_rep_type</type><parameter name="base"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="td"><paramtype>time_duration_type</paramtype></parameter></method>
3834 <method name="subtract_times" specifiers="static"><type>time_duration_type</type><parameter name="lhs"><paramtype>const time_rep_type &amp;</paramtype></parameter><parameter name="rhs"><paramtype>const time_rep_type &amp;</paramtype></parameter></method>
3835 </method-group>
3836 </class>
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869 </namespace>
3870 </namespace>
3871 </header>
3872 <header name="boost/date_time/time_zone_base.hpp">
3873 <namespace name="boost">
3874 <namespace name="date_time">
3875 <class name="time_zone_base"><template>
3876 <template-type-parameter name="time_type"/>
3877 <template-type-parameter name="CharT"/>
3878 </template><purpose>Interface class for dynamic time zones. </purpose><description><para>This class represents the base interface for all timezone representations. Subclasses may provide different systems for identifying a particular zone. For example some may provide a geographical based zone construction while others may specify the offset from GMT. Another possible implementation would be to convert from POSIX timezone strings. Regardless of the construction technique, this is the interface that these time zone types must provide.</para><para>Note that this class is intended to be used as a shared resource (hence the derivation from boost::counted_base. </para></description><typedef name="char_type"><type>CharT</type></typedef>
3879 <typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
3880 <typedef name="stringstream_type"><type>std::basic_ostringstream&lt; CharT &gt;</type></typedef>
3881 <typedef name="year_type"><type>time_type::date_type::year_type</type></typedef>
3882 <typedef name="time_duration_type"><type>time_type::time_duration_type</type></typedef>
3883 <method-group name="public member functions">
3884 <method name="dst_zone_abbrev" cv="const = 0" specifiers="virtual"><type>string_type</type><purpose>String for the timezone when in daylight savings (eg: EDT) </purpose></method>
3885 <method name="std_zone_abbrev" cv="const = 0" specifiers="virtual"><type>string_type</type><purpose>String for the zone when not in daylight savings (eg: EST) </purpose></method>
3886 <method name="dst_zone_name" cv="const = 0" specifiers="virtual"><type>string_type</type><purpose>String for the timezone when in daylight savings (eg: Eastern Daylight Time) </purpose></method>
3887 <method name="std_zone_name" cv="const = 0" specifiers="virtual"><type>string_type</type><purpose>String for the zone when not in daylight savings (eg: Eastern Standard Time) </purpose></method>
3888 <method name="has_dst" cv="const = 0" specifiers="virtual"><type>bool</type><purpose>True if zone uses daylight savings adjustments otherwise false. </purpose></method>
3889 <method name="dst_local_start_time" cv="const = 0" specifiers="virtual"><type>time_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter><purpose>Local time that DST starts – undefined if has_dst is false. </purpose></method>
3890 <method name="dst_local_end_time" cv="const = 0" specifiers="virtual"><type>time_type</type><parameter name="y"><paramtype>year_type</paramtype></parameter><purpose>Local time that DST ends – undefined if has_dst is false. </purpose></method>
3891 <method name="base_utc_offset" cv="const = 0" specifiers="virtual"><type>time_duration_type</type><purpose>Base offset from UTC for zone (eg: -07:30:00) </purpose></method>
3892 <method name="dst_offset" cv="const = 0" specifiers="virtual"><type>time_duration_type</type><purpose>Adjustment forward or back made while DST is in effect. </purpose></method>
3893 <method name="to_posix_string" cv="const = 0" specifiers="virtual"><type>string_type</type><purpose>Returns a POSIX time_zone string for this object. </purpose></method>
3894 </method-group>
3895 <constructor/>
3896 <destructor/>
3897 </class><class name="dst_adjustment_offsets"><template>
3898 <template-type-parameter name="time_duration_type"/>
3899 </template><purpose>Structure which holds the time offsets associated with daylight savings time. </purpose><description><para>
3900 </para></description><data-member name="dst_adjust_"><type>time_duration_type</type><purpose>Amount DST adjusts the clock eg: plus one hour. </purpose></data-member>
3901 <data-member name="dst_start_offset_"><type>time_duration_type</type><purpose>Time past midnight on start transition day that dst starts. </purpose></data-member>
3902 <data-member name="dst_end_offset_"><type>time_duration_type</type><purpose>Time past midnight on end transition day that dst ends. </purpose></data-member>
3903 <method-group name="public member functions">
3904 </method-group>
3905 <constructor><parameter name="dst_adjust"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="dst_start_offset"><paramtype>const time_duration_type &amp;</paramtype></parameter><parameter name="dst_end_offset"><paramtype>const time_duration_type &amp;</paramtype></parameter></constructor>
3906 </class>
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939 </namespace>
3940 </namespace>
3941 </header>
3942 <header name="boost/date_time/time_zone_names.hpp">
3943 <namespace name="boost">
3944 <namespace name="date_time">
3945 <struct name="default_zone_names"><template>
3946 <template-type-parameter name="CharT"/>
3947 </template><typedef name="char_type"><type>CharT</type></typedef>
3948 <data-member name="standard_name" specifiers="static"><type>const char_type</type></data-member>
3949 <data-member name="standard_abbrev" specifiers="static"><type>const char_type</type></data-member>
3950 <data-member name="non_dst_identifier" specifiers="static"><type>const char_type</type></data-member>
3951 </struct><class name="time_zone_names_base"><template>
3952 <template-type-parameter name="CharT"/>
3953 </template><purpose>Base type that holds various string names for timezone output. </purpose><description><para>Class that holds various types of strings used for timezones. For example, for the western United States there is the full name: Pacific Standard Time and the abbreviated name: PST. During daylight savings there are additional names: Pacific Daylight Time and PDT. CharT Allows class to support different character types </para></description><typedef name="string_type"><type>std::basic_string&lt; CharT &gt;</type></typedef>
3954 <method-group name="public member functions">
3955 <method name="dst_zone_abbrev" cv="const"><type>string_type</type></method>
3956 <method name="std_zone_abbrev" cv="const"><type>string_type</type></method>
3957 <method name="dst_zone_name" cv="const"><type>string_type</type></method>
3958 <method name="std_zone_name" cv="const"><type>string_type</type></method>
3959 </method-group>
3960 <constructor/>
3961 <constructor><parameter name="std_zone_name_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="std_zone_abbrev_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="dst_zone_name_str"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="dst_zone_abbrev_str"><paramtype>const string_type &amp;</paramtype></parameter></constructor>
3962 </class>
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995 </namespace>
3996 </namespace>
3997 </header>
3998 <header name="boost/date_time/tz_db_base.hpp">
3999 <namespace name="boost">
4000 <namespace name="date_time">
4001 <class name="data_not_accessible"><inherit access="public">logic_error</inherit><purpose>Exception thrown when tz database cannot locate requested data file. </purpose><method-group name="public member functions">
4002 </method-group>
4003 <constructor/>
4004 <constructor><parameter name="filespec"><paramtype>const std::string &amp;</paramtype></parameter></constructor>
4005 </class><class name="bad_field_count"><inherit access="public">out_of_range</inherit><purpose>Exception thrown when tz database locates incorrect field structure in data file. </purpose><method-group name="public member functions">
4006 </method-group>
4007 <constructor><parameter name="s"><paramtype>const std::string &amp;</paramtype></parameter></constructor>
4008 </class><class name="tz_db_base"><template>
4009 <template-type-parameter name="time_zone_type"/>
4010 <template-type-parameter name="rule_type"/>
4011 </template><purpose>Creates a database of time_zones from csv datafile. </purpose><description><para>The csv file containing the zone_specs used by the <classname alt="boost::date_time::tz_db_base">tz_db_base</classname> is intended to be customized by the library user. When customizing this file (or creating your own) the file must follow a specific format.</para><para>This first line is expected to contain column headings and is therefore not processed by the <classname alt="boost::date_time::tz_db_base">tz_db_base</classname>.</para><para>Each record (line) must have eleven fields. Some of those fields can be empty. Every field (even empty ones) must be enclosed in double-quotes. Ex: <programlisting language="c++">"America/Phoenix" &lt;- string enclosed in quotes
4012 "" &lt;- empty field
4013 </programlisting></para><para>Some fields represent a length of time. The format of these fields must be: <programlisting language="c++">"{+|-}hh:mm[:ss]" &lt;- length-of-time format
4014 </programlisting> Where the plus or minus is mandatory and the seconds are optional.</para><para>Since some time zones do not use daylight savings it is not always necessary for every field in a zone_spec to contain a value. All zone_specs must have at least ID and GMT offset. Zones that use daylight savings must have all fields filled except: STD ABBR, STD NAME, DST NAME. You should take note that DST ABBR is mandatory for zones that use daylight savings (see field descriptions for further details).</para><para>******* Fields and their description/details *********</para><para>ID: Contains the identifying string for the zone_spec. Any string will do as long as it's unique. No two ID's can be the same.</para><para>STD ABBR: STD NAME: DST ABBR: DST NAME: These four are all the names and abbreviations used by the time zone being described. While any string will do in these fields, care should be taken. These fields hold the strings that will be used in the output of many of the local_time classes. Ex: <programlisting language="c++">time_zone nyc = tz_db.time_zone_from_region("America/New_York");
4015 local_time ny_time(date(2004, Aug, 30), IS_DST, nyc);
4016 cout &lt;&lt; ny_time.to_long_string() &lt;&lt; endl;
4017 // 2004-Aug-30 00:00:00 Eastern Daylight Time
4018 cout &lt;&lt; ny_time.to_short_string() &lt;&lt; endl;
4019 // 2004-Aug-30 00:00:00 EDT
4020 </programlisting></para><para>NOTE: The exact format/function names may vary - see local_time documentation for further details.</para><para>GMT offset: This is the number of hours added to utc to get the local time before any daylight savings adjustments are made. Some examples are: America/New_York offset -5 hours, &amp; Africa/Cairo offset +2 hours. The format must follow the length-of-time format described above.</para><para>DST adjustment: The amount of time added to gmt_offset when daylight savings is in effect. The format must follow the length-of-time format described above.</para><para>DST Start Date rule: This is a specially formatted string that describes the day of year in which the transition take place. It holds three fields of it's own, separated by semicolons. The first field indicates the "nth" weekday of the month. The possible values are: 1 (first), 2 (second), 3 (third), 4 (fourth), 5 (fifth), and -1 (last). The second field indicates the day-of-week from 0-6 (Sun=0). The third field indicates the month from 1-12 (Jan=1).</para><para>Examples are: "-1;5;9"="Last Friday of September", "2;1;3"="Second Monday of March"</para><para>Start time: Start time is the number of hours past midnight, on the day of the start transition, the transition takes place. More simply put, the time of day the transition is made (in 24 hours format). The format must follow the length-of-time format described above with the exception that it must always be positive.</para><para>DST End date rule: See DST Start date rule. The difference here is this is the day daylight savings ends (transition to STD).</para><para>End time: Same as Start time. </para></description><typedef name="char_type"><type>char</type></typedef>
4021 <typedef name="time_zone_base_type"><type>time_zone_type::base_type</type></typedef>
4022 <typedef name="time_duration_type"><type>time_zone_type::time_duration_type</type></typedef>
4023 <typedef name="time_zone_names"><type><classname>time_zone_names_base</classname>&lt; char_type &gt;</type></typedef>
4024 <typedef name="dst_adjustment_offsets"><type><classname>boost::date_time::dst_adjustment_offsets</classname>&lt; time_duration_type &gt;</type></typedef>
4025 <typedef name="string_type"><type>std::basic_string&lt; char_type &gt;</type></typedef>
4026 <method-group name="public member functions">
4027 <method name="load_from_stream"><type>void</type><parameter name="in"><paramtype>std::istream &amp;</paramtype></parameter><purpose>Process csv data file, may throw exceptions. </purpose><description><para>May throw <classname alt="boost::date_time::bad_field_count">bad_field_count</classname> exceptions </para></description></method>
4028 <method name="load_from_file"><type>void</type><parameter name="pathspec"><paramtype>const std::string &amp;</paramtype></parameter><purpose>Process csv data file, may throw exceptions. </purpose><description><para>May throw <classname alt="boost::date_time::data_not_accessible">data_not_accessible</classname>, or <classname alt="boost::date_time::bad_field_count">bad_field_count</classname> exceptions </para></description></method>
4029 <method name="add_record"><type>bool</type><parameter name="region"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="tz"><paramtype>boost::shared_ptr&lt; time_zone_base_type &gt;</paramtype></parameter><purpose>returns true if record successfully added to map </purpose><description><para>Takes a region name in the form of "America/Phoenix", and a time_zone object for that region. The id string must be a unique name that does not already exist in the database. </para></description></method>
4030 <method name="time_zone_from_region" cv="const"><type>boost::shared_ptr&lt; time_zone_base_type &gt;</type><parameter name="region"><paramtype>const string_type &amp;</paramtype></parameter><purpose>Returns a time_zone object built from the specs for the given region. </purpose><description><para>Returns a time_zone object built from the specs for the given region. If region does not exist a local_time::record_not_found exception will be thrown </para></description></method>
4031 <method name="region_list" cv="const"><type>std::vector&lt; std::string &gt;</type><purpose>Returns a vector of strings holding the time zone regions in the database. </purpose></method>
4032 </method-group>
4033 <constructor><purpose>Constructs an empty database. </purpose></constructor>
4034 <method-group name="private member functions">
4035 <method name="parse_rules" cv="const"><type>rule_type *</type><parameter name="sr"><paramtype>const string_type &amp;</paramtype></parameter><parameter name="er"><paramtype>const string_type &amp;</paramtype></parameter><purpose>parses rule specs for transition day rules </purpose></method>
4036 <method name="get_week_num" cv="const"><type>week_num</type><parameter name="nth"><paramtype>int</paramtype></parameter><purpose>helper function for parse_rules() </purpose></method>
4037 <method name="split_rule_spec" cv="const"><type>void</type><parameter name="nth"><paramtype>int &amp;</paramtype></parameter><parameter name="d"><paramtype>int &amp;</paramtype></parameter><parameter name="m"><paramtype>int &amp;</paramtype></parameter><parameter name="rule"><paramtype>string_type</paramtype></parameter><purpose>splits the [start|end]_date_rule string into 3 ints </purpose></method>
4038 <method name="parse_string"><type>bool</type><parameter name="s"><paramtype>string_type &amp;</paramtype></parameter><purpose>Take a line from the csv, turn it into a time_zone_type. </purpose><description><para>Take a line from the csv, turn it into a time_zone_type, and add it to the map. Zone_specs in csv file are expected to have eleven fields that describe the time zone. Returns true if zone_spec successfully added to database </para></description></method>
4039 </method-group>
4040 </class>
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073 </namespace>
4074 </namespace>
4075 </header>
4076 <header name="boost/date_time/wrapping_int.hpp">
4077 <namespace name="boost">
4078 <namespace name="date_time">
4079 <class name="wrapping_int"><template>
4080 <template-type-parameter name="int_type_"/>
4081 <template-nontype-parameter name="wrap_val"><type>int_type_</type></template-nontype-parameter>
4082 </template><purpose>A wrapping integer used to support time durations (WARNING: only instantiate with a signed type) </purpose><description><para>In composite date and time types this type is used to wrap at the day boundary. Ex: A wrapping_int&lt;short, 10&gt; will roll over after nine, and roll under below zero. This gives a range of [0,9]</para><para>NOTE: it is strongly recommended that <classname alt="boost::date_time::wrapping_int2">wrapping_int2</classname> be used instead of <classname alt="boost::date_time::wrapping_int">wrapping_int</classname> as <classname alt="boost::date_time::wrapping_int">wrapping_int</classname> is to be depricated at some point soon.</para><para>Also Note that warnings will occur if instantiated with an unsigned type. Only a signed type should be used! </para></description><typedef name="int_type"><type>int_type_</type></typedef>
4083 <method-group name="public static functions">
4084 <method name="wrap_value" specifiers="static"><type>int_type</type></method>
4085 </method-group>
4086 <method-group name="public member functions">
4087 <method name="as_int" cv="const"><type>int_type</type><purpose>Explicit converion method. </purpose></method>
4088 <method name="conversion-operator" cv="const"><type>int_type</type></method>
4089 <method name="add"><type>IntT</type><template>
4090 <template-type-parameter name="IntT"/>
4091 </template><parameter name="v"><paramtype>IntT</paramtype></parameter><purpose>Add, return number of wraps performed. </purpose><description><para>The sign of the returned value will indicate which direction the wraps went. Ex: add a negative number and wrapping under could occur, this would be indicated by a negative return value. If wrapping over took place, a positive value would be returned </para></description></method>
4092 <method name="subtract"><type>IntT</type><template>
4093 <template-type-parameter name="IntT"/>
4094 </template><parameter name="v"><paramtype>IntT</paramtype></parameter><purpose>Subtract will return '+d' if wrapping under took place ('d' is the number of wraps) </purpose><description><para>The sign of the returned value will indicate which direction the wraps went (positive indicates wrap under, negative indicates wrap over). Ex: subtract a negative number and wrapping over could occur, this would be indicated by a negative return value. If wrapping under took place, a positive value would be returned. </para></description></method>
4095 </method-group>
4096 <constructor><parameter name="v"><paramtype>int_type</paramtype></parameter><purpose>Add, return true if wrapped. </purpose></constructor>
4097 <method-group name="private member functions">
4098 <method name="calculate_wrap"><type>IntT</type><template>
4099 <template-type-parameter name="IntT"/>
4100 </template><parameter name="wrap"><paramtype>IntT</paramtype></parameter></method>
4101 </method-group>
4102 </class><class name="wrapping_int2"><template>
4103 <template-type-parameter name="int_type_"/>
4104 <template-nontype-parameter name="wrap_min"><type>int_type_</type></template-nontype-parameter>
4105 <template-nontype-parameter name="wrap_max"><type>int_type_</type></template-nontype-parameter>
4106 </template><purpose>A wrapping integer used to wrap around at the top (WARNING: only instantiate with a signed type) </purpose><description><para>Bad name, quick impl to fix a bug – fix later!! This allows the wrap to restart at a value other than 0. </para></description><typedef name="int_type"><type>int_type_</type></typedef>
4107 <method-group name="public static functions">
4108 <method name="wrap_value" specifiers="static"><type>int_type</type></method>
4109 <method name="min_value" specifiers="static"><type>int_type</type></method>
4110 </method-group>
4111 <method-group name="public member functions">
4112 <method name="as_int" cv="const"><type>int_type</type><purpose>Explicit converion method. </purpose></method>
4113 <method name="conversion-operator" cv="const"><type>int_type</type></method>
4114 <method name="add"><type>IntT</type><template>
4115 <template-type-parameter name="IntT"/>
4116 </template><parameter name="v"><paramtype>IntT</paramtype></parameter><purpose>Add, return number of wraps performed. </purpose><description><para>The sign of the returned value will indicate which direction the wraps went. Ex: add a negative number and wrapping under could occur, this would be indicated by a negative return value. If wrapping over took place, a positive value would be returned </para></description></method>
4117 <method name="subtract"><type>IntT</type><template>
4118 <template-type-parameter name="IntT"/>
4119 </template><parameter name="v"><paramtype>IntT</paramtype></parameter><purpose>Subtract will return '-d' if wrapping under took place ('d' is the number of wraps) </purpose><description><para>The sign of the returned value will indicate which direction the wraps went. Ex: subtract a negative number and wrapping over could occur, this would be indicated by a positive return value. If wrapping under took place, a negative value would be returned </para></description></method>
4120 </method-group>
4121 <constructor><parameter name="v"><paramtype>int_type</paramtype></parameter><description><para>If initializing value is out of range of [wrap_min, wrap_max], value will be initialized to closest of min or max </para></description></constructor>
4122 <method-group name="private member functions">
4123 <method name="calculate_wrap"><type>IntT</type><template>
4124 <template-type-parameter name="IntT"/>
4125 </template><parameter name="wrap"><paramtype>IntT</paramtype></parameter></method>
4126 </method-group>
4127 </class>
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160 </namespace>
4161 </namespace>
4162 </header>
4163 <header name="boost/date_time/year_month_day.hpp">
4164 <namespace name="boost">
4165 <namespace name="date_time">
4166 <struct name="year_month_day_base"><template>
4167 <template-type-parameter name="YearType"/>
4168 <template-type-parameter name="MonthType"/>
4169 <template-type-parameter name="DayType"/>
4170 </template><purpose>Allow rapid creation of ymd triples of different types. </purpose><typedef name="year_type"><type>YearType</type></typedef>
4171 <typedef name="month_type"><type>MonthType</type></typedef>
4172 <typedef name="day_type"><type>DayType</type></typedef>
4173 <data-member name="year"><type>YearType</type></data-member>
4174 <data-member name="month"><type>MonthType</type></data-member>
4175 <data-member name="day"><type>DayType</type></data-member>
4176 <method-group name="public member functions">
4177 </method-group>
4178 <constructor><parameter name="year"><paramtype>YearType</paramtype></parameter><parameter name="month"><paramtype>MonthType</paramtype></parameter><parameter name="day"><paramtype>DayType</paramtype></parameter><purpose>A basic constructor. </purpose></constructor>
4179 </struct>
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212 </namespace>
4213 </namespace>
4214 </header>
4215 </library-reference>