aboutsummaryrefslogtreecommitdiff
path: root/libraries/hinnant-date/README
blob: fa21b3b670c59658e510f6a6a9ad8e91a9fa7d50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
This is actually several separate C++11/C++14 libraries:

 - date.h is a header-only library which builds upon <chrono>. 
   It adds some new duration types, and new time_point types. It 
   also adds field types such as year_month_day which is a 
   struct {year, month, day}. And it provides convenient means 
   to convert between the field types and the time_point types. 
    
 - tz.h / tz.cpp are a timezone library built on top of the 
   date.h library. This timezone library is a complete parser 
   of the IANA timezone database. It provides for an easy way to 
   access all of the data in this database, using the types from 
   date.h and <chrono>. The IANA database also includes data 
   on leap seconds, and this library provides utilities to compute 
   with that information as well. 

 - chrono_io.h is a header-only library for streaming out chrono 
   durations.

 - iso_week.h is a header-only library built on top of the 
   date.h library which implements the ISO week date calendar. 

 - julian.h is a header-only library built on top of the date.h 
   library which implements a proleptic Julian calendar which is 
   fully interoperable with everything above. 

 - islamic.h is a header-only library built on top of the 
   date.h library which implements a proleptic Islamic calendar 
   which is fully interoperable with everything above.

date.h and tz.h are now being proposed for standardization:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0355r1.html