EraseIterator< COLLECTION, SWAP_ERASE, false > Class Template Reference

#include <foreach.h>

Inheritance diagram for EraseIterator< COLLECTION, SWAP_ERASE, false >:

Public Types

using Super = ForEachIterator< EraseIterator, typename COLLECTION::Iterator >
 
- Public Types inherited from ForEachIterator< EraseIterator< COLLECTION, SWAP_ERASE, false >, COLLECTION::Iterator >
using IsForEachIterator = std::true_type
 

Public Member Functions

 EraseIterator (COLLECTION &collection)
 
 EraseIterator (EraseIterator &&src)
 
void Erase ()
 
MAXON_ATTRIBUTE_FORCE_INLINE operator Bool () const
 
void operator++ ()
 
void operator++ (int)
 
- Public Member Functions inherited from ForEachIterator< EraseIterator< COLLECTION, SWAP_ERASE, false >, COLLECTION::Iterator >
MAXON_ATTRIBUTE_FORCE_INLINE ForEachIterator (ARGS &&... args)
 
String ToString (const FormatStatement *formatStatement=nullptr)
 
EraseIterator< COLLECTION, SWAP_ERASE, false > & Find (const T &v)
 
Int FindIndex (const T &v)
 
MAXON_ATTRIBUTE_FORCE_INLINE Bool Contains (const T &v)
 
MAXON_ATTRIBUTE_FORCE_INLINE Wrapper begin ()
 

Private Member Functions

void operator-- ()
 
void operator-- (int)
 
void operator+= (int)
 
void operator-= (int)
 
void operator+ (int)
 
void operator- (int)
 
 MAXON_DISALLOW_COPY_AND_ASSIGN (EraseIterator)
 

Private Attributes

COLLECTION * _collection
 
COLLECTION::Iterator _end
 
Bool _erased
 

Additional Inherited Members

- Static Public Member Functions inherited from ForEachIterator< EraseIterator< COLLECTION, SWAP_ERASE, false >, COLLECTION::Iterator >
static MAXON_ATTRIBUTE_FORCE_INLINE PRIVATE_MAXON_RBF_SENTINEL (Wrapper) end()
 

Member Typedef Documentation

◆ Super

using Super = ForEachIterator<EraseIterator, typename COLLECTION::Iterator>

Constructor & Destructor Documentation

◆ EraseIterator() [1/2]

EraseIterator ( COLLECTION &  collection)
explicit

◆ EraseIterator() [2/2]

EraseIterator ( EraseIterator< COLLECTION, SWAP_ERASE, false > &&  src)

Member Function Documentation

◆ Erase()

void Erase ( )

◆ operator Bool()

MAXON_ATTRIBUTE_FORCE_INLINE operator Bool ( ) const
explicit

◆ operator++() [1/2]

void operator++ ( )

◆ operator++() [2/2]

void operator++ ( int  )

◆ operator--() [1/2]

void operator-- ( )
private

◆ operator--() [2/2]

void operator-- ( int  )
private

◆ operator+=()

void operator+= ( int  )
private

◆ operator-=()

void operator-= ( int  )
private

◆ operator+()

void operator+ ( int  )
private

◆ operator-()

void operator- ( int  )
private

◆ MAXON_DISALLOW_COPY_AND_ASSIGN()

MAXON_DISALLOW_COPY_AND_ASSIGN ( EraseIterator< COLLECTION, SWAP_ERASE, false >  )
private

Member Data Documentation

◆ _collection

COLLECTION* _collection
private

◆ _end

COLLECTION::Iterator _end
private

◆ _erased

Bool _erased
private