STX B+ Tree Template Classes  0.9
Public Types | Public Member Functions | Public Attributes | List of all members
stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node Struct Reference

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

Public Types

typedef _Alloc::template rebind< inner_node >::other alloc_type
 Define an related allocator for the inner_node structs. More...
 

Public Member Functions

void initialize (const unsigned short l)
 Set variables to initial values. More...
 
bool isfull () const
 True if the node's slots are full. More...
 
bool isfew () const
 True if few used entries, less than half full. More...
 
bool isunderflow () const
 True if node has too few entries. More...
 
- Public Member Functions inherited from stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::node
void initialize (const unsigned short l)
 Delayed initialisation of constructed node. More...
 
bool isleafnode () const
 True if this is a leaf node. More...
 

Public Attributes

key_type slotkey [innerslotmax]
 Keys of children or data pointers. More...
 
nodechildid [innerslotmax+1]
 Pointers to children. More...
 
- Public Attributes inherited from stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::node
unsigned short level
 Level in the b-tree, if level == 0 -> leaf node. More...
 
unsigned short slotuse
 Number of key slotuse use, so number of valid children or data pointers. More...
 

Detailed Description

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
struct stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node

Extended structure of a inner node in-memory.

Contains only keys and no data items.

Definition at line 280 of file btree.h.

Member Typedef Documentation

◆ alloc_type

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
typedef _Alloc::template rebind<inner_node>::other stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::alloc_type

Define an related allocator for the inner_node structs.

Definition at line 283 of file btree.h.

Member Function Documentation

◆ initialize()

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
void stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::initialize ( const unsigned short  l)
inline

Set variables to initial values.

Definition at line 292 of file btree.h.

◆ isfew()

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
bool stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::isfew ( ) const
inline

True if few used entries, less than half full.

Definition at line 304 of file btree.h.

◆ isfull()

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
bool stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::isfull ( ) const
inline

True if the node's slots are full.

Definition at line 298 of file btree.h.

◆ isunderflow()

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
bool stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::isunderflow ( ) const
inline

True if node has too few entries.

Definition at line 310 of file btree.h.

Member Data Documentation

◆ childid

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
node* stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::childid[innerslotmax+1]

Pointers to children.

Definition at line 289 of file btree.h.

◆ slotkey

template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false, typename _Alloc = std::allocator<_Value>, bool _UsedAsSet = false>
key_type stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet >::inner_node::slotkey[innerslotmax]

Keys of children or data pointers.

Definition at line 286 of file btree.h.


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