
Hi Vicente, Howard and Chronoists, 2011/3/16 Howard Hinnant <howard.hinnant@gmail.com>:
On Mar 16, 2011, at 11:48 AM, Vicente Botet wrote:
Joachim Faulhaber wrote:
Vicente, thank you for implementing the additions on boost::chrono discussed in this thread
(1) A default constructor on chrono::duration that is initialized with zero. (2) An increment/decrement on the least steppable unit (3) A difference_type declaration
Howard, do you think that there is a chance this semantics could be accepted for TR2?
I think there's a chance. I'm not sure enough to be able to say whether that chance is high or low. The chances would probably improve if boost's use of it did show benefit and did not show any problems.
According to Howard's remarks, I have instantiated a test suite of 16 non trivial test programs using various chrono time points and durations on ICL intervals and interval containers. http://www.boost.org/development/tests/trunk/developer/icl.html Based on those changes, ICL users are now able to use chrono::time_points and durations in ICL intervals and interval containers without the need of any special adaptercode (e.g. a boost/ICL/chrono.hpp). Everything looks perfect now :) Cheers, Joachim P.S.: Sidenote. Although points (1) trough (3) are a good foundation for this chrono icl interoperability, I had to add some introspection code in addition. I'm not perfectly satisfied with that. I feel there is a concept missing here, that should be the basis of interoperability for types like chrono::time_point/durations, date_time::date/time/durations, third_party::date/time/durations and other types resembling the same concept of an equidistant scalar type. -- Interval Container Library [Boost.Icl] http://www.joachim-faulhaber.de