Update to Squirrel 3.0.6
[supertux.git] / external / squirrel / squirrel / sqstate.h
old mode 100755 (executable)
new mode 100644 (file)
index e06da7a..ed9d6fc
@@ -11,7 +11,7 @@ struct SQTable;
 \r
 struct SQStringTable\r
 {\r
-       SQStringTable();\r
+       SQStringTable(SQSharedState*ss);\r
        ~SQStringTable();\r
        SQString *Add(const SQChar *,SQInteger len);\r
        void Remove(SQString *);\r
@@ -21,6 +21,7 @@ private:
        SQString **_strings;\r
        SQUnsignedInteger _numofslots;\r
        SQUnsignedInteger _slotused;\r
+       SQSharedState *_sharedstate;\r
 };\r
 \r
 struct RefTable {\r
@@ -33,6 +34,7 @@ struct RefTable {
        ~RefTable();\r
        void AddRef(SQObject &obj);\r
        SQBool Release(SQObject &obj);\r
+       SQUnsignedInteger GetRefCount(SQObject &obj);\r
 #ifndef NO_GARBAGE_COLLECTOR\r
        void Mark(SQCollectable **chain);\r
 #endif\r
@@ -63,7 +65,9 @@ public:
        SQChar* GetScratchPad(SQInteger size);\r
        SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);\r
 #ifndef NO_GARBAGE_COLLECTOR\r
-       SQInteger CollectGarbage(SQVM *vm); \r
+       SQInteger CollectGarbage(SQVM *vm);\r
+       void RunMark(SQVM *vm,SQCollectable **tchain);\r
+       SQInteger ResurrectUnreachable(SQVM *vm);\r
        static void MarkObject(SQObjectPtr &o,SQCollectable **chain);\r
 #endif\r
        SQObjectPtrVec *_metamethods;\r
@@ -102,6 +106,7 @@ public:
        \r
        SQCOMPILERERROR _compilererrorhandler;\r
        SQPRINTFUNCTION _printfunc;\r
+       SQPRINTFUNCTION _errorfunc;\r
        bool _debuginfo;\r
        bool _notifyallexceptions;\r
 private:\r
@@ -129,15 +134,9 @@ private:
 #define rsl(l) (l)\r
 #endif\r
 \r
-extern SQObjectPtr _null_;\r
-extern SQObjectPtr _true_;\r
-extern SQObjectPtr _false_;\r
-extern SQObjectPtr _one_;\r
-extern SQObjectPtr _minusone_;\r
+//extern SQObjectPtr _null_;\r
 \r
 bool CompileTypemask(SQIntVec &res,const SQChar *typemask);\r
 \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
+\r
 #endif //_SQSTATE_H_\r