fix cr/lfs and remove trailing whitespaces...
[supertux.git] / src / squirrel / squirrel / sqstate.h
index 64892c4..fc29816 100644 (file)
-/*     see copyright notice in squirrel.h */\r
-#ifndef _SQSTATE_H_\r
-#define _SQSTATE_H_\r
-\r
-#include "squtils.h"\r
-#include "sqobject.h"\r
-struct SQString;\r
-struct SQTable;\r
-//max number of character for a printed number\r
-#define NUMBER_MAX_CHAR 50\r
-\r
-struct StringTable\r
-{\r
-       StringTable();\r
-       ~StringTable();\r
-       SQString *Add(const SQChar *,SQInteger len);\r
-       void Remove(SQString *);\r
-private:\r
-       void Resize(SQInteger size);\r
-       void AllocNodes(SQInteger size);\r
-       SQString **_strings;\r
-       SQUnsignedInteger _numofslots;\r
-       SQUnsignedInteger _slotused;\r
-};\r
-\r
-struct RefTable {\r
-       struct RefNode {\r
-               SQObjectPtr obj;\r
-               SQUnsignedInteger refs;\r
-               struct RefNode *next;\r
-       };\r
-       RefTable();\r
-       ~RefTable();\r
-       void AddRef(SQObject &obj);\r
-       SQBool Release(SQObject &obj);\r
-#ifndef NO_GARBAGE_COLLECTOR\r
-       void Mark(SQCollectable **chain);\r
-#endif\r
-       void Finalize();\r
-private:\r
-       RefNode *Get(SQObject &obj,SQHash &mainpos,RefNode **prev,bool add);\r
-       RefNode *Add(SQHash mainpos,SQObject &obj);\r
-       void Resize(SQUnsignedInteger size);\r
-       void AllocNodes(SQUnsignedInteger size);\r
-       SQUnsignedInteger _numofslots;\r
-       SQUnsignedInteger _slotused;\r
-       SQUnsignedInteger _buffersize;\r
-       RefNode *_freelist;\r
-       RefNode **_buckets;\r
-};\r
-\r
-#define ADD_STRING(ss,str,len) ss->_stringtable->Add(str,len)\r
-#define REMOVE_STRING(ss,bstr) ss->_stringtable->Remove(bstr)\r
-\r
-struct SQObjectPtr;\r
-\r
-struct SQSharedState\r
-{\r
-       SQSharedState();\r
-       ~SQSharedState();\r
-       void Init();\r
-public:\r
-       SQChar* GetScratchPad(SQInteger size);\r
-       SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);\r
-#ifndef NO_GARBAGE_COLLECTOR\r
-       SQInteger CollectGarbage(SQVM *vm); \r
-       static void MarkObject(SQObjectPtr &o,SQCollectable **chain);\r
-#endif\r
-       SQObjectPtrVec *_metamethods;\r
-       SQObjectPtr _metamethodsmap;\r
-       SQObjectPtrVec *_systemstrings;\r
-       SQObjectPtrVec *_types;\r
-       StringTable *_stringtable;\r
-       RefTable _refs_table;\r
-       SQObjectPtr _registry;\r
-       SQObjectPtr _constructoridx;\r
-#ifndef NO_GARBAGE_COLLECTOR\r
-       SQCollectable *_gc_chain;\r
-#endif\r
-       SQObjectPtr _root_vm;\r
-       SQObjectPtr _table_default_delegate;\r
-       static SQRegFunction _table_default_delegate_funcz[];\r
-       SQObjectPtr _array_default_delegate;\r
-       static SQRegFunction _array_default_delegate_funcz[];\r
-       SQObjectPtr _string_default_delegate;\r
-       static SQRegFunction _string_default_delegate_funcz[];\r
-       SQObjectPtr _number_default_delegate;\r
-       static SQRegFunction _number_default_delegate_funcz[];\r
-       SQObjectPtr _generator_default_delegate;\r
-       static SQRegFunction _generator_default_delegate_funcz[];\r
-       SQObjectPtr _closure_default_delegate;\r
-       static SQRegFunction _closure_default_delegate_funcz[];\r
-       SQObjectPtr _thread_default_delegate;\r
-       static SQRegFunction _thread_default_delegate_funcz[];\r
-       SQObjectPtr _class_default_delegate;\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
-       bool _notifyallexceptions;\r
-private:\r
-       SQChar *_scratchpad;\r
-       SQInteger _scratchpadsize;\r
-};\r
-\r
-#define _sp(s) (_sharedstate->GetScratchPad(s))\r
-#define _spval (_sharedstate->GetScratchPad(-1))\r
-\r
-#define _table_ddel            _table(_sharedstate->_table_default_delegate) \r
-#define _array_ddel            _table(_sharedstate->_array_default_delegate) \r
-#define _string_ddel   _table(_sharedstate->_string_default_delegate) \r
-#define _number_ddel   _table(_sharedstate->_number_default_delegate) \r
-#define _generator_ddel        _table(_sharedstate->_generator_default_delegate) \r
-#define _closure_ddel  _table(_sharedstate->_closure_default_delegate) \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
-#else\r
-#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
-\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
-#endif //_SQSTATE_H_\r
+/*     see copyright notice in squirrel.h */
+#ifndef _SQSTATE_H_
+#define _SQSTATE_H_
+
+#include "squtils.h"
+#include "sqobject.h"
+struct SQString;
+struct SQTable;
+//max number of character for a printed number
+#define NUMBER_MAX_CHAR 50
+
+struct StringTable
+{
+       StringTable();
+       ~StringTable();
+       SQString *Add(const SQChar *,SQInteger len);
+       void Remove(SQString *);
+private:
+       void Resize(SQInteger size);
+       void AllocNodes(SQInteger size);
+       SQString **_strings;
+       SQUnsignedInteger _numofslots;
+       SQUnsignedInteger _slotused;
+};
+
+struct RefTable {
+       struct RefNode {
+               SQObjectPtr obj;
+               SQUnsignedInteger refs;
+               struct RefNode *next;
+       };
+       RefTable();
+       ~RefTable();
+       void AddRef(SQObject &obj);
+       SQBool Release(SQObject &obj);
+#ifndef NO_GARBAGE_COLLECTOR
+       void Mark(SQCollectable **chain);
+#endif
+       void Finalize();
+private:
+       RefNode *Get(SQObject &obj,SQHash &mainpos,RefNode **prev,bool add);
+       RefNode *Add(SQHash mainpos,SQObject &obj);
+       void Resize(SQUnsignedInteger size);
+       void AllocNodes(SQUnsignedInteger size);
+       SQUnsignedInteger _numofslots;
+       SQUnsignedInteger _slotused;
+       SQUnsignedInteger _buffersize;
+       RefNode *_freelist;
+       RefNode **_buckets;
+};
+
+#define ADD_STRING(ss,str,len) ss->_stringtable->Add(str,len)
+#define REMOVE_STRING(ss,bstr) ss->_stringtable->Remove(bstr)
+
+struct SQObjectPtr;
+
+struct SQSharedState
+{
+       SQSharedState();
+       ~SQSharedState();
+       void Init();
+public:
+       SQChar* GetScratchPad(SQInteger size);
+       SQInteger GetMetaMethodIdxByName(const SQObjectPtr &name);
+#ifndef NO_GARBAGE_COLLECTOR
+       SQInteger CollectGarbage(SQVM *vm);
+       static void MarkObject(SQObjectPtr &o,SQCollectable **chain);
+#endif
+       SQObjectPtrVec *_metamethods;
+       SQObjectPtr _metamethodsmap;
+       SQObjectPtrVec *_systemstrings;
+       SQObjectPtrVec *_types;
+       StringTable *_stringtable;
+       RefTable _refs_table;
+       SQObjectPtr _registry;
+       SQObjectPtr _constructoridx;
+#ifndef NO_GARBAGE_COLLECTOR
+       SQCollectable *_gc_chain;
+#endif
+       SQObjectPtr _root_vm;
+       SQObjectPtr _table_default_delegate;
+       static SQRegFunction _table_default_delegate_funcz[];
+       SQObjectPtr _array_default_delegate;
+       static SQRegFunction _array_default_delegate_funcz[];
+       SQObjectPtr _string_default_delegate;
+       static SQRegFunction _string_default_delegate_funcz[];
+       SQObjectPtr _number_default_delegate;
+       static SQRegFunction _number_default_delegate_funcz[];
+       SQObjectPtr _generator_default_delegate;
+       static SQRegFunction _generator_default_delegate_funcz[];
+       SQObjectPtr _closure_default_delegate;
+       static SQRegFunction _closure_default_delegate_funcz[];
+       SQObjectPtr _thread_default_delegate;
+       static SQRegFunction _thread_default_delegate_funcz[];
+       SQObjectPtr _class_default_delegate;
+       static SQRegFunction _class_default_delegate_funcz[];
+       SQObjectPtr _instance_default_delegate;
+       static SQRegFunction _instance_default_delegate_funcz[];
+       SQObjectPtr _weakref_default_delegate;
+       static SQRegFunction _weakref_default_delegate_funcz[];
+
+       SQCOMPILERERROR _compilererrorhandler;
+       SQPRINTFUNCTION _printfunc;
+       bool _debuginfo;
+       bool _notifyallexceptions;
+private:
+       SQChar *_scratchpad;
+       SQInteger _scratchpadsize;
+};
+
+#define _sp(s) (_sharedstate->GetScratchPad(s))
+#define _spval (_sharedstate->GetScratchPad(-1))
+
+#define _table_ddel            _table(_sharedstate->_table_default_delegate)
+#define _array_ddel            _table(_sharedstate->_array_default_delegate)
+#define _string_ddel   _table(_sharedstate->_string_default_delegate)
+#define _number_ddel   _table(_sharedstate->_number_default_delegate)
+#define _generator_ddel        _table(_sharedstate->_generator_default_delegate)
+#define _closure_ddel  _table(_sharedstate->_closure_default_delegate)
+#define _thread_ddel   _table(_sharedstate->_thread_default_delegate)
+#define _class_ddel            _table(_sharedstate->_class_default_delegate)
+#define _instance_ddel _table(_sharedstate->_instance_default_delegate)
+#define _weakref_ddel  _table(_sharedstate->_weakref_default_delegate)
+
+#ifdef SQUNICODE //rsl REAL STRING LEN
+#define rsl(l) ((l)<<1)
+#else
+#define rsl(l) (l)
+#endif
+
+extern SQObjectPtr _null_;
+extern SQObjectPtr _true_;
+extern SQObjectPtr _false_;
+extern SQObjectPtr _one_;
+extern SQObjectPtr _minusone_;
+
+bool CompileTypemask(SQIntVec &res,const SQChar *typemask);
+
+void *sq_vm_malloc(SQUnsignedInteger size);
+void *sq_vm_realloc(void *p,SQUnsignedInteger oldsize,SQUnsignedInteger size);
+void sq_vm_free(void *p,SQUnsignedInteger size);
+#endif //_SQSTATE_H_