| Home | Libraries | People | FAQ | More

### Dependencies

Boost.Bimap is built on top of several Boost libraries. The rationale behind this decision is keeping the Boost code base small by reusing existent code. The libraries used are well-established and have been tested extensively, making this library easy to port since all the hard work has already been done. The glue that holds everything together is Boost.MPL. Clearly Boost.MultiIndex is the heart of this library.

Table 1.4. Boost Libraries needed by Boost.Bimap

Name | Description | author
--- | --- | ---
Boost.MultiIndex | Containers with multiple STL-compatible access interfaces | Joaquín M López Muñoz
Boost.MPL | Template metaprogramming framework of compile-time algorithms, sequences and metafunction classes | Aleksey Gurtovoy
Boost.TypeTraits | Templates for fundamental properties of types. | John Maddock, Steve Cleary
Boost.enable_if | Selective inclusion of function template overloads | Jaakko Järvi, Jeremiah Willcock, Andrew Lumsdaine
Boost.Iterators | Iterator construction framework, adaptors, concepts, and more. | Dave Abrahams, Jeremy Siek, Thomas Witt
Boost.call_traits | Defines types for passing parameters. | John Maddock, Howard Hinnant
Boost.StaticAssert | Static assertions (compile time assertions). | John Maddock

Table 1.5. Optional Boost Libraries

Name | Description | author | Purpose
--- | --- | --- | ---
Boost.Serialization | Serialization for persistence and marshalling | Robert Ramey | Serialization support for bimap containers and iterators
Boost.Assign | Filling containers with constant or generated data has never been easier | Thorsten Ottosen | Help to fill a bimap or views of it
Boost.Hash | A TR1 hash function object that can be extended to hash user defined types | Daniel James | Default hashing function
Boost.Lambda | Define small unnamed function objects at the actual call site, and more | from Jaakko Järvi, Gary Powell | Functors for modify, range, lower_bound and upper_bound
Boost.Range | A new infrastructure for generic algorithms that builds on top of the new iterator concepts | Thorsten Ottosen | Range based algorithms
Boost.PropertyMap | Concepts defining interfaces which map key objects to value objects | Jeremy Siek | Integration with BGL

Table 1.6. Additional Boost Libraries needed to run the test-suite

Name | Description | author
--- | --- | ---
Boost.Test | Support for simple program testing, full unit testing, and for program execution monitoring. | Gennadiy Rozental