Howard Hinnant
c110f40e76
Expose a list<tzdb>
...
* Existing API always accesses the front of the list.
* Add locate_zone and current_zone member functions to tzdb.
* reload_tzdb() pushes a new database to the front of the list.
* get_tzdb_list() exposes the list<tzdb>&.
2017-07-17 23:05:16 -04:00
Howard Hinnant
0f7fd4a04e
Remove errant -> from zoned_time(const time_zone* z) spec
2017-07-07 10:10:05 -04:00
Howard Hinnant
4477981840
Update revision history
2017-07-06 21:08:31 -04:00
Howard Hinnant
161cc2b7fe
Add deduction guides to zoned_time
...
* Encourage seconds precision or finer.
2017-07-06 21:05:19 -04:00
Howard Hinnant
9264a21e1e
Update Windows build instructions:
...
* DATE_BUILD_LIB
* NOMINMAX
2017-07-03 16:58:33 -04:00
Howard Hinnant
d5951c5476
Pass string_view by value
2017-06-30 12:02:30 -04:00
Howard Hinnant
2b100280c0
Improve spec for year_month - year_month
2017-06-29 21:33:43 -04:00
Howard Hinnant
2b55bdb2e4
Rewrite in terms of string_view
2017-06-29 21:19:50 -04:00
Howard Hinnant
cd888b2928
Tighten up year_month_weekday and year_month_weekday_last:
...
* conversions to sys_days.
2017-06-29 21:06:53 -04:00
Howard Hinnant
609dd49934
Add zoned_time default constructor and,
...
refine conversion from calendar types to sys_days and local_days.
2017-06-27 22:15:45 -04:00
Howard Hinnant
241551dd6c
Allow day overflow in year_month_day to sys_days conversion
2017-06-27 14:08:02 -04:00
Howard Hinnant
8591ae062c
Tighten up year spec:
...
* Define exactly how leap years are computed to avoid ambiguity.
* Define precise values for year::min and year::max which correspond
to the C minimal limits for short.
* Rewrite year::ok() in terms of min and max.
2017-06-27 13:40:38 -04:00
Howard Hinnant
9a7b301507
Give zoned_time a default constructor
2017-06-26 21:19:09 -04:00
Howard Hinnant
b8c749227a
Added issue concerning zoned_time default constructor.
2017-06-19 20:36:41 -04:00
Howard Hinnant
0f4737aeaa
Initial commit of d0355r4.html
2017-06-19 20:32:31 -04:00
Howard Hinnant
047da3548e
Change constraint on format functions
...
* For the two format functions dependent upon Alloc, constrain against
basic_ostringstream<charT, traits, Alloc> instead of
basic_ostream<charT, traits>.
2017-06-18 12:16:27 -04:00
Howard Hinnant
ddfaabea00
Reordered template parameter list in several places
...
* Make consistent with function argument list order.
2017-06-18 12:10:12 -04:00
Howard Hinnant
f8f2c9db10
Add paragraph to [time.parse] concerning failbit
...
* The entire format string must be parsed, else failbit gets set.
2017-06-18 11:55:34 -04:00
Howard Hinnant
ed91190978
Refer to ios_base::failbit, not failbit
2017-06-18 11:49:25 -04:00
Howard Hinnant
f62ab2a2e0
Make constexpr literals inline
...
* Consistent with P0607R0.
2017-06-18 11:43:53 -04:00
Howard Hinnant
6fcb43311f
Remove spurious 'class' from operator<< in many places.
2017-06-18 11:32:42 -04:00
Howard Hinnant
5d53bd2244
Fix missing template parameters in zoned_time operator<<
2017-06-18 11:28:09 -04:00
Howard Hinnant
60127222cd
Remove spurious Duration template parameter
...
* From to_stream and from_stream.
* This was just a copy/paste error.
2017-06-18 11:16:48 -04:00
Howard Hinnant
59d8931136
Correct the return type of to_file_time(const sys_time<Duration>& t)
...
* The mapping between sys_time and file_time can occur at precisions
coarser than a second because the only anticipated difference
between these clocks is the epoch, and not the inclusion of leap
seconds.
2017-06-18 10:53:45 -04:00
Howard Hinnant
e7dd17e572
Remove noexcept from to_file_time
2017-06-17 14:44:28 -04:00
Howard Hinnant
a83b047ef9
Make file_clock::now() noexcept
2017-06-17 13:30:36 -04:00
Howard Hinnant
a6c4c17e9a
Remove noexcept from to_XXX_time conversion functions
...
* The Duration copy might throw.
2017-06-17 13:28:43 -04:00
Howard Hinnant
4f24af489c
Make wide string literals in to_stream
2017-06-17 13:22:49 -04:00
Howard Hinnant
87620f4d1f
Make to_stream and from_stream return a stream reference
2017-06-17 13:12:27 -04:00
Howard Hinnant
8b51803d7b
Minor cleanup in is_clock
2017-06-17 10:34:54 -04:00
Howard Hinnant
7ffdc2450a
Reword is_clock and add is_clock_v
2017-06-17 10:28:00 -04:00
Howard Hinnant
8c34cf1e8f
Add link to reference 1
2017-06-17 00:00:03 -04:00
Howard Hinnant
5bc5a7f0bb
Fill out link specification
2017-06-16 21:58:58 -04:00
Howard Hinnant
34e83bcf84
Fill out leaps specification
2017-06-16 21:47:54 -04:00
Howard Hinnant
09f16d53a2
Remove note in [thread.req.paramname]
2017-06-16 15:06:45 -04:00
Howard Hinnant
50c0111980
Improve wording in [thread.req.paramname]
2017-06-16 14:53:32 -04:00
Howard Hinnant
ff07f87b5b
Run through spell checker
2017-06-16 13:35:13 -04:00
Howard Hinnant
27410b5095
Initial draft of D0355R3
2017-06-16 13:22:30 -04:00
Howard Hinnant
acf922d4ba
Set failbit instead of throw within to_stream
...
* This is for consistency with other std streaming operations.
2017-06-12 21:03:01 -04:00
Howard Hinnant
e29fdf3374
Document USE_OS_TZDB.
2017-06-04 21:44:45 -04:00
Howard Hinnant
81b6367e98
Tweak white space parsing rules (again):
...
* White space matches zero or more white space characters.
* %n matches one white space character.
* %t matches zero or one white space characters.
2017-05-07 15:25:19 -04:00
Howard Hinnant
6618a2d3a7
Clarify how from_stream handles whitespace.
2017-05-04 16:32:22 -04:00
Howard Hinnant
b83f3412d0
Move chrono_io.h functionality into date.h.
2017-04-13 21:02:00 -04:00
Howard Hinnant
0dd1d499ae
Restrict parse of %Z to valid timezone names and abbrev.
2017-04-13 14:23:42 -04:00
Howard Hinnant
ea8a24504d
Do not change time_point of an invalid date is parsed.
2017-04-13 14:17:04 -04:00
Howard Hinnant
c036ef54bd
Update %y documentation to specify implicit century.
2017-04-03 12:16:10 -04:00
Howard Hinnant
c10b729273
Rewrite of the to_stream/format/from_stream/parse docs:
...
* The bulk of the description is moved from tz.html to date.html.
* The format and parse flags are now described in detail, instead of
implicitly relying on the C and POSIX specs. This gives me room
to specify a few corner cases that are either under-specified in
the official specs, or to add extensions.
* The from_stream / to_stream specifications are now located with
each specific type that implements them. This allows more detailed
documentation as to how each type interacts with the from_stream /
to_stream system.
* The format and parse functions are now more clearly separated from
to_stream and from_stream, and are documented to be nothing more
than syntax sugar on top of any type that choses to implement
to_stream or from_stream.
2017-04-01 22:48:54 -04:00
Howard Hinnant
82c6d6a3a4
Enable parse and format for more types:
...
* year
* month
* day
* weekday
* year_month
* month_day
2017-03-25 17:45:39 -04:00
Howard Hinnant
f3b61aab48
Document set_install.
2017-03-22 22:52:07 -04:00
Howard Hinnant
c12319552a
Add from_stream
2017-03-02 13:17:01 -10:00