tlx
Loading...
Searching...
No Matches
BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::InnerNode Struct Reference

Extended structure of a inner node in-memory. More...

Inheritance diagram for BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::InnerNode:
BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node

Public Types

typedef std::allocator_traits< Allocator >::template rebind_alloc< InnerNodealloc_type
 Define an related allocator for the InnerNode structs.
 

Public Member Functions

void initialize (const unsigned short l)
 Set variables to initial values.
 
const key_typekey (size_t s) const
 Return key in slot s.
 
bool is_full () const
 True if the node's slots are full.
 
bool is_few () const
 True if few used entries, less than half full.
 
bool is_underflow () const
 True if node has too few entries.
 
- Public Member Functions inherited from BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node
void initialize (const unsigned short l)
 Delayed initialisation of constructed node.
 
bool is_leafnode () const
 True if this is a leaf node.
 

Public Attributes

key_type slotkey [inner_slotmax]
 Keys of children or data pointers.
 
nodechildid [inner_slotmax+1]
 Pointers to children.
 
- Public Attributes inherited from BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::node
unsigned short level
 Level in the b-tree, if level == 0 -> leaf node.
 
unsigned short slotuse
 Number of key slotuse use, so the number of valid children or data pointers.
 

Detailed Description

template<typename Key, typename Value, typename KeyOfValue, typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
struct tlx::BTree< Key, Value, KeyOfValue, Compare, Traits, Duplicates, Allocator >::InnerNode

Extended structure of a inner node in-memory.

Contains only keys and no data items.

Definition at line 235 of file btree.hpp.

Member Typedef Documentation

◆ alloc_type

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
typedef std::allocator_traits<Allocator>::template rebind_alloc<InnerNode> alloc_type

Define an related allocator for the InnerNode structs.

Definition at line 237 of file btree.hpp.

Member Function Documentation

◆ initialize()

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
void initialize ( const unsigned short l)
inline

Set variables to initial values.

Definition at line 246 of file btree.hpp.

◆ is_few()

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
bool is_few ( ) const
inline

True if few used entries, less than half full.

Definition at line 261 of file btree.hpp.

◆ is_full()

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
bool is_full ( ) const
inline

True if the node's slots are full.

Definition at line 256 of file btree.hpp.

◆ is_underflow()

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
bool is_underflow ( ) const
inline

True if node has too few entries.

Definition at line 266 of file btree.hpp.

◆ key()

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
const key_type & key ( size_t s) const
inline

Return key in slot s.

Definition at line 251 of file btree.hpp.

Member Data Documentation

◆ childid

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
node* childid[inner_slotmax+1]

Pointers to children.

Definition at line 243 of file btree.hpp.

◆ slotkey

template<typename Key , typename Value , typename KeyOfValue , typename Compare = std::less<Key>, typename Traits = btree_default_traits<Key, Value>, bool Duplicates = false, typename Allocator = std::allocator<Value>>
key_type slotkey[inner_slotmax]

Keys of children or data pointers.

Definition at line 240 of file btree.hpp.


The documentation for this struct was generated from the following file: