BloombergLP::bslstl::TreeNode

POD-like node for a red-black tree of parameterized VALUE objects.

Synopsis

Declared in <bslstl_treenode.h>

template<class VALUE>
class TreeNode
    : public bslalg::RbTreeNode

Description

This POD-like class describes a node suitable for use in a red-black binary search tree of values of the parameterized VALUE. This class is a "POD-like" to facilitate efficient allocation and use in the context of a container implementation. In order to meet the essential requirements of a POD type, this class does not define a constructor or destructor. The manipulator, value, returns a modifiable reference to d_value so that it may be constructed in-place by the appropriate bsl::allocator_traits object.

Base Classes

NameDescription
bslalg::RbTreeNodeA node in a red-black binary search tree.

Enums

NameDescription
Color Enumeration of the two colors used by red-black tree nodes.

Member Functions

NameDescription
color Return the color of this node.
isBlack Return true if this node is black.
isRed Return true if this node is red.
leftChild leftChild overloads
makeBlack Set the color of this node to black. Note that this operation is at least as fast as (and potentially faster than) setColor.
makeRed Set the color of this node to red. Note that this operation is at least as fast as (and potentially faster than) setColor.
parent parent overloads
reset Reset this object to have the specified parent, leftChild, rightChild, and color property values.
rightChild rightChild overloads
setColor Set the color of this node to the specified value.
setLeftChild Set the left child of this node to the specified address. If address is 0, then this node will not have a left child.
setParent Set the parent of this node to the specified address.
setRightChild Set the right child of this node to the specified address. If address is 0, then this node will not have a right child.
toggleColor Set the color of this node to the alternative color.
value value overloads