ScummVM API documentation
SQFuncState Struct Reference

Public Member Functions

 SQFuncState (SQSharedState *ss, SQFuncState *parent, CompilerErrorFunc efunc, void *ed)
 
void Error (const SQChar *err)
 
SQFuncStatePushChildState (SQSharedState *ss)
 
void PopChildState ()
 
void AddInstruction (SQOpcode _op, SQInteger arg0=0, SQInteger arg1=0, SQInteger arg2=0, SQInteger arg3=0)
 
void AddInstruction (SQInstruction &i)
 
void SetInstructionParams (SQInteger pos, SQInteger arg0, SQInteger arg1, SQInteger arg2=0, SQInteger arg3=0)
 
void SetInstructionParam (SQInteger pos, SQInteger arg, SQInteger val)
 
SQInstructionGetInstruction (SQInteger pos)
 
void PopInstructions (SQInteger size)
 
void SetStackSize (SQInteger n)
 
SQInteger CountOuters (SQInteger stacksize)
 
void SnoozeOpt ()
 
void AddDefaultParam (SQInteger trg)
 
SQInteger GetDefaultParamCount ()
 
SQInteger GetCurrentPos ()
 
SQInteger GetNumericConstant (const SQInteger cons)
 
SQInteger GetNumericConstant (const SQFloat cons)
 
SQInteger PushLocalVariable (const SQObject &name)
 
void AddParameter (const SQObject &name)
 
SQInteger GetLocalVariable (const SQObject &name)
 
void MarkLocalAsOuter (SQInteger pos)
 
SQInteger GetOuterVariable (const SQObject &name)
 
SQInteger GenerateCode ()
 
SQInteger GetStackSize ()
 
SQInteger CalcStackFrameSize ()
 
void AddLineInfos (SQInteger line, bool lineop, bool force=false)
 
SQFunctionProtoBuildProto ()
 
SQInteger AllocStackPos ()
 
SQInteger PushTarget (SQInteger n=-1)
 
SQInteger PopTarget ()
 
SQInteger TopTarget ()
 
SQInteger GetUpTarget (SQInteger n)
 
void DiscardTarget ()
 
bool IsLocal (SQUnsignedInteger stkpos)
 
SQObject CreateString (const SQChar *s, SQInteger len=-1)
 
SQObject CreateTable ()
 
bool IsConstant (const SQObject &name, SQObject &e)
 
SQInteger GetConstant (const SQObject &cons)
 

Public Attributes

SQInteger _returnexp
 
SQLocalVarInfoVec _vlocals
 
SQIntVec _targetstack
 
SQInteger _stacksize
 
bool _varparams
 
bool _bgenerator
 
SQIntVec _unresolvedbreaks
 
SQIntVec _unresolvedcontinues
 
SQObjectPtrVec _functions
 
SQObjectPtrVec _parameters
 
SQOuterVarVec _outervalues
 
SQInstructionVec _instructions
 
SQLocalVarInfoVec _localvarinfos
 
SQObjectPtr _literals
 
SQObjectPtr _strings
 
SQObjectPtr _name
 
SQObjectPtr _sourcename
 
SQInteger _nliterals
 
SQLineInfoVec _lineinfos
 
SQFuncState_parent
 
SQIntVec _scope_blocks
 
SQIntVec _breaktargets
 
SQIntVec _continuetargets
 
SQIntVec _defaultparams
 
SQInteger _lastline
 
SQInteger _traps
 
SQInteger _outers
 
bool _optimization
 
SQSharedState_sharedstate
 
sqvector< SQFuncState * > _childstates
 

The documentation for this struct was generated from the following file: