Om
|
Any object that items can be pulled from. More...
#include "source.hpp"
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 | |
Source & | operator= (Source const &) |
void | UncomparableBoolean () const |
Definition at line 31 of file source.hpp.
typedef void(Source::* Om::Source::Source< ThisItem >::Boolean) () const |
Definition at line 39 of file source.hpp.
|
pure virtual |
|
pure virtual |
Implemented in Om::Source::StreamSource< ThisItem >, Om::Source::SingletonSource< ThisItem >, Om::Source::IteratorSource< ThisItem, ThisIterator >, Om::Source::IteratorPairSource< ThisItem, ThisIterator >, Om::Source::EmptySource< ThisItem >, Om::Source::ContainerFrontSource< ThisItem, ThisContainer >, Om::Source::ContainerBackSource< ThisItem, ThisContainer >, Om::Source::CodePointStringFrontSource< ThisStringIterator >, Om::Source::CodePointStringBackSource< ThisStringIterator >, Om::Source::CodePointSource< ThisCodeUnitIterator >, Om::Source::CodePointSource< IteratorSource< char const, char const * > >, Om::Language::Reader, Om::Language::Lexicon::ElementRange, Om::Language::Form::ElementRange, and Om::Language::Expression::ElementRange.
ThisItem* Om::Source::Source< ThisItem >::operator-> | ( | ) | const |
|
pure virtual |
Implemented in Om::Source::StreamSource< ThisItem >, Om::Source::SingletonSource< ThisItem >, Om::Source::IteratorSource< ThisItem, ThisIterator >, Om::Source::IteratorPairSource< ThisItem, ThisIterator >, Om::Source::EmptySource< ThisItem >, Om::Source::ContainerFrontSource< ThisItem, ThisContainer >, Om::Source::ContainerBackSource< ThisItem, ThisContainer >, Om::Source::CodePointStringFrontSource< ThisStringIterator >, Om::Source::CodePointStringBackSource< ThisStringIterator >, Om::Source::CodePointSource< ThisCodeUnitIterator >, Om::Source::CodePointSource< IteratorSource< char const, char const * > >, Om::Language::Reader, Om::Language::Lexicon::ElementRange, Om::Language::Form::ElementRange, and Om::Language::Expression::ElementRange.
Om::Source::Source< ThisItem >::operator Boolean | ( | ) | const |
|
pure virtual |
Implemented in Om::Source::DefaultSource< ThisItem, ThisImplementation >, Om::Source::DefaultSource< ThisItem, IteratorPairSource< ThisItem, ThisIterator > >, Om::Source::DefaultSource< ThisItem, IteratorSource< ThisItem, ThisIterator > >, Om::Source::DefaultSource< ThisItem, ContainerBackSource< ThisItem, ThisContainer > >, Om::Source::DefaultSource< ThisItem, ContainerFrontSource< ThisItem, ThisContainer > >, Om::Source::DefaultSource< ThisItem, SingletonSource< ThisItem > >, and Om::Source::DefaultSource< ThisItem, EmptySource< ThisItem > >.
|
pure virtual |
Implemented in Om::Source::StreamSource< ThisItem >, Om::Source::SingletonSource< ThisItem >, Om::Source::IteratorSource< ThisItem, ThisIterator >, Om::Source::IteratorPairSource< ThisItem, ThisIterator >, Om::Source::EmptySource< ThisItem >, Om::Source::ContainerFrontSource< ThisItem, ThisContainer >, Om::Source::ContainerBackSource< ThisItem, ThisContainer >, Om::Source::CodePointStringFrontSource< ThisStringIterator >, Om::Source::CodePointStringBackSource< ThisStringIterator >, Om::Source::CodePointSource< ThisCodeUnitIterator >, Om::Source::CodePointSource< IteratorSource< char const, char const * > >, Om::Language::Reader, Om::Language::Lexicon::ElementRange, Om::Language::Form::ElementRange, and Om::Language::Expression::ElementRange.
|
private |
|
private |