42 #include "as_config.h" 43 #include "as_atomic.h" 44 #include "as_memory.h" 45 #include "as_string.h" 46 #include "as_objecttype.h" 47 #include "as_callfunc.h" 69 asEContextState GetState()
const;
72 bool IsNested(asUINT *nestCount = 0)
const;
75 int SetObject(
void *obj);
78 int SetArgByte(asUINT arg, asBYTE value);
79 int SetArgWord(asUINT arg, asWORD value);
80 int SetArgDWord(asUINT arg, asDWORD value);
81 int SetArgQWord(asUINT arg, asQWORD value);
82 int SetArgFloat(asUINT arg,
float value);
83 int SetArgDouble(asUINT arg,
double value);
84 int SetArgAddress(asUINT arg,
void *addr);
85 int SetArgObject(asUINT arg,
void *obj);
86 int SetArgVarType(asUINT arg,
void *ptr,
int typeId);
87 void *GetAddressOfArg(asUINT arg);
90 asBYTE GetReturnByte();
91 asWORD GetReturnWord();
92 asDWORD GetReturnDWord();
93 asQWORD GetReturnQWord();
94 float GetReturnFloat();
95 double GetReturnDouble();
96 void *GetReturnAddress();
97 void *GetReturnObject();
98 void *GetAddressOfReturnValue();
101 int SetException(
const char *descr,
bool allowCatch =
true);
102 int GetExceptionLineNumber(
int *column,
const char **sectionName);
104 const char *GetExceptionString();
105 bool WillExceptionBeCaught();
106 int SetExceptionCallback(
asSFuncPtr callback,
void *obj,
int callConv);
107 void ClearExceptionCallback();
110 int SetLineCallback(
asSFuncPtr callback,
void *obj,
int callConv);
111 void ClearLineCallback();
112 asUINT GetCallstackSize()
const;
114 int GetLineNumber(asUINT stackLevel,
int *column,
const char **sectionName);
115 int GetVarCount(asUINT stackLevel);
116 const char *GetVarName(asUINT varIndex, asUINT stackLevel);
117 const char *GetVarDeclaration(asUINT varIndex, asUINT stackLevel,
bool includeNamespace);
118 int GetVarTypeId(asUINT varIndex, asUINT stackLevel);
119 void *GetAddressOfVar(asUINT varIndex, asUINT stackLevel);
120 bool IsVarInScope(asUINT varIndex, asUINT stackLevel);
121 int GetThisTypeId(asUINT stackLevel);
122 void *GetThisPointer(asUINT stackLevel);
126 void *SetUserData(
void *data, asPWORD type);
127 void *GetUserData(asPWORD type)
const;
137 void CallLineCallback();
138 void CallExceptionCallback();
141 #ifndef AS_NO_EXCEPTIONS 142 void HandleAppException();
147 void CleanStack(
bool catchException =
false);
148 bool CleanStackFrame(
bool catchException =
false);
149 void CleanArgsOnStack();
150 void CleanReturnObject();
151 void DetermineLiveObjects(
asCArray<int> &liveObjects, asUINT stackLevel);
157 void PrepareScriptFunction();
159 bool ReserveStackSpace(asUINT size);
161 void SetInternalException(
const char *descr,
bool allowCatch =
true);
162 bool FindExceptionTryCatch();
167 bool m_holdEngineRef;
170 asEContextState m_status;
173 bool m_externalSuspendRequest;
183 asUINT m_stackBlockSize;
185 asDWORD *m_originalStackPointer;
188 bool m_isStackMemoryNotAllocated;
189 bool m_needToCleanupArgs;
190 bool m_inExceptionHandler;
192 int m_exceptionFunction;
193 int m_exceptionSectionIdx;
195 int m_exceptionColumn;
196 bool m_exceptionWillBeCaught;
200 int m_returnValueSize;
206 void *m_lineCallbackObj;
208 bool m_exceptionCallback;
210 void *m_exceptionCallbackObj;
219 int as_powi(
int base,
int exponent,
bool &isOverflow);
220 asDWORD as_powu(asDWORD base, asDWORD exponent,
bool &isOverflow);
221 asINT64 as_powi64(asINT64 base, asINT64 exponent,
bool &isOverflow);
222 asQWORD as_powu64(asQWORD base, asQWORD exponent,
bool &isOverflow);
227 T as_powi(T base, T exponent) {
229 if (exponent & (T(1) << (
sizeof(T) * 8 - 1)))
Definition: angelscript.h:1325
Definition: angelscript.h:1083
Definition: as_scriptfunction.h:146
Definition: angelscript.h:863
Definition: as_atomic.h:49
Definition: as_callfunc.h:99
Definition: angelscript.h:429
Definition: as_context.h:54
Definition: as_scriptengine.h:64
Definition: angelscript.h:639
Definition: as_string.h:41