#include <lscript_tree.h>
Inheritance diagram for LLScriptDeclaration:
Public Member Functions | |
LLScriptDeclaration (S32 line, S32 col, LLScriptType *type, LLScriptIdentifier *identifier, LLScriptExpression *expression) | |
~LLScriptDeclaration () | |
void | recurse (FILE *fp, S32 tabs, S32 tabsize, LSCRIPTCompilePass pass, LSCRIPTPruneType ptype, BOOL &prunearg, LLScriptScope *scope, LSCRIPTType &type, LSCRIPTType basetype, U64 &count, LLScriptByteCodeChunk *chunk, LLScriptByteCodeChunk *heap, S32 stacksize, LLScriptScopeEntry *entry, S32 entrycount, LLScriptLibData **ldata) |
S32 | getSize () |
Public Attributes | |
LLScriptType * | mType |
LLScriptIdentifier * | mIdentifier |
LLScriptExpression * | mExpression |
Definition at line 2043 of file lscript_tree.h.
LLScriptDeclaration::LLScriptDeclaration | ( | S32 | line, | |
S32 | col, | |||
LLScriptType * | type, | |||
LLScriptIdentifier * | identifier, | |||
LLScriptExpression * | expression | |||
) | [inline] |
Definition at line 2046 of file lscript_tree.h.
LLScriptDeclaration::~LLScriptDeclaration | ( | ) | [inline] |
Definition at line 2051 of file lscript_tree.h.
S32 LLScriptDeclaration::getSize | ( | ) | [virtual] |
Reimplemented from LLScriptStatement.
Definition at line 8384 of file lscript_tree.cpp.
References LLScriptType::getSize(), and mType.
void LLScriptDeclaration::recurse | ( | FILE * | fp, | |
S32 | tabs, | |||
S32 | tabsize, | |||
LSCRIPTCompilePass | pass, | |||
LSCRIPTPruneType | ptype, | |||
BOOL & | prunearg, | |||
LLScriptScope * | scope, | |||
LSCRIPTType & | type, | |||
LSCRIPTType | basetype, | |||
U64 & | count, | |||
LLScriptByteCodeChunk * | chunk, | |||
LLScriptByteCodeChunk * | heap, | |||
S32 | stacksize, | |||
LLScriptScopeEntry * | entry, | |||
S32 | entrycount, | |||
LLScriptLibData ** | ldata | |||
) | [virtual] |
Reimplemented from LLScriptStatement.
Definition at line 8389 of file lscript_tree.cpp.
References LLScriptByteCodeChunk::addByte(), LLScriptByteCodeChunk::addBytes(), LLScriptScope::addEntry(), LLScriptByteCodeChunk::addFloat(), LLScriptByteCodeChunk::addInteger(), LLScriptArgString::addType(), cast2stack(), LLScriptScope::checkEntry(), FALSE, LLScriptFilePosition::fdotabs(), gErrorToText, LLScriptGenerateErrorText::getErrors(), LLScriptArgString::getNumber(), LLScriptType::getSize(), LLScriptStatement::gonext(), is_parameter(), legal_assignment(), LIT_GLOBAL, LIT_VARIABLE, LOPC_LOADLP, LOPC_LOADP, LOPC_LOADQP, LOPC_LOADSP, LOPC_LOADVP, LOPC_PUSHARGI, LOPC_PUSHARGQ, LOPC_PUSHARGS, LOPC_PUSHARGV, LOPC_STACKTOL, LSCP_EMIT_ASSEMBLY, LSCP_EMIT_BYTE_CODE, LSCP_EMIT_CIL_ASSEMBLY, LSCP_PRETTY_PRINT, LSCP_PRUNE, LSCP_RESOURCE, LSCP_SCOPE_PASS1, LSCP_TO_STACK, LSCP_TYPE, LSCRIPTOpCodes, LSCRIPTTypeLocalDeclaration, LSERROR_DUPLICATE_NAME, LSERROR_NEED_NEW_SCOPE, LSERROR_TYPE_MISMATCH, LSERROR_UNDEFINED_NAME, LSPRUNE_DEAD_CODE, LST_FLOATINGPOINT, LST_INTEGER, LST_KEY, LST_LIST, LST_QUATERNION, LST_STRING, LST_VECTOR, LLScriptStatement::mAllowDeclarations, LLScriptScopeEntry::mCount, mExpression, mIdentifier, LLScriptScopeEntry::mIDType, LLScriptScopeEntry::mLocals, LLScriptIdentifier::mName, LLScriptScopeEntry::mOffset, LLScriptIdentifier::mScopeEntry, LLScriptScopeEntry::mSize, LLScriptType::mType, LLScriptScopeEntry::mType, mType, NULL, LLScriptIdentifier::recurse(), LLScriptType::recurse(), S32, TRUE, and LLScriptGenerateErrorText::writeError().