Proud::CFastList< E, ETraits > Class Template Reference

Classes

class  const_iterator
 
class  iterator
 
class  value_type
 

Public Types

typedef ETraits::INARGTYPE INARGTYPE
 

Public Member Functions

intptr_t GetCount () const throw ()
 
bool IsEmpty () const throw ()
 
E & GetHead ()
 
const E & GetHead () const
 
E & GetTail ()
 
const E & GetTail () const
 
RemoveHead ()
 
RemoveTail ()
 
void RemoveHeadNoReturn () throw ()
 
void RemoveTailNoReturn () throw ()
 
Proud::Position AddHead ()
 
Proud::Position AddHead (INARGTYPE element)
 
void AddHeadList (const CFastList *plNew)
 
Proud::Position AddTail ()
 
Proud::Position AddTail (INARGTYPE element)
 
void AddTailList (const CFastList *plNew)
 
void RemoveAll () throw ()
 
void Clear ()
 
Proud::Position GetHeadPosition () const throw ()
 
Proud::Position GetTailPosition () const throw ()
 
E & GetNext (Proud::Position &pos)
 
const E & GetNext (Proud::Position &pos) const
 
E & GetPrev (Proud::Position &pos)
 
const E & GetPrev (Proud::Position &pos) const throw ()
 
E & GetAt (Proud::Position pos)
 
const E & GetAt (Proud::Position pos) const
 
void SetAt (Proud::Position pos, INARGTYPE element)
 
Proud::Position RemoveAt (Proud::Position pos) throw ()
 
Proud::Position InsertBefore (Proud::Position pos, INARGTYPE element)
 
Proud::Position InsertAfter (Proud::Position pos, INARGTYPE element)
 
Proud::Position Find (INARGTYPE element, Proud::Position posStartAfter=NULL) const throw ()
 
Proud::Position FindIndex (intptr_t iElement) const throw ()
 
void MoveToHead (Proud::Position pos)
 
void MoveToTail (Proud::Position pos)
 
void SwapElements (Proud::Position pos1, Proud::Position pos2) throw ()
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
iterator erase (iterator iter)
 
bool Equals (const CFastList &rhs) const
 

Friends

class iterator
 
class const_iterator
 

Detailed Description

template<typename E, typename ETraits = CPNElementTraits< E >>
class Proud::CFastList< E, ETraits >

Linked List that can be processed with extremely fast.

  • Uses CFastHeap internally. Therefore, has little cost at adding/deleting element. However, it must correctly follow all the rules described in Fast heap.
  • In contrast with CFastArray, classes can be used with constructor, destructor and copy assignment operator.
Parameters
Eclause type of collection
ETraitscharacteristic that handles collection clause
AllocTone of the values of AllocType

Member Function Documentation

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::AddHead ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::AddHead ( INARGTYPE  element)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::AddHeadList ( const CFastList< E, ETraits > *  plNew)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::AddTail ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::AddTail ( INARGTYPE  element)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::AddTailList ( const CFastList< E, ETraits > *  plNew)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
iterator Proud::CFastList< E, ETraits >::begin ( )
inline

Performs a role as same name method of STL

template<typename E, typename ETraits = CPNElementTraits< E >>
const_iterator Proud::CFastList< E, ETraits >::begin ( ) const
inline

Performs a role as same name method of STL

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::Clear ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
iterator Proud::CFastList< E, ETraits >::end ( )
inline

Performs a role as same name method of STL

template<typename E, typename ETraits = CPNElementTraits< E >>
const_iterator Proud::CFastList< E, ETraits >::end ( ) const
inline

Performs a role as same name method of STL

template<typename E, typename ETraits = CPNElementTraits< E >>
bool Proud::CFastList< E, ETraits >::Equals ( const CFastList< E, ETraits > &  rhs) const
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
iterator Proud::CFastList< E, ETraits >::erase ( iterator  iter)
inline

Performs a role as same name method of STL

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::Find ( INARGTYPE  element,
Proud::Position  posStartAfter = NULL 
) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::FindIndex ( intptr_t  iElement) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E& Proud::CFastList< E, ETraits >::GetAt ( Proud::Position  pos)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
const E& Proud::CFastList< E, ETraits >::GetAt ( Proud::Position  pos) const
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E& Proud::CFastList< E, ETraits >::GetHead ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
const E& Proud::CFastList< E, ETraits >::GetHead ( ) const
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::GetHeadPosition ( ) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E& Proud::CFastList< E, ETraits >::GetNext ( Proud::Position pos)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
const E& Proud::CFastList< E, ETraits >::GetNext ( Proud::Position pos) const
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E& Proud::CFastList< E, ETraits >::GetPrev ( Proud::Position pos)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
const E& Proud::CFastList< E, ETraits >::GetPrev ( Proud::Position pos) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E& Proud::CFastList< E, ETraits >::GetTail ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
const E& Proud::CFastList< E, ETraits >::GetTail ( ) const
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::GetTailPosition ( ) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::InsertAfter ( Proud::Position  pos,
INARGTYPE  element 
)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::InsertBefore ( Proud::Position  pos,
INARGTYPE  element 
)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
bool Proud::CFastList< E, ETraits >::IsEmpty ( ) const throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::MoveToHead ( Proud::Position  pos)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::MoveToTail ( Proud::Position  pos)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::RemoveAll ( ) throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
Proud::Position Proud::CFastList< E, ETraits >::RemoveAt ( Proud::Position  pos) throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E Proud::CFastList< E, ETraits >::RemoveHead ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::RemoveHeadNoReturn ( ) throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
E Proud::CFastList< E, ETraits >::RemoveTail ( )
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::RemoveTailNoReturn ( ) throw ()
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::SetAt ( Proud::Position  pos,
INARGTYPE  element 
)
inline

TODO:translate needed.

template<typename E, typename ETraits = CPNElementTraits< E >>
void Proud::CFastList< E, ETraits >::SwapElements ( Proud::Position  pos1,
Proud::Position  pos2 
) throw ()
inline

TODO:translate needed.