|
Thrill
0.1
|
STL-like mutable reverse iterator object for B+ tree items. The iterator points to a specific slot number in a leaf.
Collaboration diagram for BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator:#include <btree.hpp>
Public Types | |
| typedef ptrdiff_t | difference_type |
| STL-magic. More... | |
| typedef std::bidirectional_iterator_tag | iterator_category |
| STL-magic iterator category. More... | |
| typedef BTree::key_type | key_type |
| The key type of the btree. Returned by key(). More... | |
| typedef value_type * | pointer |
| Pointer to the value_type. STL required. More... | |
| typedef value_type & | reference |
| Reference to the value_type. STL required. More... | |
| typedef reverse_iterator | self |
| Our own type. More... | |
| typedef BTree::value_type | value_type |
| The value type of the btree. Returned by operator*(). More... | |
Public Member Functions | |
| reverse_iterator () | |
| Default-Constructor of a reverse iterator. More... | |
| reverse_iterator (typename BTree::LeafNode *l, unsigned short s) | |
| Initializing-Constructor of a mutable reverse iterator. More... | |
| reverse_iterator (const iterator &it) | |
| Copy-constructor from a mutable iterator. More... | |
| const key_type & | key () const |
| Key of the current slot. More... | |
| bool | operator!= (const reverse_iterator &x) const |
| Inequality of iterators. More... | |
| reference | operator* () const |
| Dereference the iterator. More... | |
| reverse_iterator & | operator++ () |
| Prefix++ advance the iterator to the next slot. More... | |
| reverse_iterator | operator++ (int) |
| Postfix++ advance the iterator to the next slot. More... | |
| reverse_iterator & | operator-- () |
| Prefix– backstep the iterator to the last slot. More... | |
| reverse_iterator | operator-- (int) |
| Postfix– backstep the iterator to the last slot. More... | |
| pointer | operator-> () const |
| Dereference the iterator. More... | |
| bool | operator== (const reverse_iterator &x) const |
| Equality of iterators. More... | |
Private Attributes | |
| BTree::LeafNode * | curr_leaf |
| The currently referenced leaf node of the tree. More... | |
| unsigned short | curr_slot |
| One slot past the current key/data slot referenced. More... | |
| typedef ptrdiff_t difference_type |
| typedef std::bidirectional_iterator_tag iterator_category |
| typedef BTree::key_type key_type |
| typedef value_type* pointer |
| typedef value_type& reference |
| typedef reverse_iterator self |
| typedef BTree::value_type value_type |
The value type of the btree. Returned by operator*().
|
inline |
|
inline |
|
inline |
|
inline |
Key of the current slot.
Definition at line 763 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::key(), and TLX_BTREE_ASSERT.
|
inline |
Inequality of iterators.
Definition at line 846 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::curr_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::curr_slot.
|
inline |
Dereference the iterator.
Definition at line 751 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::slotdata, and TLX_BTREE_ASSERT.
|
inline |
Prefix++ advance the iterator to the next slot.
Definition at line 769 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::prev_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node::slotuse.
|
inline |
Postfix++ advance the iterator to the next slot.
Definition at line 786 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::prev_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node::slotuse.
|
inline |
Prefix– backstep the iterator to the last slot.
Definition at line 805 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::next_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node::slotuse.
|
inline |
Postfix– backstep the iterator to the last slot.
Definition at line 822 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::next_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node::slotuse.
|
inline |
Dereference the iterator.
Definition at line 757 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::LeafNode::slotdata, and TLX_BTREE_ASSERT.
|
inline |
Equality of iterators.
Definition at line 841 of file btree.hpp.
References BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::curr_leaf, and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::curr_slot.
|
private |
The currently referenced leaf node of the tree.
Definition at line 710 of file btree.hpp.
Referenced by BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::operator!=(), and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::operator==().
|
private |
One slot past the current key/data slot referenced.
Definition at line 713 of file btree.hpp.
Referenced by BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::operator!=(), and BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::reverse_iterator::operator==().