Om
Public Member Functions | Private Member Functions | List of all members
Om::Language::DefaultElement< ThisImplementation, ThisInterface > Class Template Referenceabstract

A partial implementation of Element. More...

#include "default_element.hpp"

+ Inheritance diagram for Om::Language::DefaultElement< ThisImplementation, ThisInterface >:
+ Collaboration diagram for Om::Language::DefaultElement< ThisImplementation, ThisInterface >:

Public Member Functions

virtual ~DefaultElement ()=0
 
virtual bool Equals (Element const &) const
 
bool Equals (ThisImplementation const &) const
 
virtual std::auto_ptr< Om::Source::Source< Element > > GetElementRange ()
 
virtual std::auto_ptr< Om::Source::Source< Element const > > GetElementRange () const
 
virtual void GiveElements (Consumer &)
 
virtual void GiveElements (Consumer &) const
 
- Public Member Functions inherited from Om::Language::DefaultProgram< ThisImplementation, ThisInterface >
virtual ~DefaultProgram ()=0
 
virtual bool Equals (Program const &) const
 
virtual void TakeElements (Producer &)
 
virtual void TakeElements (Producer const &)
 
- Public Member Functions inherited from Om::Language::DefaultConsumer< ThisImplementation, DefaultGiveable< ThisImplementation, ThisInterface > >
virtual ~DefaultConsumer ()=0
 
virtual void TakeElement (Operand &)
 
virtual void TakeElement (Operand const &)
 
virtual void TakeElement (Operator &)
 
virtual void TakeElement (Operator const &)
 
virtual void TakeElement (Separator &)
 
virtual void TakeElement (Separator const &)
 
virtual void TakeQuotedElements (Producer &)
 
virtual void TakeQuotedElements (Producer const &)
 
- Public Member Functions inherited from Om::DefaultGiveable< ThisImplementation, ThisInterface >
virtual ~DefaultGiveable ()=0
 
- Public Member Functions inherited from Om::DefaultMoveable< ThisImplementation, DefaultCopyable< ThisImplementation, ThisInterface > >
virtual std::auto_ptr< MoveableMove ()
 
virtual ~DefaultMoveable ()=0
 
- Public Member Functions inherited from Om::DefaultCopyable< ThisImplementation, ThisInterface >
virtual ~DefaultCopyable ()=0
 
virtual std::auto_ptr< CopyableCopy () const
 
- Public Member Functions inherited from Om::Taker< ThisImplementation >
virtual ~Taker ()=0
 
void Take (ThisImplementation &)
 Swaps. More...
 
void Take (ThisImplementation const &)
 Assigns. More...
 

Private Member Functions

Elementoperator= (Element const &)
 

Detailed Description

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
class Om::Language::DefaultElement< ThisImplementation, ThisInterface >

Definition at line 38 of file default_element.hpp.

Constructor & Destructor Documentation

◆ ~DefaultElement()

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual Om::Language::DefaultElement< ThisImplementation, ThisInterface >::~DefaultElement ( )
pure virtual

Member Function Documentation

◆ Equals() [1/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual bool Om::Language::DefaultElement< ThisImplementation, ThisInterface >::Equals ( Element const &  ) const
virtual

Reimplemented in Om::Language::Null.

◆ Equals() [2/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
bool Om::Language::DefaultElement< ThisImplementation, ThisInterface >::Equals ( ThisImplementation const &  ) const
Note
This is a non-virtual declaration that will force a link error if undefined (which could cause infinite recursion in the other form).

◆ GetElementRange() [1/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual std::auto_ptr< Om::Source::Source<Element> > Om::Language::DefaultElement< ThisImplementation, ThisInterface >::GetElementRange ( )
virtual

◆ GetElementRange() [2/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual std::auto_ptr< Om::Source::Source<Element const> > Om::Language::DefaultElement< ThisImplementation, ThisInterface >::GetElementRange ( ) const
virtual

◆ GiveElements() [1/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual void Om::Language::DefaultElement< ThisImplementation, ThisInterface >::GiveElements ( Consumer )
virtual

Reimplemented in Om::Language::Null.

◆ GiveElements() [2/2]

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
virtual void Om::Language::DefaultElement< ThisImplementation, ThisInterface >::GiveElements ( Consumer ) const
virtual

Reimplemented in Om::Language::Null.

◆ operator=()

template<typename ThisImplementation, typename ThisInterface = Om::Language::Element>
Element& Om::Language::DefaultElement< ThisImplementation, ThisInterface >::operator= ( Element const &  )
private

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