SetImpl< SET > Class Template Reference Data Structures
#include <set.h>
Public Types |
|
using | SetType = typename std::decay< SET >::type |
using | ValueType = typename SetType::ValueType |
using | Super = typename std::conditional< CONSTSET ||! REFERENCE , SetInterface < ValueType >, NonConstSet < ValueType > >::type |
using | 接口 = typename Super::Interface |
using | Iterator = typename Interface::Iterator |
using | ConstIterator = typename Interface::ConstIterator |
公共成员函数 |
|
MAXON_IMPLEMENTATION_SIMPLE ( SetImpl , typename) | |
SetImpl () | |
SetImpl (SET &&set) | |
SetImpl ( SetImpl && src ) | |
Int | GetCount () const |
Bool | Contains (const ValueType &value) const |
Result < void > | Insert (const ValueType &value, Bool &added= BoolLValue ()) |
Result < void > | Insert ( ValueType &&value, Bool &added= BoolLValue ()) |
Result < Bool > | Erase (const ValueType &value) |
Iterator | Erase (const Iterator &iterator) |
Result < void > | CopyFrom (const 接口 &other) |
Result < 接口 * > | Clone ( Bool cloneElements) const |
String | ToString (const FormatStatement *formatStatement=nullptr) const |
Int | GetMemorySize () const |
const DataType & | GetValueDataType () const |
void | 重置 () |
void | Flush () |
void | IteratorInit ( Iterator *it, Bool end ) |
void | IteratorInit ( ConstIterator *it, Bool end ) const |
void | IteratorInitMove ( Iterator *dest, Iterator * src ) const |
void | IteratorInitMove ( ConstIterator *dest, ConstIterator * src ) const |
void | IteratorFree ( Iterator *it) const |
void | IteratorFree ( ConstIterator *it) const |
Bool | IteratorIsEqual (const Iterator *a, const Iterator *b) const |
Bool | IteratorIsEqual (const ConstIterator *a, const ConstIterator *b) const |
void | IteratorInc ( Iterator *it) const |
void | IteratorInc ( ConstIterator *it) const |
const ValueType * | IteratorGet (const Iterator *it) const |
const ValueType * | IteratorGet (const ConstIterator *it) const |
std::add_lvalue_reference< SET >::type | GetSet () |
const SetType & | GetSet () const |
静态公共属性 |
|
static const Bool | CONSTSET |
static const Bool | REFERENCE |
私有成员函数 |
|
MAXON_DISALLOW_COPY_AND_ASSIGN ( SetImpl ) |
Static Private Member Functions |
|
static SetType::Iterator & | GetIterator ( Iterator *it) |
static SetType::ConstIterator & | GetIterator ( ConstIterator *it) |
static const SetType::Iterator & | GetIterator (const Iterator *it) |
static const SetType::ConstIterator & | GetIterator (const ConstIterator *it) |
Private Attributes |
|
SET | _set |
using SetType = typename std::decay<SET>::type |
using ValueType = typename SetType::ValueType |
using Super = typename std::conditional< CONSTSET || ! REFERENCE , SetInterface < ValueType >, NonConstSet < ValueType > >::type |
using 接口 = typename Super::Interface |
using Iterator = typename Interface::Iterator |
using ConstIterator = typename Interface::ConstIterator |
SetImpl | ( | ) |
|
explicit |
SetImpl | ( | SetImpl < SET > && | src | ) |
MAXON_IMPLEMENTATION_SIMPLE | ( | SetImpl < SET > | , |
typename | |||
) |
Int GetCount | ( | ) | const |
Bool Contains | ( | const ValueType & | value | ) | const |
Result <void> Insert | ( | const ValueType & | value , |
Bool & |
added
=
BoolLValue()
|
||
) |
Result <void> Insert | ( | ValueType && | value , |
Bool & |
added
=
BoolLValue()
|
||
) |
Result < Bool > Erase | ( | const ValueType & | value | ) |
Iterator Erase | ( | const Iterator & | iterator | ) |
Result <void> CopyFrom | ( | const 接口 & | other | ) |
Result < 接口 *> Clone | ( | Bool | cloneElements | ) | const |
String ToString | ( | const FormatStatement * |
formatStatement
=
nullptr
|
) | const |
Int GetMemorySize | ( | ) | const |
const DataType & GetValueDataType | ( | ) | const |
void Reset | ( | ) |
void Flush | ( | ) |
void IteratorInit | ( | Iterator * | it , |
Bool | end | ||
) |
void IteratorInit | ( | ConstIterator * | it , |
Bool | end | ||
) | const |
void IteratorInitMove | ( | Iterator * | dest , |
Iterator * | src | ||
) | const |
void IteratorInitMove | ( | ConstIterator * | dest , |
ConstIterator * | src | ||
) | const |
void IteratorFree | ( | Iterator * | it | ) | const |
void IteratorFree | ( | ConstIterator * | it | ) | const |
Bool IteratorIsEqual | ( | const Iterator * | a , |
const Iterator * | b | ||
) | const |
Bool IteratorIsEqual | ( | const ConstIterator * | a , |
const ConstIterator * | b | ||
) | const |
void IteratorInc | ( | Iterator * | it | ) | const |
void IteratorInc | ( | ConstIterator * | it | ) | const |
const ValueType * IteratorGet | ( | const Iterator * | it | ) | const |
const ValueType * IteratorGet | ( | const ConstIterator * | it | ) | const |
std::add_lvalue_reference<SET>::type GetSet | ( | ) |
const SetType & GetSet | ( | ) | const |
|
static private |
|
static private |
|
static private |
|
static private |
|
private |
|
|
SET _set | private |