Om
Public Member Functions | Private Attributes | List of all members
Om::Source::ContainerBackSource< ThisItem, ThisContainer > Class Template Reference

A Source adapter for a container; pulls items from the back. More...

#include "container_back_source.hpp"

+ Inheritance diagram for Om::Source::ContainerBackSource< ThisItem, ThisContainer >:
+ Collaboration diagram for Om::Source::ContainerBackSource< ThisItem, ThisContainer >:

Public Member Functions

 ContainerBackSource (ThisContainer &)
 
ContainerBackSourceoperator= (ContainerBackSource)
 
virtual bool operator! () const
 
virtual ThisItem & operator* () const
 
bool Equals (ContainerBackSource const &) const
 
virtual void Pop ()
 Pops the current item. More...
 
void Swap (ContainerBackSource &)
 
- Public Member Functions inherited from Om::Source::DefaultSource< ThisItem, ContainerBackSource< ThisItem, ThisContainer > >
virtual ~DefaultSource ()=0
 
ContainerBackSource< ThisItem, ThisContainer > & operator++ ()
 Pulls the next item from the Source. More...
 
ContainerBackSource< ThisItem, ThisContainer > operator++ (int)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
virtual bool Equals (Source< ThisItem > const &) const
 
bool Equals (ContainerBackSource< ThisItem, ThisContainer > const &) const
 
- Public Member Functions inherited from Om::Source::Source< ThisItem >
virtual ~Source ()=0
 
ThisItem * operator-> () const
 
 operator Boolean () const
 Implements the Safe Boolean idiom. More...
 

Private Attributes

ThisContainer & thisContainer
 The container to pull from. More...
 

Additional Inherited Members

- Public Types inherited from Om::Source::Source< ThisItem >
typedef void(Source::* Boolean) () const
 The implementation of the Safe Boolean idiom. More...
 

Detailed Description

template<typename ThisItem, typename ThisContainer>
class Om::Source::ContainerBackSource< ThisItem, ThisContainer >

Definition at line 36 of file container_back_source.hpp.

Constructor & Destructor Documentation

◆ ContainerBackSource()

template<typename ThisItem , typename ThisContainer >
Om::Source::ContainerBackSource< ThisItem, ThisContainer >::ContainerBackSource ( ThisContainer &  )
explicit

Member Function Documentation

◆ operator=()

template<typename ThisItem , typename ThisContainer >
ContainerBackSource& Om::Source::ContainerBackSource< ThisItem, ThisContainer >::operator= ( ContainerBackSource< ThisItem, ThisContainer >  )

◆ operator!()

template<typename ThisItem , typename ThisContainer >
virtual bool Om::Source::ContainerBackSource< ThisItem, ThisContainer >::operator! ( ) const
virtual
Returns
True if empty.

Implements Om::Source::Source< ThisItem >.

◆ operator*()

template<typename ThisItem , typename ThisContainer >
virtual ThisItem& Om::Source::ContainerBackSource< ThisItem, ThisContainer >::operator* ( ) const
virtual

◆ Equals()

template<typename ThisItem , typename ThisContainer >
bool Om::Source::ContainerBackSource< ThisItem, ThisContainer >::Equals ( ContainerBackSource< ThisItem, ThisContainer > const &  ) const

◆ Pop()

template<typename ThisItem , typename ThisContainer >
virtual void Om::Source::ContainerBackSource< ThisItem, ThisContainer >::Pop ( )
virtual
Precondition
Not empty.

Implements Om::Source::Source< ThisItem >.

◆ Swap()

template<typename ThisItem , typename ThisContainer >
void Om::Source::ContainerBackSource< ThisItem, ThisContainer >::Swap ( ContainerBackSource< ThisItem, ThisContainer > &  )

Member Data Documentation

◆ thisContainer

template<typename ThisItem , typename ThisContainer >
ThisContainer& Om::Source::ContainerBackSource< ThisItem, ThisContainer >::thisContainer
private

Definition at line 75 of file container_back_source.hpp.


The documentation for this class was generated from the following file: