Boost.MultiIndex Release notes
Contents
- Added random access
indices.
- Non key-based indices provide new
rearrange facilities
allowing for interaction with external mutating algorithms.
- All predefined Boost.MultiIndex key extractors
instantiated for a given type
T
can handle objects of types
derived from or convertible to T
(and
chained pointers
to those). Previously, only objects of the exact type specified (along with
reference_wrapper
s and chained pointers to them) were accepted.
composite_key_compare
and related classes accept operands not included in tuples as if they were passed
in a tuple of length 1; this allows the user to omit tuple enclosing in
lookup operations involving composite keys when only the first key is provided.
- The core algorithms of ordered indices have been optimized, yielding
an estimated reduction of about 5% in insertion times.
- Size of ordered indices node headers have been reduced by 25% on
most platforms, using a well known
optimization
technique.
- The tutorial has been restructured, new examples added.
- Maintenance fixes.
- For ordered and hashed indices,
erase(it)
and
erase(first,last)
now return an iterator to the element
following those being deleted (previously nothing was returned), in
accordance with the C++ Standard Library
Defect
Report 130 and issue 6.19 of TR1
Issues
List.
- Boost.MultiIndex offers the usual guarantees with respect to
multithreading code provided by most STL implementations:
- Concurrent access to different containers is safe.
- Concurrent read-only access to the same container is safe.
In previous versions of the library, the latter guarantee was not properly
maintained if the safe
mode was set. This problem has been fixed now.
- Maintenance fixes.
- Added hashed indices,
whose interface is based on the specification for unordered associative
containers by the C++ Standard Library Technical Report (TR1).
- Added serialization support
for Boost.Serialization.
- Destruction of
multi_index_container
s and clear
memfuns now perform faster.
- Internal changes aimed at reducing the length of symbol names generated
by the compiler; cuts of up to a 50% can be achieved with respect to the
Boost 1.32 release. This results in much shorter and more readable error
messages and has also a beneficial impact on compilers with strict limits on
symbol name lengths. Additionally, a section on further
reduction of symbol name
lengths has been added.
- Restructured some parts of the documentation, new examples.
- Maintenance fixes.
Revised February 6th 2006
© Copyright 2003-2006 Joaquín M López Muñoz.
Distributed under the Boost Software
License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)