//so when there is a table query, if the string doesn't exists in the global state\r
//it cannot be in a table so the result will be always null\r
//SQString *get(const SQChar *news);\r
- SQString *Add(const SQChar *,int len);\r
+ SQString *Add(const SQChar *,SQInteger len);\r
void Remove(SQString *);\r
private:\r
- void Resize(int size);\r
- void AllocNodes(int size);\r
+ void Resize(SQInteger size);\r
+ void AllocNodes(SQInteger size);\r
SQString **_strings;\r
- unsigned int _numofslots;\r
- unsigned int _slotused;\r
+ SQUnsignedInteger _numofslots;\r
+ SQUnsignedInteger _slotused;\r
};\r
\r
#define ADD_STRING(ss,str,len) ss->_stringtable->Add(str,len)\r
~SQSharedState();\r
void Init();\r
public:\r
- SQChar* GetScratchPad(int size);\r
+ SQChar* GetScratchPad(SQInteger size);\r
SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);\r
#ifndef NO_GARBAGE_COLLECTOR\r
- int CollectGarbage(SQVM *vm); \r
+ SQInteger CollectGarbage(SQVM *vm); \r
static void MarkObject(SQObjectPtr &o,SQCollectable **chain);\r
#endif\r
SQObjectPtrVec *_metamethods;\r
static SQRegFunction _class_default_delegate_funcz[];\r
SQObjectPtr _instance_default_delegate;\r
static SQRegFunction _instance_default_delegate_funcz[];\r
+ SQObjectPtr _weakref_default_delegate;\r
+ static SQRegFunction _weakref_default_delegate_funcz[];\r
\r
SQCOMPILERERROR _compilererrorhandler;\r
SQPRINTFUNCTION _printfunc;\r
bool _debuginfo;\r
private:\r
SQChar *_scratchpad;\r
- int _scratchpadsize;\r
+ SQInteger _scratchpadsize;\r
};\r
\r
#define _sp(s) (_sharedstate->GetScratchPad(s))\r
#define _thread_ddel _table(_sharedstate->_thread_default_delegate) \r
#define _class_ddel _table(_sharedstate->_class_default_delegate) \r
#define _instance_ddel _table(_sharedstate->_instance_default_delegate) \r
+#define _weakref_ddel _table(_sharedstate->_weakref_default_delegate) \r
\r
#ifdef SQUNICODE //rsl REAL STRING LEN\r
#define rsl(l) ((l)<<1)\r
\r
bool CompileTypemask(SQIntVec &res,const SQChar *typemask);\r
\r
-void *sq_vm_malloc(unsigned int size);\r
-void *sq_vm_realloc(void *p,unsigned int oldsize,unsigned int size);\r
-void sq_vm_free(void *p,unsigned int size);\r
+void *sq_vm_malloc(SQUnsignedInteger size);\r
+void *sq_vm_realloc(void *p,SQUnsignedInteger oldsize,SQUnsignedInteger size);\r
+void sq_vm_free(void *p,SQUnsignedInteger size);\r
#endif //_SQSTATE_H_\r