The C++ framework for developing highly scalable, high performance servers on Windows platforms.

TIntrusiveMap Class Template Reference

Inheritance diagram for TIntrusiveMap:
Collaboration diagram for TIntrusiveMap:

List of all members.

template<class T, class K, class TtoK, class Pr = std::less<K>, class TtoN = TIntrusiveRedBlackTreeNodeIsBaseClass<T>>
class JetByteTools::Core::TIntrusiveMap< T, K, TtoK, Pr, TtoN >


Public Types

typedef T value_type
typedef std::pair
< Iterator, bool
pairib
typedef void( ValidateNodeFnc )(const T *pNode, ULONG_PTR userData)

Public Member Functions

bool IsEmpty () const
size_t Size () const
pairib Insert (const T *pItemToInsert)
pairib Insert (const T *pItemToInsert, const K &key)
Iterator Find (const K &key) const
T * Remove (const K &key)
void Erase (const Iterator &it)
void Erase (const T *pDataToErase)
void Clear ()
Iterator CreateIterator (const T *pItem) const
void SwapNode (const CIntrusiveRedBlackTreeNode *pSourceNode, CIntrusiveRedBlackTreeNode *pDestNode)
Iterator Begin () const
Iterator End () const
void ValidateTree (ValidateNodeFnc *pValidateNodeFnc=nullptr, ULONG_PTR userData=0) const

Static Public Member Functions

static bool IsInTree (const CIntrusiveRedBlackTreeNode *pNode)
static void RemoveFromTree (CIntrusiveRedBlackTreeNode *pNode)

Member Typedef Documentation

typedef T value_type [inherited]

typedef std::pair<Iterator, bool> pairib [inherited]

typedef void( ValidateNodeFnc)(const T *pNode, ULONG_PTR userData) [inherited]


Member Function Documentation

bool IsEmpty (  )  const [inline, inherited]

size_t Size (  )  const [inline, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::pairib Insert ( const T *  pItemToInsert  )  [inline, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::pairib Insert ( const T *  pItemToInsert,
const K &  key 
) [inline, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::Iterator Find ( const K &  key  )  const [inline, inherited]

T * Remove ( const K &  key  )  [inline, inherited]

void Erase ( const Iterator it  )  [inline, inherited]

void Erase ( const T *  pDataToErase  )  [inline, inherited]

void Clear (  )  [inline, inherited]

bool IsInTree ( const CIntrusiveRedBlackTreeNode pNode  )  [inline, static, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::Iterator CreateIterator ( const T *  pItem  )  const [inline, inherited]

void SwapNode ( const CIntrusiveRedBlackTreeNode pSourceNode,
CIntrusiveRedBlackTreeNode pDestNode 
) [inline, inherited]

void RemoveFromTree ( CIntrusiveRedBlackTreeNode pNode  )  [inline, static, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::Iterator Begin (  )  const [inline, inherited]

TIntrusiveRedBlackTree< T, K, TtoK, Pr, TtoN >::Iterator End (  )  const [inline, inherited]

void ValidateTree ( ValidateNodeFnc pValidateNodeFnc = nullptr,
ULONG_PTR  userData = 0 
) const [inline, inherited]


Generated on Sun Sep 12 19:08:32 2021 for The Server Framework - v7.4 by doxygen 1.5.3