Commit Graph
152 Commits
Author SHA1 Message Date
Howard Hinnant 0543e00b88 Clarify that year represents the proleptic Gregorian calendar
* Uses year{0} and negative years as opposed to AD/BC.
2018-06-03 14:03:29 -04:00
Howard Hinnant 4358ea7b6e [API BREAKING] Remove conversion from weekday to unsigned
* There has been a great deal of anguish over the encoding of
  weekdays:  whether [0, 6] maps to [Sunday, Saturday] or
  [1, 7] maps to [Monday, Sunday].  This commit attempts
  to address that issue, but will break a small amount of
  code at compile-time.  See below on how to fix that.

* The weekday constructor used to accept [0, 6] to represent
  [Sunday, Saturday].  It now accepts [0, 7] to represent
  [Sunday, Saturday] with both 0 and 7 mapping to Sunday.

* The conversion from weekday to unsigned has been removed.

* To convert a weekday to unsigned replace:

      auto u = unsigned{wd};

  with:

      auto u = (wd - Sunday).count();

  This maps [Sunday, Saturday] to [0, 6], which is the
  C/POSIX mapping.  If you prefer the ISO mapping
  ([Monday, Sunday] -> [1, 7]), then do:

      auto u = (wd - Monday).count() + 1;
2018-06-02 22:55:35 -04:00
Howard Hinnant dc217667ef Change names of weekdays and months:
* sun to Sunday, etc.
2018-06-02 22:04:02 -04:00
Howard Hinnant c842fd0a19 Clarify is_leap_second 2018-03-23 09:29:19 -04:00
Howard Hinnant f4639bde96 Document is_leap_second. 2018-03-22 20:52:53 -04:00
Howard Hinnant 0343c68812 Address reviwer comments 2018-03-16 14:33:26 -04:00
Howard Hinnant 03b27e0875 Address reviewer comments 2018-03-16 10:56:23 -04:00
Howard Hinnant a22227a1c3 Address reviewer comments 2018-03-16 08:17:29 -04:00
Howard Hinnant fad8bb11bd Rev version 2018-03-16 06:48:27 -04:00
Howard Hinnant 1a399845f0 Initial commit for d0355r7 2018-03-16 06:47:20 -04:00
Howard Hinnant 98c37dd3ee Address reviewer comments 2018-03-15 16:09:16 -04:00
Howard Hinnant b824f98305 Address reviewer comments 2018-03-15 11:06:04 -04:00
Howard Hinnant 1690090d4e Address reviewer comments 2018-03-15 10:14:26 -04:00
Howard Hinnant 683f294f42 d0355r6 2018-03-14 22:45:07 -04:00
Howard Hinnant e5ac158f0f Make the parsing of minutes optional under the flags %z 2018-03-03 11:56:22 -05:00
Howard Hinnant e87abb9125 Remove remote_install and remote_download from synopsis 2018-02-11 16:48:49 -05:00
Howard Hinnant e30c3f24b8 Add missing constexpr in many places 2018-01-07 14:19:36 -05:00
Howard Hinnant fb048ec928 Add -lole32 to mingw installation instructions 2017-12-26 15:21:01 -05:00
Howard Hinnant f3647d3e6c Remove references to strftime 2017-12-26 15:20:42 -05:00
Howard Hinnant d6ae81acb3 Correct "double %Ez" type-o, two places. 2017-12-04 10:11:28 -05:00
Howard Hinnant 16c5f5885f Add clock_cast 2017-11-26 20:45:20 -05:00
Howard Hinnant 632d115812 Add clock_cast documentation 2017-11-26 13:51:38 -05:00
Howard Hinnant a2261d3a1e Fix misspellings 2017-11-07 10:42:05 -07:00
Howard Hinnant 739dd1ee51 Replace undefined behavior with unspecified behavior
In the following places:

*  In [time.calendar]
*  In date.html
2017-11-03 13:18:51 -04:00
Howard Hinnant 0b16e765a3 Allow zoned_time conversion among different TimeZonePtr types 2017-10-28 18:18:31 -04:00
Howard Hinnant 20fb6af497 Specify exception constructors
* For nonexistent_local_time and ambiguous_local_time.
* Simplify the constructors.
* Make these exceptions usable for custom time zones.
2017-10-24 12:13:13 -04:00
Howard Hinnant b3a55312ce Update links to new directory structure 2017-10-16 09:00:40 -04:00
Howard Hinnant 7957b976bc Removed remote_download and remote_install.
* The implementation is now responsible for supplying
  run-time time zone database updates.
2017-10-15 14:26:27 -04:00
Howard Hinnant 3370dab0ed to_stream sets failbit if required to supply a bad name:
* for an invalid month
* for an invalid weekday
2017-10-15 13:55:01 -04:00
Howard Hinnant f00a77882b Update "Changes since" 2017-10-14 20:51:20 -04:00
Howard Hinnant 78c120f74a Have format set exceptions(failbit | badbit)
*  Be sure if something bad happens under the hood it is not silently
   swallowed.
2017-10-14 20:44:16 -04:00
Howard Hinnant 264fd7c62a Add reference to fmt proposal (P0645) 2017-10-14 12:56:21 -04:00
Howard Hinnant bc233c5620 Update examples to reflect new directory structure 2017-10-05 16:04:56 -04:00
Howard Hinnant 1e664d221f Correct some html 2017-09-30 16:13:06 -04:00
Howard Hinnant ed7ed4534d Document get_tzdb_list() 2017-09-30 15:58:29 -04:00
Howard Hinnant 0d7367dbf8 Rename TZ_DB to tzdb
* Bring into alignment with proposal
2017-09-30 14:49:38 -04:00
Howard Hinnant cb7e2e3ced Document custom time zone capabilities 2017-09-16 14:12:30 -04:00
Howard Hinnant 2f8d22b5a0 Fix minor typeos 2017-09-16 14:12:13 -04:00
Howard Hinnant d404599ff5 Introduce the ONLY_C_LOCALE
*Eliminates dependance on on the time_get and time_put facets.
2017-08-18 22:57:29 -04:00
Howard Hinnant b639ed5332 Hard code year::min(), year::max() to [-32767, 32767]
* When year < 0, -year > 0 (always).
* These are the minimal limits C places on short.
* Reserving -32768 is useful in the implementation.
2017-08-15 12:40:03 -04:00
Howard Hinnant 444fa15aa7 Minor clarifications and updates 2017-08-13 22:27:21 -04:00
Howard Hinnant 28fa15c0ae Template zoned_time on TimeZonePtr 2017-08-12 22:32:35 -04:00
Howard Hinnant 4ef96efa94 Make the database list a singly linked list with an atomic head 2017-08-12 19:05:21 -04:00
Howard Hinnant 5a82cda0a5 Merge branch 'gh-pages' of github.com:HowardHinnant/date into gh-pages 2017-08-03 18:12:58 -04:00
Howard Hinnant 597b6e03ce Give weekday_indexed a defaulted default constructor. 2017-07-27 21:31:19 -04:00
Howard Hinnant f8c3c1ae04 Make from_stream and to_stream customization points 2017-07-27 21:27:14 -04:00
Tony Van Eerd 9fcf01e9cc TZ_DB -> tzdb, and fix html bracket 2017-07-18 16:38:03 -04:00
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