ScummVM API documentation
asCScriptFunction Class Reference
Inheritance diagram for asCScriptFunction:
asIScriptFunction

Classes

struct  ScriptFunctionData
 

Public Member Functions

asIScriptEngine * GetEngine () const
 
int AddRef () const
 
int Release () const
 
int GetId () const
 
asEFuncType GetFuncType () const
 
const char * GetModuleName () const
 
asIScriptModule * GetModule () const
 
const char * GetScriptSectionName () const
 
const char * GetConfigGroup () const
 
asDWORD GetAccessMask () const
 
void * GetAuxiliary () const
 
asITypeInfo * GetObjectType () const
 
const char * GetObjectName () const
 
const char * GetName () const
 
const char * GetNamespace () const
 
const char * GetDeclaration (bool includeObjectName=true, bool includeNamespace=false, bool includeParamNames=false) const
 
bool IsReadOnly () const
 
bool IsPrivate () const
 
bool IsProtected () const
 
bool IsFinal () const
 
bool IsOverride () const
 
bool IsShared () const
 
bool IsExplicit () const
 
bool IsProperty () const
 
asUINT GetParamCount () const
 
int GetParam (asUINT index, int *typeId, asDWORD *flags=0, const char **name=0, const char **defaultArg=0) const
 
int GetReturnTypeId (asDWORD *flags=0) const
 
int GetTypeId () const
 
bool IsCompatibleWithTypeId (int typeId) const
 
void * GetDelegateObject () const
 
asITypeInfo * GetDelegateObjectType () const
 
asIScriptFunction * GetDelegateFunction () const
 
asUINT GetVarCount () const
 
int GetVar (asUINT index, const char **name, int *typeId=0) const
 
const char * GetVarDecl (asUINT index, bool includeNamespace=false) const
 
int FindNextLineWithCode (int line) const
 
asDWORD * GetByteCode (asUINT *length=0)
 
void * SetUserData (void *userData, asPWORD type)
 
void * GetUserData (asPWORD type) const
 
void SetShared (bool set)
 
void SetReadOnly (bool set)
 
void SetFinal (bool set)
 
void SetOverride (bool set)
 
void SetExplicit (bool set)
 
void SetProtected (bool set)
 
void SetPrivate (bool set)
 
void SetProperty (bool set)
 
bool IsFactory () const
 
 asCScriptFunction (asCScriptEngine *engine, asCModule *mod, asEFuncType funcType)
 
int AddRefInternal ()
 
int ReleaseInternal ()
 
void DestroyHalfCreated ()
 
void DestroyInternal ()
 
void AddVariable (asCString &name, asCDataType &type, int stackOffset)
 
int GetSpaceNeededForArguments ()
 
int GetSpaceNeededForReturnValue ()
 
asCString GetDeclarationStr (bool includeObjectName=true, bool includeNamespace=false, bool includeParamNames=false) const
 
int GetLineNumber (int programPosition, int *sectionIdx)
 
void ComputeSignatureId ()
 
bool IsSignatureEqual (const asCScriptFunction *func) const
 
bool IsSignatureExceptNameEqual (const asCScriptFunction *func) const
 
bool IsSignatureExceptNameEqual (const asCDataType &retType, const asCArray< asCDataType > &paramTypes, const asCArray< asETypeModifiers > &inOutFlags, const asCObjectType *type, bool isReadOnly) const
 
bool IsSignatureExceptNameAndReturnTypeEqual (const asCScriptFunction *fun) const
 
bool IsSignatureExceptNameAndReturnTypeEqual (const asCArray< asCDataType > &paramTypes, const asCArray< asETypeModifiers > &inOutFlags, const asCObjectType *type, bool isReadOnly) const
 
bool IsSignatureExceptNameAndObjectTypeEqual (const asCScriptFunction *func) const
 
asCTypeInfo * GetTypeInfoOfLocalVar (short varOffset)
 
void MakeDelegate (asCScriptFunction *func, void *obj)
 
int RegisterListPattern (const char *decl, asCScriptNode *listPattern)
 
int ParseListPattern (asSListPatternNode *&target, const char *decl, asCScriptNode *listPattern)
 
bool DoesReturnOnStack () const
 
void JITCompile ()
 
void AddReferences ()
 
void ReleaseReferences ()
 
void AllocateScriptFunctionData ()
 
void DeallocateScriptFunctionData ()
 
asCGlobalProperty * GetPropertyByGlobalVarPtr (void *gvarPtr)
 
int GetRefCount ()
 
void SetFlag ()
 
bool GetFlag ()
 
void EnumReferences (asIScriptEngine *engine)
 
void ReleaseAllHandles (asIScriptEngine *engine)
 

Public Attributes

asCAtomic externalRefCount
 
asCAtomic internalRefCount
 
bool gcFlag
 
asCScriptEngine * engine
 
asCModule * module
 
asCArray< asPWORD > userData
 
asCString name
 
asCDataType returnType
 
asCArray< asCDataType > parameterTypes
 
asCArray< asCString > parameterNames
 
asCArray< asETypeModifiers > inOutFlags
 
asCArray< asCString * > defaultArgs
 
asSFunctionTraits traits
 
asCObjectType * objectType
 
int signatureId
 
int id
 
asEFuncType funcType
 
asDWORD accessMask
 
asSNameSpace * nameSpace
 
asCFuncdefType * funcdefType
 
void * objForDelegate
 
asCScriptFunction * funcForDelegate
 
asSListPatternNode * listPattern
 
ScriptFunctionData * scriptData
 
bool dontCleanUpOnException
 
int vfTableIdx
 
asSSystemFunctionInterface * sysFuncIntf
 

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