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: