#include <YExpression.h>
Inheritance diagram for YEBuiltin:
Public Member Functions | |
YEBuiltin (declaration_t *decl, YBlockPtr parameterblock=0, constTypePtr type=0) | |
YEBuiltin (std::istream &str) | |
~YEBuiltin () | |
declaration_t * | decl () const |
constTypePtr | finalize () |
void | closeParameters () |
constTypePtr | returnType () const |
constTypePtr | attachParameter (YCodePtr code, constTypePtr type=Type::Unspec) |
constTypePtr | attachSymVariable (const char *name, constTypePtr type, unsigned int line, TableEntry *&tentry) |
string | toString () const |
YCPValue | evaluate (bool cse=false) |
std::ostream & | toStream (std::ostream &str) const |
constTypePtr | type () const |
YBlockPtr | parameterBlock () const |
Private Member Functions | |
REP_BODY (YEBuiltin) | |
Private Attributes | |
declaration_t * | m_decl |
constFunctionTypePtr | m_type |
YBlockPtr | m_parameterblock |
ycodelist_t * | m_parameters |
|
|
|
|
|
|
|
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. |
|
'close' function, perform final parameter check if ok, return 0 if wrong signature (wrong parameter count, template mismatch) return expected signature if undefined, return Type::Error (wrong type was already reported in attachParameter()) |
|
|
|
|
|
|
|
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. |
|
|
|
|
|
|
|
|