BurstTrieSet< T, GROUP_BITS, BUCKET_SIZE, SORT, POOL > Class Template Reference Data Structures

#include <bursttriemap.h>

Inheritance diagram for BurstTrieSet< T, GROUP_BITS, BUCKET_SIZE, SORT, POOL >:

详细描述

template<typename T, Int GROUP_BITS = 4, Int BUCKET_SIZE = 16, BURSTTRIE_SORT SORT = BURSTTRIE_SORT::LINEAR_SEARCH, template< typename, typename > class POOL = PointerBurstTriePool>
class maxon::BurstTrieSet< T, GROUP_BITS, BUCKET_SIZE, SORT, POOL >

A BurstTrieSet is an implementation of a set using an underlying BurstTrieMap . Like BurstTrieMap , it only supports unsigned integral values. See BurstTrieMap for details about the internal structure and performance.

HashSet for more examples on how to use sets in general.

Template Parameters
T Type of elements of the set.
GROUP_BITS Number of bits which shall be grouped to form an index into the children array of an inner node. This shouldn't exceed 4.
BUCKET_SIZE Maximum size of a bucket of a leaf node. Reasonable values are between 4 and 40.
SORT Mode for sorting of the buckets.
POOL Memory pool for the nodes.
另请参阅
BurstTrieMap
$ref sets

Public Types

using  MapType = BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, POOL >
using  IsBurstTrieMap = std::true_type
using  IsBurstTrieSet = std::true_type
using  Iterator = typename Super::KeyIterator
using  ConstIterator = typename Super::ConstKeyIterator
-  Public Types inherited from SetBase0< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > >, DefaultCompare >
using  SetType = BurstTrieSet < T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH , PointerBurstTriePool >
-  Public Types inherited from Collection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
using  Super = BaseCollection < BurstTrieSet < T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH , PointerBurstTriePool >, Protected < BurstTrieMap < T, UnitType , 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH , PointerBurstTriePool > > >
using  ValueType = T
-  Public Types inherited from BaseCollection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
using  IsCollection = std::true_type

公共成员函数

  BurstTrieSet ()
  BurstTrieSet ( BurstTrieSet && src )
  MAXON_OPERATOR_MOVE_ASSIGNMENT ( BurstTrieSet )
MapType GetMap ()
const MapType GetMap () const
Bool   Contains (T value) const
void  Insert () const
ResultMemT < Iterator Insert (T value, Bool &added= BoolLValue ())
ResultRef < const T >  InsertKey (T value, Bool &added= BoolLValue ())
ResultOk < Bool Erase (T value)
ConstIterator   Begin () const
ConstIterator   End () const
Iterator   Begin ()
Iterator   End ()
Iterator   Erase (const Iterator &it)
Iterator   Find (K key)
ConstIterator   Find (K key) const
Int   GetCount () const
Int   GetOperationCountForSearch () const
ResultMem   SetCapacityHint ( Int , COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
void  重置 ()
void  Flush ()
Int   GetMemorySize () const
-  Public Member Functions inherited from SetBase< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE   SetBase (ARGS &&... args)
SetImpl < BurstTrieSet < T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH , PointerBurstTriePool > & >  ToSet ()
SetImpl < const BurstTrieSet < T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH , PointerBurstTriePool > & >  ToSet () const
MAXON_ATTRIBUTE_FORCE_INLINE   operator SetImpl< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > & > ()
MAXON_ATTRIBUTE_FORCE_INLINE   operator SetImpl< const BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > & > () const
-  Public Member Functions inherited from SetBase0< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE   SetBase0 (ARGS &&... args)
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef < const T >  Append (typename ByValueParam < T >:: type v)
Bool   ContainsAllImpl (COLLECTION2 &&other, OverloadRank0 ) const
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  添加 (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE )
Result < void >  SubtractImpl (COLLECTION2 &&other, OverloadRank0 )
Bool   IsEqualImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0 ) const
HashInt   GetHashCode () const
-  Public Member Functions inherited from Collection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
MAXON_ATTRIBUTE_FORCE_INLINE   Collection (ARGS &&... args)
ResultOk < void >  VariadicAppend ()
Result < void >  VariadicAppend (V &&value, VALUES &&... rest)
  operator ValueReceiver< const T & > ()
  operator ValueReceiver< T && > ()
  operator ValueReceiver< typename std::conditional< STD_IS_REPLACEMENT (scalar, T)
DummyParamType &  type ()
Result < Bool ForEach (FN &&callback) const
Result < Bool ForEach (FN &&callback)
H::Iterator  Find (typename ByValueParam < T >:: type v)
H::ConstIterator  Find (typename ByValueParam < T >:: type v) const
Int   FindIndex (typename ByValueParam < T >:: type v) const
MAXON_ATTRIBUTE_FORCE_INLINE Bool   Contains (typename ByValueParam < T >:: type v) const
-  Public Member Functions inherited from BaseCollection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
MAXON_ATTRIBUTE_FORCE_INLINE   BaseCollection (ARGS &&... args)
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type  operator== (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type  operator!= (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value &&! STD_IS_REPLACEMENT (same, typename std::decay< COMPARE >::type, EQUALITY ), Bool >::type  IsEqual (const COLLECTION2 &other, COMPARE &&cmp=COMPARE()) const
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  Subtract (COLLECTION2 &&other)
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  Intersect (const COLLECTION2 &other)
Bool   Intersects (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  CopyFromImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank0 )
Result < void >  AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0 )
Result < void >  IntersectImpl (COLLECTION2 &&other, OverloadRank0 )
MAXON_ATTRIBUTE_FORCE_INLINE Bool   IsEmpty () const
MAXON_ATTRIBUTE_FORCE_INLINE Bool   IsPopulated () const
String   ToString (const FormatStatement *formatStatement=nullptr) const
MAXON_ATTRIBUTE_FORCE_INLINE Bool   ContainsAll (COLLECTION2 &&other) const
Bool   ContainsAllImpl (COLLECTION2 &&other, OverloadRank0 ) const
-  Public Member Functions inherited from Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > >
  __attribute__ ((always_inline)) explicit Protected (ARGS &&... args)

Public Attributes

friend  MapType
-  Public Attributes inherited from Collection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
  VALUETYPE

Private Types

using  Super = SetBase < BurstTrieSet < T, GROUP_BITS, BUCKET_SIZE, SORT, POOL >, T, Protected < MapType >, DefaultCompare >

私有成员函数

  MAXON_DISALLOW_COPY_AND_ASSIGN ( BurstTrieSet )

Additional Inherited Members

-  Static Public Member Functions inherited from Collection< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > > >
static const T &  GetMapKey (const T &key)
-  Static Public Attributes inherited from SetBase0< BurstTrieSet< T, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >, T, Protected< BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool > >, DefaultCompare >
static const COLLECTION_KIND   KIND
-  Protected Types inherited from BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >
using  IsBurstTrieMap = std::true_type
using  Bucket = BurstTrieBucket < T, UnitType , BUCKET_SIZE >
using  节点 = BurstTrieNode < GROUP_BITS, typename PointerBurstTriePool < Int , Int >:: 索引 >
using  Pool = PointerBurstTriePool < 节点 , Bucket >
using  索引 = typename Pool::Index
using  Super = MapBase < BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType , Pool , DefaultCompare >
using  Iterator = IteratorTemplate< false, EntryIteratorBase >
using  ConstIterator = IteratorTemplate< true, EntryIteratorBase >
using  KeyIterator = IteratorTemplate< false, KeyIteratorBase >
using  ConstKeyIterator = IteratorTemplate< true, KeyIteratorBase >
using  ValueIterator = IteratorTemplate< false, ValueIteratorBase >
using  ConstValueIterator = IteratorTemplate< true, ValueIteratorBase >
-  Protected Types inherited from MapBase0< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >, DefaultCompare >
using  MapType = BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >
using  Super = BaseCollection < BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, PointerBurstTriePool < BurstTrieNode < GROUP_BITS, PointerBurstTriePool < Int , Int >:: 索引 >, BurstTrieBucket < T, UnitType , BUCKET_SIZE > > >
using  KeyType = T
using  ValueType = UnitType
-  Protected Types inherited from BaseCollection< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > > >
using  IsCollection = std::true_type
-  Protected Types inherited from PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >
using  索引 = void *
-  Protected Member Functions inherited from BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >
  BurstTrieMap ()
  BurstTrieMap ( Pool &&a)
  BurstTrieMap (const Pool &a)
  BurstTrieMap ( BurstTrieMap &&src)
  MAXON_OPERATOR_MOVE_ASSIGNMENT ( BurstTrieMap )
  ~BurstTrieMap ()
SFINAEHelper < Result < void >, typename std::remove_reference< MAP >::type::IsBurstTrieMap >::type  CopyFromImpl ( MAP &&src, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank1 )
void  重置 ()
void  Flush ()
ResultMem   SetCapacityHint ( Int , COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
Int   GetCount () const
Int   GetOperationCountForSearch () const
Int   GetDepth () const
Int   GetMemorySize () const
Iterator   Begin ()
ConstIterator   Begin () const
Iterator   End ()
ConstIterator   End () const
KeyIterator   GetKeys ()
ConstKeyIterator   GetKeys () const
ValueIterator   GetValues ()
ConstValueIterator   GetValues () const
ResultMemT < Iterator InsertEntry (T key, Bool &created= BoolLValue ())
ResultMemT < Iterator Insert (T key, const UnitType &value, Bool &created= BoolLValue ())
ResultMemT < Iterator Insert (T key, UnitType &&value, Bool &created= BoolLValue ())
ResultRef < UnitType InsertKey (T key, Bool &created= BoolLValue ())
const UnitType FindValue (T key) const
UnitType FindValue (T key)
Iterator   Find (T key)
ConstIterator   Find (T key) const
Iterator   FindFloor (T key)
ConstIterator   FindFloor (T key) const
ResultOk < Bool Erase (T key)
IteratorTemplate< false, SUPER >  Erase (const IteratorTemplate< false, SUPER > &position, Int eraseCnt=1)
-  Protected Member Functions inherited from MapBase< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE   MapBase (ARGS &&... args)
MapImpl < BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool > & >  ToMap ()
MapImpl < const BurstTrieMap < T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool > & >  ToMap () const
MAXON_ATTRIBUTE_FORCE_INLINE   operator MapImpl< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool > & > ()
MAXON_ATTRIBUTE_FORCE_INLINE   operator MapImpl< const BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool > & > () const
-  Protected Member Functions inherited from MapBase0< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >, DefaultCompare >
MAXON_ATTRIBUTE_FORCE_INLINE   MapBase0 (ARGS &&... args)
MAXON_ATTRIBUTE_FORCE_INLINE Bool   Contains (typename ByValueParam < T >::type key) const
MAXON_ATTRIBUTE_FORCE_INLINE SFINAEHelper < Bool , typename PAIR::KeyType >::type  Contains (const PAIR &pair) const
ResultRef < UnitType Append (const T &key)
SFINAEHelper < ResultRef < UnitType >, typename PAIR::KeyType >::type  Append (const PAIR &pair)
Result < void >  添加 (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
Result < void >  AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
Result < void >  AppendAllInverse (COLLECTION2 &&other)
Bool   ContainsAllImpl (COLLECTION2 &&other, OverloadRank0 ) const
Result < void >  SubtractImpl (COLLECTION2 &&other, OverloadRank0 )
Bool   IsEqualImpl (const COLLECTION2 &other, COMPARE &&cmp, OverloadRank0 ) const
HashInt   GetHashCode () const
-  Protected Member Functions inherited from BaseCollection< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > > >
MAXON_ATTRIBUTE_FORCE_INLINE   BaseCollection (ARGS &&... args)
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type  operator== (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value, Bool >::type  operator!= (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE std::enable_if< maxon::IsCollection< COLLECTION2 >::value &&! STD_IS_REPLACEMENT (same, typename std::decay< COMPARE >::type, EQUALITY ), Bool >::type  IsEqual (const COLLECTION2 &other, COMPARE &&cmp=COMPARE()) const
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  AppendAll (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  CopyFrom (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags= COLLECTION_RESIZE_FLAGS::FIT_TO_SIZE )
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  Subtract (COLLECTION2 &&other)
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  Intersect (const COLLECTION2 &other)
Bool   Intersects (const COLLECTION2 &other) const
MAXON_ATTRIBUTE_FORCE_INLINE Result < void >  CopyFromImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank0 )
Result < void >  AppendAllImpl (COLLECTION2 &&other, COLLECTION_RESIZE_FLAGS resizeFlags, Bool overwrite, OverloadRank0 )
Result < void >  IntersectImpl (COLLECTION2 &&other, OverloadRank0 )
MAXON_ATTRIBUTE_FORCE_INLINE Bool   IsEmpty () const
MAXON_ATTRIBUTE_FORCE_INLINE Bool   IsPopulated () const
String   ToString (const FormatStatement *formatStatement=nullptr) const
MAXON_ATTRIBUTE_FORCE_INLINE Bool   ContainsAll (COLLECTION2 &&other) const
Bool   ContainsAllImpl (COLLECTION2 &&other, OverloadRank0 ) const
-  Static Protected Member Functions inherited from MapBase0< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >, DefaultCompare >
static const T &  GetMapKey (const T &key)
static const T &  GetMapKey (const PAIR &pair)
-  Static Protected Member Functions inherited from PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >
static void *  AllocNode ( 索引 &index)
static void *  AllocBucket ( 索引 &index)
static void  FreeNode ( 索引 i)
static void  FreeBucket ( 索引 i)
static Bool   IsNode ( 索引 i)
static BurstTrieNode < GROUP_BITS, PointerBurstTriePool < Int , Int >:: 索引 > *  GetNode ( 索引 i)
static BurstTrieBucket < T, UnitType , BUCKET_SIZE > *  GetBucket ( 索引 i)
-  Static Protected Attributes inherited from BurstTrieMap< T, UnitType, 4, 16, BURSTTRIE_SORT::LINEAR_SEARCH, PointerBurstTriePool >
static const Int   GROUP_SIZE
static const Int   GROUP_MASK
static const Int   MAX_LEN
-  Static Protected Attributes inherited from MapBase0< BurstTrieMap< T, UnitType, GROUP_BITS, BUCKET_SIZE, SORT, PointerBurstTriePool >, T, UnitType, PointerBurstTriePool< BurstTrieNode< GROUP_BITS, PointerBurstTriePool< Int, Int >::Index >, BurstTrieBucket< T, UnitType, BUCKET_SIZE > >, DefaultCompare >
static const COLLECTION_KIND   KIND

Member Typedef Documentation

◆  MapType

using MapType = BurstTrieMap <T, UnitType , GROUP_BITS, BUCKET_SIZE, SORT, POOL>

◆  Super

using Super = SetBase < BurstTrieSet <T, GROUP_BITS, BUCKET_SIZE, SORT, POOL>, T, Protected < MapType >, DefaultCompare >
private

◆  IsBurstTrieMap

using IsBurstTrieMap = std::true_type

◆  IsBurstTrieSet

using IsBurstTrieSet = std::true_type

◆  Iterator

using Iterator = typename Super::KeyIterator

◆  ConstIterator

using ConstIterator = typename Super::ConstKeyIterator

构造函数 & 析构函数文档编制

◆  BurstTrieSet() [1/2]

BurstTrieSet ( )

◆  BurstTrieSet() [2/2]

BurstTrieSet ( BurstTrieSet < T, GROUP_BITS, BUCKET_SIZE, SORT, POOL > &&  src )

成员函数文档编制

◆  MAXON_DISALLOW_COPY_AND_ASSIGN()

MAXON_DISALLOW_COPY_AND_ASSIGN ( BurstTrieSet < T, GROUP_BITS, BUCKET_SIZE, SORT, POOL >  )
private

◆  MAXON_OPERATOR_MOVE_ASSIGNMENT()

MAXON_OPERATOR_MOVE_ASSIGNMENT ( BurstTrieSet < T, GROUP_BITS, BUCKET_SIZE, SORT, POOL >  )

◆  GetMap() [1/2]

MapType & GetMap ( )

◆  GetMap() [2/2]

const MapType & GetMap ( ) const

◆  Contains()

Bool Contains ( value ) const

Checks if this set contains value .

参数
[in] value The value to check.
返回
True if this set contains value .

◆  Insert() [1/2]

void Insert ( ) const

◆  Insert() [2/2]

ResultMemT < Iterator > Insert ( value ,
Bool added = BoolLValue()  
)

Adds value to this set. If value is already contained in this set, nothing happens, and added 被设为 false .

参数
[in] value Value to add to this set.
[out] added This will be set to true if the element didn't exist before in the set and it could be added successfully, otherwise it will be set to false.
返回
Iterator to the entry for the given key or OutOfMemoryError if the allocation failed.

◆  InsertKey()

ResultRef <const T> InsertKey ( value ,
Bool added = BoolLValue()  
)

Adds value to this set. If value is already contained in this set, nothing happens, and added 被设为 false .

参数
[in] value Value to add to this set.
[out] added This will be set to true if the element didn't exist before in the set and it could be added successfully, otherwise it will be set to false.
返回
Pointer to the value in the set, or nullptr if the element had to be added, but the allocation failed.

◆  Erase() [1/2]

ResultOk < Bool > Erase ( value )

移除 value from this set. If value isn't contained in this set, nothing happens.

参数
[in] value Value to remove from this set.
返回
Always true for a BurstTrieSet (even if key isn't contained in the set).
True if an entry was found and removed for #value, otherwise false.

◆  Begin() [1/2]

ConstIterator Begin ( ) const

◆  End() [1/2]

ConstIterator End ( ) const

◆  Begin() [2/2]

Iterator Begin ( )

◆  End() [2/2]

Iterator End ( )

◆  Erase() [2/2]

Iterator Erase ( const Iterator it )

◆  Find() [1/2]

Iterator Find

Finds the entry for the given key in this map.

参数
[in] key Key to search for.
返回
Iterator pointing to the entry with the given key , or an invalid iterator if this doesn't exist.

◆  Find() [2/2]

ConstIterator Find

Finds the entry for the given key in this map.

参数
[in] key Key to search for.
返回
Iterator pointing to the entry with the given key , or an invalid iterator if this doesn't exist.

◆  GetCount()

Int GetCount

Returns the number of entries in this map.

返回
Number of entries.

◆  GetOperationCountForSearch()

Int GetOperationCountForSearch

Returns an estimate of the number of operations needed to locate a given key in this map. This is used when two collections are compared: The iteration goes over the collection which would require more operations for search, and each entry is searched in the other collection.

返回
Estimate for the number of operations.

◆  SetCapacityHint()

ResultMem SetCapacityHint

Does nothing for a BurstTrieMap .

返回
Always true .

◆  Reset()

void Reset

Resets the map. This destructs all entries and frees any memory held by the map, so the map will be in a state as if it had been newly constructed.

◆  Flush()

void Flush

Flushes the map. For a BurstTrieMap , this does the same as Reset() , namely it destructs all entries and frees any memory held by the map.

◆  GetMemorySize()

Int GetMemorySize

Returns the memory usage of this map.

返回
Memory size in bytes.

Member Data Documentation

◆  MapType

friend MapType