41 #ifndef PB_DS_SPLAY_TREE_NODE_HPP 42 #define PB_DS_SPLAY_TREE_NODE_HPP 49 template<
typename Value_Type,
class Metadata,
typename _Alloc>
53 typedef Value_Type value_type;
54 typedef Metadata metadata_type;
62 typedef typename rebind_traits<_Alloc, metadata_type>::reference
65 typedef typename rebind_traits<_Alloc, metadata_type>::const_reference
66 metadata_const_reference;
68 #ifdef PB_DS_BIN_SEARCH_TREE_TRACE_ 71 {
std::cout << PB_DS_V2F(m_value) <<
"(" << m_metadata <<
")"; }
78 inline metadata_const_reference
80 {
return m_metadata; }
82 inline metadata_reference
84 {
return m_metadata; }
88 node_pointer m_p_left;
89 node_pointer m_p_right;
90 node_pointer m_p_parent;
91 size_type m_subtree_size;
92 metadata_type m_metadata;
95 template<
typename Value_Type,
typename _Alloc>
99 typedef Value_Type value_type;
100 typedef null_type metadata_type;
110 {
return m_special; }
112 #ifdef PB_DS_BIN_SEARCH_TREE_TRACE_ 118 node_pointer m_p_left;
119 node_pointer m_p_right;
120 node_pointer m_p_parent;
121 size_type m_subtree_size;
GNU extensions for policy-based data structures for public use.
ostream cout
Linked to standard output.
Consistent API for accessing allocator-related types.