1 /**
2  * Boost Software License - Version 1.0 - August 17th, 2003
3  *
4  * Permission is hereby granted, free of charge, to any person or organization
5  * obtaining a copy of the software and accompanying documentation covered by
6  * this license (the "Software") to use, reproduce, display, distribute,
7  * execute, and transmit the Software, and to prepare derivative works of the
8  * Software, and to permit third-parties to whom the Software is furnished to
9  * do so, all subject to the following:
10  *
11  * The copyright notices in the Software and this entire statement, including
12  * the above license grant, this restriction and the following disclaimer,
13  * must be included in all copies of the Software, in whole or in part, and
14  * all derivative works of the Software, unless such copies or derivative
15  * works are solely in the form of machine-executable object code generated by
16  * a source language processor.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
21  * SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
22  * FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
23  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24  * DEALINGS IN THE SOFTWARE.
25  */
26 
27 module dateparser.parseresult;
28 
29 import std.datetime;
30 import std.typecons;
31 
32 package:
33 
34 struct ParseResult
35 {
36     bool badData = false;
37     Nullable!(int, int.min) year;
38     Nullable!(int, int.min) month;
39     Nullable!(int, int.min) day;
40     Nullable!(int, int.min) weekday;
41     Nullable!(int, int.min) hour;
42     Nullable!(int, int.min) minute;
43     Nullable!(int, int.min) second;
44     Nullable!(int, int.min) microsecond;
45     Nullable!(int, int.min) tzoffset;
46     Nullable!(int, int.min) ampm;
47     bool centurySpecified;
48     string tzname;
49     Nullable!(SysTime) shortcutResult;
50     Nullable!(TimeOfDay) shortcutTimeResult;
51 }