Boost 1.36.0
Posted July 24th, 2008 . No Comments .
The 1.36.0 may not yet have been released but the code branch has been frozen so why wait with the release info.
New libraries
- Accumulators: Framework for incremental calculation, and collection of statistical accumulators, from Eric Niebler.
- Exception: A library for transporting of arbitrary data in exception objects, and transporting of exceptions between threads, from Emil Dotchevski.
- Units: Zero-overhead dimensional analysis and unit/quantity manipulation and conversion, from Matthias Schabel and Steven Watanabe
- Unordered: Unordered associative containers, from Daniel James.
Updated libraries
Assign
list_of() (and its variants) now has overloaded comparison operators. This allows you to write test code such as BOOST_CHECK_EQUAL( my_container, list_of(2)(3)(4)(5) );.
Foreach
New BOOST_REVERSE_FOREACH macro for iterating over a sequence in reverse.
Interprocess
- Added anonymous shared memory for UNIX systems.
- Fixed missing move semantics on managed memory classes.
- Added copy_on_write and open_read_only options for shared memory and mapped file managed classes.
- shared_ptr is movable and supports aliasing.
Intrusive
- Added linear<> and cache_last<> options to singly linked lists.
- Added optimize_multikey<> option to unordered container hooks.
- Optimized unordered containers when store_hash option is used in the hook.
- Implementation changed to avoid explicit use of try-catch blocks and be compilable with exceptions disabled.
Boost.Math
- Added new non-central Chi-Square, Beta, F and T distributions.
- Added Exponential Integral and Zeta special functions.
- Added Rounding, Truncation, and Unit-in-the-last-place functions.
- Added support for compile time powers of a runtime base.
- Added a few SSE2 based optimisations for the Lanczos approximations.
PtrContainer
Support for a few more containers, and addition of insert iterators.
Spirit
Integrated the “Classic” Spirit V1.8.x code base with Spirit V2, “The
Thread
- New generic lock and try_lock functions for locking multiple mutexes at once.
- Rvalue reference support for move semantics where the compilers supports it.
- A few bugs fixed and missing functions added (including the serious win32 condition variable bug).
- scoped_try_lock types are now backwards-compatible with Boost 1.34.0 and previous releases.
- Support for passing function arguments to the thread function by supplying additional arguments to the thread constructor.
- Backwards-compatibility overloads added for timed_lock and timed_wait functions to allow use of xtime for timeouts.
Xpressive
- skip() for specifying which parts of the input sequence to ignore when matching it against a regex.
- regex_replace() accepts formatter objects and formatter expressions in addition to format strings.
- Range-based regex_replace() algorithm.
- Fix crash when semantic actions are placed in look-aheads, look-behinds or independent sub-expressions.
