|
Om
|
The Operand implementation. More...
#include "operand.hpp"
Inheritance diagram for Om::Language::Operand:
Collaboration diagram for Om::Language::Operand:Public Member Functions | |
| Operand () | |
| template<typename TheProgram > | |
| Operand (std::auto_ptr< TheProgram >) | |
| Operand & | operator= (Operand) |
| virtual Program & | operator* () |
| virtual Program const & | operator* () const |
| virtual void | Clear () |
| bool | Equals (Operand const &) const |
| Program * | GetProgram () |
| Program const * | GetProgram () const |
| virtual bool | IsEmpty () const |
| virtual void | ParseElements (Reader &) |
| virtual void | ParseQuotedElements (Reader &) |
| template<typename TheProgram > | |
| void | SetProgram (std::auto_ptr< TheProgram >) |
| Replaces the Program owned by this Operand with the argument. More... | |
| void | Swap (Operand &) |
| virtual void | TakeElements (Producer &) |
| Takes each Element of the argument. More... | |
| virtual void | TakeElements (Producer const &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| template<typename TheOperand > | |
| void | TakeOperand (TheOperand &) |
| template<typename TheOperator > | |
| void | TakeOperator (TheOperator &) |
| template<typename TheProducer > | |
| void | TakeQuotedProducer (TheProducer &) |
| template<typename TheSeparator > | |
| void | TakeSeparator (TheSeparator &) |
Public Member Functions inherited from Om::Language::DefaultElement< Operand > | |
| virtual | ~DefaultElement ()=0 |
| virtual bool | Equals (Element const &) const |
| bool | Equals (Operand 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 |
Public Member Functions inherited from Om::Language::DefaultConsumer< ThisImplementation, DefaultGiveable< ThisImplementation, Om::Language::Program > > | |
| virtual | ~DefaultConsumer ()=0 |
| virtual void | TakeElement (Operand &) |
| Takes a non-empty Element, which gets copied or swapped. More... | |
| virtual void | TakeElement (Operand const &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| virtual void | TakeElement (Operator &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| virtual void | TakeElement (Operator const &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| virtual void | TakeElement (Separator &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| virtual void | TakeElement (Separator const &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
| virtual void | TakeQuotedElements (Producer &) |
| Constructs and takes an Operand, which takes each Element from the argument Producer. More... | |
| virtual void | TakeQuotedElements (Producer const &) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
Public Member Functions inherited from Om::DefaultGiveable< ThisImplementation, ThisInterface > | |
| virtual | ~DefaultGiveable ()=0 |
Public Member Functions inherited from Om::DefaultMoveable< ThisImplementation, DefaultCopyable< ThisImplementation, Giveable > > | |
| virtual std::auto_ptr< Moveable > | Move () |
| virtual | ~DefaultMoveable ()=0 |
Public Member Functions inherited from Om::DefaultCopyable< ThisImplementation, ThisInterface > | |
| virtual | ~DefaultCopyable ()=0 |
| virtual std::auto_ptr< Copyable > | Copy () const |
Public Member Functions inherited from Om::Copyable | |
| virtual | ~Copyable ()=0 |
Public Member Functions inherited from Om::Taker< ThisImplementation > | |
| virtual | ~Taker ()=0 |
| void | Take (ThisImplementation &) |
| Swaps. More... | |
| void | Take (ThisImplementation const &) |
| Assigns. More... | |
Static Public Member Functions | |
| static char const * | GetName () |
Private Attributes | |
| Owner< Program > | thisProgram |
A non-atomic Element that embeds another Program, which it owns.
Definition at line 55 of file operand.hpp.
| Om::Language::Operand::Operand | ( | ) |
|
explicit |
|
static |
|
virtual |
|
virtual |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
virtual |
| bool Om::Language::Operand::Equals | ( | Operand const & | ) | const |
| Program* Om::Language::Operand::GetProgram | ( | ) |
| Program const* Om::Language::Operand::GetProgram | ( | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
virtual |
|
virtual |
|
virtual |
| void Om::Language::Operand::SetProgram | ( | std::auto_ptr< TheProgram > | ) |
| void Om::Language::Operand::Swap | ( | Operand & | ) |
|
virtual |
Reimplemented from Om::Language::DefaultProgram< ThisImplementation, ThisInterface >.
|
virtual |
Reimplemented from Om::Language::DefaultProgram< ThisImplementation, ThisInterface >.
| void Om::Language::Operand::TakeOperand | ( | TheOperand & | ) |
| void Om::Language::Operand::TakeOperator | ( | TheOperator & | ) |
| void Om::Language::Operand::TakeQuotedProducer | ( | TheProducer & | ) |
| void Om::Language::Operand::TakeSeparator | ( | TheSeparator & | ) |
Definition at line 140 of file operand.hpp.