|
@@ -116,9 +116,31 @@ void SQSharedState::Init()
|
|
|
sq_new(_systemstrings,SQObjectPtrVec);
|
|
sq_new(_systemstrings,SQObjectPtrVec);
|
|
|
sq_new(_types,SQObjectPtrVec);
|
|
sq_new(_types,SQObjectPtrVec);
|
|
|
_defined_names = SQTable::Create(this,0);
|
|
_defined_names = SQTable::Create(this,0);
|
|
|
- _define_squilu = SQString::Create(this,_SC("__SQUILU__"));
|
|
|
|
|
|
|
+#define SQUILU_NAME_BASE "__SQUILU_"
|
|
|
|
|
+ _define_squilu = SQString::Create(this,_SC(SQUILU_NAME_BASE "_"));
|
|
|
|
|
+ _define_squilu_int_sz = SQString::Create(this,_SC(SQUILU_NAME_BASE
|
|
|
|
|
+#ifdef _SQ64
|
|
|
|
|
+ "INT_SZ8__"
|
|
|
|
|
+#else
|
|
|
|
|
+ "INT_SZ4__"
|
|
|
|
|
+#endif // _SQ64
|
|
|
|
|
+ ));
|
|
|
|
|
+ _define_squilu_float_sz = SQString::Create(this,_SC(SQUILU_NAME_BASE
|
|
|
|
|
+#ifdef SQUSEDOUBLE
|
|
|
|
|
+ "FLOAT_SZ8__"
|
|
|
|
|
+#else
|
|
|
|
|
+ "FLOAT_SZ4__"
|
|
|
|
|
+#endif // _SQ64
|
|
|
|
|
+ ));
|
|
|
|
|
+ _define_squilu_ptr_sz = SQString::Create(this,
|
|
|
|
|
+ _SC((sizeof(void *) == 8) ? SQUILU_NAME_BASE "PTR_SZ8__" :
|
|
|
|
|
+ SQUILU_NAME_BASE "PTR_SZ4__"));
|
|
|
|
|
+#undef SQUILU_NAME_BASE
|
|
|
SQObjectPtr value(true);
|
|
SQObjectPtr value(true);
|
|
|
_table(_defined_names)->NewSlot(_define_squilu, value);
|
|
_table(_defined_names)->NewSlot(_define_squilu, value);
|
|
|
|
|
+ _table(_defined_names)->NewSlot(_define_squilu_int_sz, value);
|
|
|
|
|
+ _table(_defined_names)->NewSlot(_define_squilu_float_sz, value);
|
|
|
|
|
+ _table(_defined_names)->NewSlot(_define_squilu_ptr_sz, value);
|
|
|
_metamethodsmap = SQTable::Create(this,MT_LAST-1);
|
|
_metamethodsmap = SQTable::Create(this,MT_LAST-1);
|
|
|
//adding type strings to avoid memory trashing
|
|
//adding type strings to avoid memory trashing
|
|
|
//types names
|
|
//types names
|
|
@@ -180,6 +202,9 @@ SQSharedState::~SQSharedState()
|
|
|
_constructoridx.Null();
|
|
_constructoridx.Null();
|
|
|
_destructoridx.Null();
|
|
_destructoridx.Null();
|
|
|
_define_squilu.Null();
|
|
_define_squilu.Null();
|
|
|
|
|
+ _define_squilu_int_sz.Null();
|
|
|
|
|
+ _define_squilu_float_sz.Null();
|
|
|
|
|
+ _define_squilu_ptr_sz.Null();
|
|
|
_table(_registry)->Finalize();
|
|
_table(_registry)->Finalize();
|
|
|
_table(_consts)->Finalize();
|
|
_table(_consts)->Finalize();
|
|
|
_table(_metamethodsmap)->Finalize();
|
|
_table(_metamethodsmap)->Finalize();
|