Inheritance diagram for bracz::linmap< key, value >:

Public Types | |
| typedef key | key_type |
| typedef value | data_type |
| typedef std::pair< key_type, data_type > | value_type |
| typedef std::allocator< linmap< key_type, value_type > > | allocator |
Public Member Functions | |
| linmap () | |
| void | clear () |
| data_type &DINLINE | operator[] (key_type k) |
| template<class CmpFn> | |
| void | sort (CmpFn fn=CmpFn()) |
| iterator DINLINE | begin () |
| iterator DINLINE | end () |
Private Types | |
| typedef arrayalloc< value_type, 1, 100000 > | myallocator_t |
| allocator for the blocks | |
Private Attributes | |
| uint32_t | size |
| the actual length; | |
| int | logsize |
| blocksize of the data space | |
| value_type * | data |
| the actual data space | |
Static Private Attributes | |
| static myallocator_t | myallocator |
Friends | |
| class | iterator |
Classes | |
| class | iterator |
All operations are linear time. However, the overhead is very small. It is very effective if you have only a few elements and only a few lookup/insert operations are performed.
An ordering on the key type is not required.
Iterators are not invalidated by operator[]
Definition at line 29 of file linmap.cpp.
|
|||||
|
Definition at line 36 of file linmap.cpp. |
|
|||||
|
Definition at line 32 of file linmap.cpp. |
|
|||||
|
Definition at line 31 of file linmap.cpp. |
|
|||||
|
allocator for the blocks
Definition at line 141 of file linmap.cpp. |
|
|||||
|
Definition at line 33 of file linmap.cpp. |
|
|||||||||
|
Definition at line 38 of file linmap.cpp. |
|
|||||||||
|
Definition at line 122 of file linmap.cpp. |
|
|||||||||
|
Definition at line 42 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::linmap(). |
|
|||||||||
|
Definition at line 126 of file linmap.cpp. |
|
||||||||||
|
Definition at line 48 of file linmap.cpp. |
|
||||||||||||||
|
Definition at line 79 of file linmap.cpp. |
|
|||||
|
Definition at line 120 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::begin(), and bracz::linmap< key_type, data_type >::end(). |
|
|||||
|
the actual data space
Definition at line 138 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::clear(), bracz::linmap< key, value >::iterator::operator *(), bracz::linmap< key, value >::iterator::operator->(), bracz::linmap< key_type, data_type >::operator[](), and bracz::linmap< key_type, data_type >::sort(). |
|
|||||
|
blocksize of the data space
Definition at line 135 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::clear(), and bracz::linmap< key_type, data_type >::operator[](). |
|
|||||
|
Definition at line 143 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::operator[](). |
|
|||||
|
the actual length;
Definition at line 132 of file linmap.cpp. Referenced by bracz::linmap< key_type, data_type >::clear(), bracz::linmap< key_type, data_type >::end(), bracz::linmap< key_type, data_type >::operator[](), and bracz::linmap< key_type, data_type >::sort(). |
1.4.4