In order to add support for the time built-ins that worked cross-platform and with the widest
range of C++ compilers, we had to introduce a dependency on the date
library. This contains a full implementations of the std::chrono functionality which will eventually be
supported across most c++ compilers as part of the STL. In particular, it provides the crucial Time Zone
lookup functionalities required by the Rego time built-ins. The Time Zone lookup requires a valid
tzdata database from the IANA. This can either be configured to use the local
system TZ data (default for Linux variants) or a manual database (default for Windows). If the REGOCPP_USE_MANUAL_TZDATA flag
is set, then the project will download the latest database and install it as part of its build process.
New Features
Added the uuid built-ins
Added the time built-ins
Added the walk built-in
It is now possible for BuiltInDef implementations to cache values or otherwise maintain state. To facilitate this,
a new virtual clear() method has been added which will be called at the start of each query evaluation.
Bug Fixes
Fixed a bug with adding zero to negative integers.
In order to add support for the
time
built-ins that worked cross-platform and with the widest range of C++ compilers, we had to introduce a dependency on thedate
library. This contains a full implementations of thestd::chrono
functionality which will eventually be supported across most c++ compilers as part of the STL. In particular, it provides the crucial Time Zone lookup functionalities required by the Regotime
built-ins. The Time Zone lookup requires a validtzdata
database from the IANA. This can either be configured to use the local system TZ data (default for Linux variants) or a manual database (default for Windows). If theREGOCPP_USE_MANUAL_TZDATA
flag is set, then the project will download the latest database and install it as part of its build process.New Features
uuid
built-instime
built-inswalk
built-inBuiltInDef
implementations to cache values or otherwise maintain state. To facilitate this, a new virtualclear()
method has been added which will be called at the start of each query evaluation.Bug Fixes
Closes #57 Closes #139