ScummVM API documentation
asCModule Class Reference
Inheritance diagram for asCModule:
asIScriptModule

Public Member Functions

virtual asIScriptEngine * GetEngine () const
 
virtual void SetName (const char *name)
 
virtual const char * GetName () const
 
virtual void Discard ()
 
virtual int AddScriptSection (const char *name, const char *code, size_t codeLength, int lineOffset)
 
virtual int Build ()
 
virtual int CompileFunction (const char *sectionName, const char *code, int lineOffset, asDWORD reserved, asIScriptFunction **outFunc)
 
virtual int CompileGlobalVar (const char *sectionName, const char *code, int lineOffset)
 
virtual asDWORD SetAccessMask (asDWORD accessMask)
 
virtual int SetDefaultNamespace (const char *nameSpace)
 
virtual const char * GetDefaultNamespace () const
 
virtual asUINT GetFunctionCount () const
 
virtual asIScriptFunction * GetFunctionByIndex (asUINT index) const
 
virtual asIScriptFunction * GetFunctionByDecl (const char *decl) const
 
virtual asIScriptFunction * GetFunctionByName (const char *name) const
 
virtual int RemoveFunction (asIScriptFunction *func)
 
virtual int ResetGlobalVars (asIScriptContext *ctx)
 
virtual asUINT GetGlobalVarCount () const
 
virtual int GetGlobalVarIndexByName (const char *name) const
 
virtual int GetGlobalVarIndexByDecl (const char *decl) const
 
virtual const char * GetGlobalVarDeclaration (asUINT index, bool includeNamespace) const
 
virtual int GetGlobalVar (asUINT index, const char **name, const char **nameSpace, int *typeId, bool *isConst) const
 
virtual void * GetAddressOfGlobalVar (asUINT index)
 
virtual int RemoveGlobalVar (asUINT index)
 
virtual asUINT GetObjectTypeCount () const
 
virtual asITypeInfo * GetObjectTypeByIndex (asUINT index) const
 
virtual int GetTypeIdByDecl (const char *decl) const
 
virtual asITypeInfo * GetTypeInfoByName (const char *name) const
 
virtual asITypeInfo * GetTypeInfoByDecl (const char *decl) const
 
virtual asUINT GetEnumCount () const
 
virtual asITypeInfo * GetEnumByIndex (asUINT index) const
 
virtual asUINT GetTypedefCount () const
 
virtual asITypeInfo * GetTypedefByIndex (asUINT index) const
 
virtual asUINT GetImportedFunctionCount () const
 
virtual int GetImportedFunctionIndexByDecl (const char *decl) const
 
virtual const char * GetImportedFunctionDeclaration (asUINT importIndex) const
 
virtual const char * GetImportedFunctionSourceModule (asUINT importIndex) const
 
virtual int BindImportedFunction (asUINT index, asIScriptFunction *func)
 
virtual int UnbindImportedFunction (asUINT importIndex)
 
virtual int BindAllImportedFunctions ()
 
virtual int UnbindAllImportedFunctions ()
 
virtual int SaveByteCode (asIBinaryStream *out, bool stripDebugInfo) const
 
virtual int LoadByteCode (asIBinaryStream *in, bool *wasDebugInfoStripped)
 
virtual void * SetUserData (void *data, asPWORD type)
 
virtual void * GetUserData (asPWORD type) const
 
 asCModule (const char *name, asCScriptEngine *engine)
 
void InternalReset ()
 
bool IsEmpty () const
 
bool HasExternalReferences (bool shuttingDown)
 
int CallInit (asIScriptContext *ctx)
 
void CallExit ()
 
int InitGlobalProp (asCGlobalProperty *prop, asIScriptContext *ctx)
 
void JITCompile ()
 
int AddScriptFunction (int sectionIdx, int declaredAt, int id, const asCString &name, const asCDataType &returnType, const asCArray< asCDataType > &params, const asCArray< asCString > &paramNames, const asCArray< asETypeModifiers > &inOutFlags, const asCArray< asCString *> &defaultArgs, bool isInterface, asCObjectType *objType=0, bool isGlobalFunction=false, asSFunctionTraits funcTraits=asSFunctionTraits(), asSNameSpace *ns=0)
 
int AddScriptFunction (asCScriptFunction *func)
 
int AddImportedFunction (int id, const asCString &name, const asCDataType &returnType, const asCArray< asCDataType > &params, const asCArray< asETypeModifiers > &inOutFlags, const asCArray< asCString *> &defaultArgs, asSFunctionTraits funcTraits, asSNameSpace *ns, const asCString &moduleName)
 
int AddFuncDef (const asCString &name, asSNameSpace *ns, asCObjectType *parent)
 
int GetNextImportedFunctionId ()
 
asCScriptFunction * GetImportedFunction (int funcId) const
 
asCTypeInfo * GetType (const asCString &type, asSNameSpace *ns) const
 
asCObjectType * GetObjectType (const char *type, asSNameSpace *ns) const
 
asCGlobalProperty * AllocateGlobalProperty (const char *name, const asCDataType &dt, asSNameSpace *ns)
 
void UninitializeGlobalProp (asCGlobalProperty *prop)
 
void AddClassType (asCObjectType *)
 
void AddEnumType (asCEnumType *)
 
void AddTypeDef (asCTypedefType *)
 
void AddFuncDef (asCFuncdefType *)
 
void ReplaceFuncDef (asCFuncdefType *oldType, asCFuncdefType *newType)
 

Public Attributes

asCString m_name
 
asCScriptEngine * m_engine
 
asCBuilder * m_builder
 
asCArray< asPWORD > m_userData
 
asDWORD m_accessMask
 
asSNameSpace * m_defaultNamespace
 
asCArray< asCScriptFunction * > m_scriptFunctions
 
asCSymbolTable< asCScriptFunction > m_globalFunctions
 
asCArray< sBindInfo * > m_bindInformations
 
asCArray< asCObjectType * > m_templateInstances
 
asCSymbolTable< asCGlobalProperty > m_scriptGlobals
 
bool m_isGlobalVarInitialized
 
asCArray< asCObjectType * > m_classTypes
 
asCArray< asCEnumType * > m_enumTypes
 
asCArray< asCTypedefType * > m_typeDefs
 
asCArray< asCFuncdefType * > m_funcDefs
 
asCMap< asSNameSpaceNamePair, asCTypeInfo * > m_typeLookup
 
asCArray< asCTypeInfo * > m_externalTypes
 
asCArray< asCScriptFunction * > m_externalFunctions
 

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