Changes between Version 110 and Version 111 of LibrariesUnderConstruction
- Timestamp:
- Jun 19, 2010, 4:13:46 PM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
LibrariesUnderConstruction
v110 v111 1053 1053 * '''Description:''' Threader/Joiner as proposed by Kevlin Henney `[http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1883.pdf Preliminary Threading Library Proposal for TR2] 1054 1054 1055 --------------------------------------------------------------------------------------------------- 1056 == Boost.Tokenmap == 1057 * '''Author(s):''' Slawomir Lisznianski 1058 * '''Version:''' 1059 * '''State:''' 1060 * '''Last upload:''' 2010 April 21 1061 * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/tokenmap Boost Sandbox] [http://svn.boost.org/svn/boost/sandbox/tokenmap/libs/tokenmap/doc/html/index.html Boost Documentation] 1062 * '''Categories:''' [#Containers Containers], [#DataStructures Data Structures] 1063 * '''Description:''' A tokenmap is a data structure that uniquely maps integer keys (called tokens) with values. 1064 1065 Unlike typical dictionary-like containers such as std::map or boost_unordered, tokenmap generates the keys for stored values. The keys are random in appearance yet have the property of allowing the container to perform very efficient look-ups -- in the order of indexing within a C-array. 1066 1067 tokenmaps have the following properties: 1068 1069 * No two tokens map to the same value; in essence, tokenmap is a perfect hash container. 1070 * The returned tokens are stable (a token will always map to a corresponding value regardless of how the tokenmap was modified since the token was generated). 1071 * Lookups are very efficient compared to std::map find. For example, when looking up a value in a 1,000,000-elements container, tokenamp outperforms std::map by about 30 times. 1072 1073 1055 1074 1056 1075 --------------------------------------------------------------------------------------------------- … … 1549 1568 * [#Boost.ITL Boost.ITL] 1550 1569 * [#Boost.!LockFree Boost.LockFree] 1551 * [#Quartets Quartets]1552 1570 * [#Boost.Monotonic Boost.Monotonic] 1553 1571 * [#Boost.Persistent Boost.Persistent] 1572 * [#Quartets Quartets] 1554 1573 * [#StableVector StableVector] 1574 * [#Boost.Tokenmap Boost.Tokenmap] 1555 1575 * [#Boost.Tree Boost.Tree] 1556 1576 … … 1571 1591 * [#Boost.Cloneable Boost.Cloneable] 1572 1592 * [#Boost.Cloner Boost.Cloner] 1593 * [#Boost.Enums Boost.Enums] 1594 * [#Boost.EnumArray Boost.EnumArray] 1595 * [#Boost.EnumSet Boost.EnumSet] 1573 1596 * [#Boost.Fsm Boost.Fsm] 1574 1597 * [#Boost.LUID Boost.LUID] 1575 1598 * [#Boost.Msm Boost.Msm] 1576 1599 * [#Quartets Quartets] 1577 * [#Boost.Enums Boost.Enums] 1578 * [#Boost.EnumArray Boost.EnumArray] 1579 * [#Boost.EnumSet Boost.EnumSet] 1580 1600 * [#Boost.Tokenmap Boost.Tokenmap] 1581 1601 1582 1602 --------------------------------------------------------------------------------------------------- … … 1584 1604 * [#RTL RTL] 1585 1605 * [#Boost.RDB Boost.RDB] 1586 1587 1606 1588 1607 ---------------------------------------------------------------------------------------------------