1
0
Fork 0

Codechange: replace SQChar with char

pull/14211/head
Rubidium 2025-05-03 21:33:27 +02:00 committed by rubidium42
parent 1f411f8a16
commit 0724b3cda8
9 changed files with 19 additions and 20 deletions

View File

@ -68,7 +68,6 @@ struct SQClass;
struct SQInstance;
struct SQDelegable;
typedef char SQChar;
#define MAX_CHAR 0xFFFF
#define SQUIRREL_VERSION "Squirrel 2.2.5 stable - With custom OpenTTD modifications"

View File

@ -21,7 +21,7 @@
bool str2num(std::string_view s,SQObjectPtr &res)
{
if(s.find('.') != std::string_view::npos){
SQChar *end;
char *end;
std::string str{s};
SQFloat r = SQFloat(strtod(str.c_str(),&end));
if(str.c_str() == end) return false;
@ -281,7 +281,7 @@ void sq_base_register(HSQUIRRELVM v)
sq_pushstring(v,SQUIRREL_VERSION);
sq_createslot(v,-3);
sq_pushstring(v,"_charsize_");
sq_pushinteger(v,sizeof(SQChar));
sq_pushinteger(v,sizeof(char));
sq_createslot(v,-3);
sq_pushstring(v,"_intsize_");
sq_pushinteger(v,sizeof(SQInteger));
@ -369,7 +369,7 @@ static SQInteger obj_clear(HSQUIRRELVM v)
static SQInteger number_delegate_tochar(HSQUIRRELVM v)
{
SQObject &o=stack_get(v,1);
SQChar c = (SQChar)tointeger(o);
char c = static_cast<char>(tointeger(o));
v->Push(SQString::Create(_ss(v),std::string_view(&c, 1)));
return 1;
}

View File

@ -305,7 +305,7 @@ SQInteger SQLexer::ReadString(char32_t ndelim,bool verbatim)
case 'x': NEXT(); {
if(!isxdigit(CUR_CHAR)) throw CompileException("hexadecimal number expected");
const SQInteger maxdigits = 4;
SQChar temp[maxdigits];
char temp[maxdigits];
size_t n = 0;
while(isxdigit(CUR_CHAR) && n < maxdigits) {
temp[n] = CUR_CHAR;
@ -314,7 +314,7 @@ SQInteger SQLexer::ReadString(char32_t ndelim,bool verbatim)
}
auto val = ParseInteger(std::string_view{temp, n}, 16);
if (!val.has_value()) throw CompileException("hexadecimal number expected");
APPEND_CHAR(static_cast<SQChar>(*val));
APPEND_CHAR(static_cast<char>(*val));
}
break;
case 't': APPEND_CHAR('\t'); NEXT(); break;
@ -357,7 +357,7 @@ SQInteger SQLexer::ReadString(char32_t ndelim,bool verbatim)
return TK_STRING_LITERAL;
}
SQInteger scisodigit(SQChar c) { return c >= '0' && c <= '7'; }
SQInteger scisodigit(char c) { return c >= '0' && c <= '7'; }
SQInteger isexponent(SQInteger c) { return c == 'e' || c=='E'; }
@ -371,7 +371,6 @@ SQInteger SQLexer::ReadNumber()
#define TSCIENTIFIC 4
#define TOCTAL 5
SQInteger type = TINT, firstchar = CUR_CHAR;
SQChar *sTemp;
INIT_TEMP_STRING();
NEXT();
if(firstchar == '0' && (toupper(CUR_CHAR) == 'X' || scisodigit(CUR_CHAR)) ) {
@ -417,6 +416,7 @@ SQInteger SQLexer::ReadNumber()
case TSCIENTIFIC:
case TFLOAT: {
std::string str{View()};
char *sTemp;
_fvalue = (SQFloat)strtod(str.c_str(),&sTemp);
return TK_FLOAT;
}

View File

@ -31,7 +31,7 @@ public:
SQUserPointer _up;
char32_t _currdata;
SQSharedState *_sharedstate;
sqvector<SQChar> _longstr;
sqvector<char> _longstr;
std::string_view View() const { return std::string_view(_longstr._vals, _longstr.size()); }
};

View File

@ -18,7 +18,7 @@
#include "../../../safeguards.h"
const SQChar *IdType2Name(SQObjectType type)
std::string_view IdType2Name(SQObjectType type)
{
switch(_RAW_TYPE(type))
{
@ -42,11 +42,11 @@ const SQChar *IdType2Name(SQObjectType type)
case _RT_INSTANCE: return "instance";
case _RT_WEAKREF: return "weakref";
default:
return nullptr;
NOT_REACHED();
}
}
const SQChar *GetTypeName(const SQObjectPtr &obj1)
std::string_view GetTypeName(const SQObjectPtr &obj1)
{
return IdType2Name(type(obj1));
}
@ -323,7 +323,7 @@ bool ReadObject(HSQUIRRELVM v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &o)
bool SQClosure::Save(SQVM *v,SQUserPointer up,SQWRITEFUNC write)
{
_CHECK_IO(WriteTag(v,write,up,SQ_CLOSURESTREAM_HEAD));
_CHECK_IO(WriteTag(v,write,up,sizeof(SQChar)));
_CHECK_IO(WriteTag(v,write,up,sizeof(char)));
_CHECK_IO(_funcproto(_function)->Save(v,up,write));
_CHECK_IO(WriteTag(v,write,up,SQ_CLOSURESTREAM_TAIL));
return true;
@ -332,7 +332,7 @@ bool SQClosure::Save(SQVM *v,SQUserPointer up,SQWRITEFUNC write)
bool SQClosure::Load(SQVM *v,SQUserPointer up,SQREADFUNC read,SQObjectPtr &ret)
{
_CHECK_IO(CheckTag(v,read,up,SQ_CLOSURESTREAM_HEAD));
_CHECK_IO(CheckTag(v,read,up,sizeof(SQChar)));
_CHECK_IO(CheckTag(v,read,up,sizeof(char)));
SQObjectPtr func;
_CHECK_IO(SQFunctionProto::Load(v,up,read,func));
_CHECK_IO(CheckTag(v,read,up,SQ_CLOSURESTREAM_TAIL));

View File

@ -357,7 +357,7 @@ struct SQObjectPtr : public SQObject
return *this;
}
private:
SQObjectPtr(const SQChar *){} //safety
SQObjectPtr(const char *) = delete; //safety
};
inline void _Swap(SQObject &a,SQObject &b)
@ -449,8 +449,8 @@ struct SQDelegable : public CHAINABLE_OBJ {
SQUnsignedInteger TranslateIndex(const SQObjectPtr &idx);
typedef sqvector<SQObjectPtr> SQObjectPtrVec;
typedef sqvector<SQInteger> SQIntVec;
const SQChar *GetTypeName(const SQObjectPtr &obj1);
const SQChar *IdType2Name(SQObjectType type);
std::string_view GetTypeName(const SQObjectPtr &obj1);
std::string_view IdType2Name(SQObjectType type);

View File

@ -87,7 +87,7 @@ enum SQOpcode
};
struct SQInstructionDesc {
const SQChar *name;
std::string_view name;
};
struct SQInstruction

View File

@ -18,7 +18,7 @@ public:
std::span<char> Span() { return std::span<char>(this->_val, this->_len); }
private:
SQInteger _len;
SQChar _val[1];
char _val[1];
};

View File

@ -31,7 +31,7 @@ struct SQUserData : SQDelegable
SQInteger _size;
SQRELEASEHOOK _hook;
SQUserPointer _typetag;
SQChar _val[1];
char _val[1];
};
#endif //_SQUSERDATA_H_