#include <YExpression.h>
Inheritance diagram for YEFunction:
Public Member Functions | |
YEFunction (const SymbolEntryPtr entry) | |
YEFunction (std::istream &str) | |
~YEFunction () | |
const SymbolEntryPtr | entry () const |
constTypePtr | attachParameter (YCodePtr code, constTypePtr type) |
constTypePtr | finalize () |
string | toString () const |
virtual YCPValue | evaluate (bool cse=false) |
std::ostream & | toStream (std::ostream &str) const |
constTypePtr | type () const |
string | qualifiedName () const |
virtual bool | attachParameter (const YCPValue &arg, const int pos) |
virtual constTypePtr | wantedParameterType () const |
virtual bool | appendParameter (const YCPValue &arg) |
virtual bool | finishParameters () |
virtual YCPValue | evaluateCall () |
Private Member Functions | |
REP_BODY (YEFunction) | |
Private Attributes | |
const SymbolEntryPtr | m_entry |
ycodelist_t * | m_parameters |
|
|
|
|
|
|
|
Appends a parameter to the call.
Implements Y2Function. |
|
Attaches a parameter to a given position to the call.
Implements Y2Function. |
|
Attach parameter to external function call
|
|
|
|
evaluate YCode to YCPValue if debugger == 0 called for parse time evaluation (i.e. constant subexpression elimination) else called for runtime evaluation Reimplemented from YCode. |
|
Executes the call Implements Y2Function. |
|
'close' function, perform final parameter check if ok, return 0 if missing parameter, return its type if undefined, return Type::Error (wrong type was already reported in attachParameter() |
|
Signal that we're done adding parameters.
Implements Y2Function. |
|
|
|
|
|
writes YCode to a stream see Bytecode for read Implements YCode. |
|
Returns an ASCII representation of the YCode. Reimplemented from YCode. |
|
return type (interesting mostly for function calls) Reimplemented from YCode. |
|
What type is expected for the next appendParameter (val) ? (Used when calling from Perl, to be able to convert from the simple type system of Perl to the elaborate type system of YCP)
Implements Y2Function. |
|
|
|
|