Om
Public Types | Public Member Functions | Private Member Functions | List of all members
Om::Source::Source< ThisItem > Class Template Referenceabstract

Any object that items can be pulled from. More...

#include "source.hpp"

+ Inheritance diagram for Om::Source::Source< ThisItem >:

Public Types

typedef void(Source::* Boolean) () const
 The implementation of the Safe Boolean idiom. More...
 

Public Member Functions

virtual ~Source ()=0
 
virtual ThisItem & operator * () const =0
 
ThisItem * operator -> () const
 
virtual bool operator ! () const =0
 
 operator Boolean () const
 Implements the Safe Boolean idiom. More...
 
virtual bool Equals (Source const &) const =0
 
virtual void Pop ()=0
 Pops the current item. More...
 

Private Member Functions

Sourceoperator= (Source const &)
 
void UncomparableBoolean () const
 

Detailed Description

template<typename ThisItem>
class Om::Source::Source< ThisItem >

Definition at line 31 of file source.hpp.

Member Typedef Documentation

◆ Boolean

template<typename ThisItem>
typedef void(Source::* Om::Source::Source< ThisItem >::Boolean) () const

Definition at line 39 of file source.hpp.

Constructor & Destructor Documentation

◆ ~Source()

template<typename ThisItem>
virtual Om::Source::Source< ThisItem >::~Source ( )
pure virtual

Member Function Documentation

◆ operator *()

template<typename ThisItem>
virtual ThisItem& Om::Source::Source< ThisItem >::operator * ( ) const
pure virtual

◆ operator ->()

template<typename ThisItem>
ThisItem* Om::Source::Source< ThisItem >::operator -> ( ) const

◆ operator !()

template<typename ThisItem>
virtual bool Om::Source::Source< ThisItem >::operator ! ( ) const
pure virtual

◆ operator Boolean()

template<typename ThisItem>
Om::Source::Source< ThisItem >::operator Boolean ( ) const

◆ Equals()

template<typename ThisItem>
virtual bool Om::Source::Source< ThisItem >::Equals ( Source< ThisItem > const &  ) const
pure virtual

◆ Pop()

template<typename ThisItem>
virtual void Om::Source::Source< ThisItem >::Pop ( )
pure virtual

◆ operator=()

template<typename ThisItem>
Source& Om::Source::Source< ThisItem >::operator= ( Source< ThisItem > const &  )
private

◆ UncomparableBoolean()

template<typename ThisItem>
void Om::Source::Source< ThisItem >::UncomparableBoolean ( ) const
private

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