1#ifndef OPAL_ADeferred_HH
2#define OPAL_ADeferred_HH
54 explicit ADeferred(
const std::vector<T> &val);
74 virtual void print(std::ostream &)
const;
169 "Recursive expression definitions found.");
188 "Evaluating expression \"" +
189 this->getImage() +
"\": " + ex.
what());
193 "Evaluating expression \"" +
194 this->getImage() +
"\": " + ex.
what());
195 }
catch(std::exception &ex) {
198 "Standard C++ exception while evaluating \"" +
203 "Unknown exception while evaluating \"" +
225 os <<
"; overrides: {";
226 typename ArrayOfPtrs<T>::const_iterator i =
itsOverrides.begin();
229 if(i->isValid())(*i)->print(os);
Representation objects and parsers for attribute expressions.
std::string getImage() const
Convert to string.
A pointer to a scalar expression.
An array of pointers to scalar expressions.
A pointer to an array expression.
void operator=(const ADeferred< T > &)
ArrayOfPtrs< T > itsOverrides
Overrides for single components.
virtual void print(std::ostream &) const
Print the attribute value.
virtual std::vector< T > evaluate()
Evaluate.
virtual bool isExpression() const
Get expression flag.
ADeferred()
Default constructor.
PtrToArray< T > itsLaw
The generating law for the array expression.
virtual ADeferred< T > * clone() const
Make clone.
void setComponent(int i, const PtrToScalar< T > expr)
Set a component of the value.
AValue()
Default constructor.
std::vector< T > value
The value of the attribute.
The abstract base class for all exceptions in CLASSIC.
The base class for all OPAL exceptions.
virtual const std::string & what() const
Return the message string for the exception.
virtual const std::string & where() const
Return the name of the method or function which detected the exception.