mirror of https://github.com/OpenTTD/OpenTTD
Codechange: replace SQChar with char
parent
1f411f8a16
commit
0724b3cda8
|
@ -68,7 +68,6 @@ struct SQClass;
|
||||||
struct SQInstance;
|
struct SQInstance;
|
||||||
struct SQDelegable;
|
struct SQDelegable;
|
||||||
|
|
||||||
typedef char SQChar;
|
|
||||||
#define MAX_CHAR 0xFFFF
|
#define MAX_CHAR 0xFFFF
|
||||||
|
|
||||||
#define SQUIRREL_VERSION "Squirrel 2.2.5 stable - With custom OpenTTD modifications"
|
#define SQUIRREL_VERSION "Squirrel 2.2.5 stable - With custom OpenTTD modifications"
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
bool str2num(std::string_view s,SQObjectPtr &res)
|
bool str2num(std::string_view s,SQObjectPtr &res)
|
||||||
{
|
{
|
||||||
if(s.find('.') != std::string_view::npos){
|
if(s.find('.') != std::string_view::npos){
|
||||||
SQChar *end;
|
char *end;
|
||||||
std::string str{s};
|
std::string str{s};
|
||||||
SQFloat r = SQFloat(strtod(str.c_str(),&end));
|
SQFloat r = SQFloat(strtod(str.c_str(),&end));
|
||||||
if(str.c_str() == end) return false;
|
if(str.c_str() == end) return false;
|
||||||
|
@ -281,7 +281,7 @@ void sq_base_register(HSQUIRRELVM v)
|
||||||
sq_pushstring(v,SQUIRREL_VERSION);
|
sq_pushstring(v,SQUIRREL_VERSION);
|
||||||
sq_createslot(v,-3);
|
sq_createslot(v,-3);
|
||||||
sq_pushstring(v,"_charsize_");
|
sq_pushstring(v,"_charsize_");
|
||||||
sq_pushinteger(v,sizeof(SQChar));
|
sq_pushinteger(v,sizeof(char));
|
||||||
sq_createslot(v,-3);
|
sq_createslot(v,-3);
|
||||||
sq_pushstring(v,"_intsize_");
|
sq_pushstring(v,"_intsize_");
|
||||||
sq_pushinteger(v,sizeof(SQInteger));
|
sq_pushinteger(v,sizeof(SQInteger));
|
||||||
|
@ -369,7 +369,7 @@ static SQInteger obj_clear(HSQUIRRELVM v)
|
||||||
static SQInteger number_delegate_tochar(HSQUIRRELVM v)
|
static SQInteger number_delegate_tochar(HSQUIRRELVM v)
|
||||||
{
|
{
|
||||||
SQObject &o=stack_get(v,1);
|
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)));
|
v->Push(SQString::Create(_ss(v),std::string_view(&c, 1)));
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -305,7 +305,7 @@ SQInteger SQLexer::ReadString(char32_t ndelim,bool verbatim)
|
||||||
case 'x': NEXT(); {
|
case 'x': NEXT(); {
|
||||||
if(!isxdigit(CUR_CHAR)) throw CompileException("hexadecimal number expected");
|
if(!isxdigit(CUR_CHAR)) throw CompileException("hexadecimal number expected");
|
||||||
const SQInteger maxdigits = 4;
|
const SQInteger maxdigits = 4;
|
||||||
SQChar temp[maxdigits];
|
char temp[maxdigits];
|
||||||
size_t n = 0;
|
size_t n = 0;
|
||||||
while(isxdigit(CUR_CHAR) && n < maxdigits) {
|
while(isxdigit(CUR_CHAR) && n < maxdigits) {
|
||||||
temp[n] = CUR_CHAR;
|
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);
|
auto val = ParseInteger(std::string_view{temp, n}, 16);
|
||||||
if (!val.has_value()) throw CompileException("hexadecimal number expected");
|
if (!val.has_value()) throw CompileException("hexadecimal number expected");
|
||||||
APPEND_CHAR(static_cast<SQChar>(*val));
|
APPEND_CHAR(static_cast<char>(*val));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 't': APPEND_CHAR('\t'); NEXT(); break;
|
case 't': APPEND_CHAR('\t'); NEXT(); break;
|
||||||
|
@ -357,7 +357,7 @@ SQInteger SQLexer::ReadString(char32_t ndelim,bool verbatim)
|
||||||
return TK_STRING_LITERAL;
|
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'; }
|
SQInteger isexponent(SQInteger c) { return c == 'e' || c=='E'; }
|
||||||
|
|
||||||
|
@ -371,7 +371,6 @@ SQInteger SQLexer::ReadNumber()
|
||||||
#define TSCIENTIFIC 4
|
#define TSCIENTIFIC 4
|
||||||
#define TOCTAL 5
|
#define TOCTAL 5
|
||||||
SQInteger type = TINT, firstchar = CUR_CHAR;
|
SQInteger type = TINT, firstchar = CUR_CHAR;
|
||||||
SQChar *sTemp;
|
|
||||||
INIT_TEMP_STRING();
|
INIT_TEMP_STRING();
|
||||||
NEXT();
|
NEXT();
|
||||||
if(firstchar == '0' && (toupper(CUR_CHAR) == 'X' || scisodigit(CUR_CHAR)) ) {
|
if(firstchar == '0' && (toupper(CUR_CHAR) == 'X' || scisodigit(CUR_CHAR)) ) {
|
||||||
|
@ -417,6 +416,7 @@ SQInteger SQLexer::ReadNumber()
|
||||||
case TSCIENTIFIC:
|
case TSCIENTIFIC:
|
||||||
case TFLOAT: {
|
case TFLOAT: {
|
||||||
std::string str{View()};
|
std::string str{View()};
|
||||||
|
char *sTemp;
|
||||||
_fvalue = (SQFloat)strtod(str.c_str(),&sTemp);
|
_fvalue = (SQFloat)strtod(str.c_str(),&sTemp);
|
||||||
return TK_FLOAT;
|
return TK_FLOAT;
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ public:
|
||||||
SQUserPointer _up;
|
SQUserPointer _up;
|
||||||
char32_t _currdata;
|
char32_t _currdata;
|
||||||
SQSharedState *_sharedstate;
|
SQSharedState *_sharedstate;
|
||||||
sqvector<SQChar> _longstr;
|
sqvector<char> _longstr;
|
||||||
|
|
||||||
std::string_view View() const { return std::string_view(_longstr._vals, _longstr.size()); }
|
std::string_view View() const { return std::string_view(_longstr._vals, _longstr.size()); }
|
||||||
};
|
};
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
#include "../../../safeguards.h"
|
#include "../../../safeguards.h"
|
||||||
|
|
||||||
|
|
||||||
const SQChar *IdType2Name(SQObjectType type)
|
std::string_view IdType2Name(SQObjectType type)
|
||||||
{
|
{
|
||||||
switch(_RAW_TYPE(type))
|
switch(_RAW_TYPE(type))
|
||||||
{
|
{
|
||||||
|
@ -42,11 +42,11 @@ const SQChar *IdType2Name(SQObjectType type)
|
||||||
case _RT_INSTANCE: return "instance";
|
case _RT_INSTANCE: return "instance";
|
||||||
case _RT_WEAKREF: return "weakref";
|
case _RT_WEAKREF: return "weakref";
|
||||||
default:
|
default:
|
||||||
return nullptr;
|
NOT_REACHED();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const SQChar *GetTypeName(const SQObjectPtr &obj1)
|
std::string_view GetTypeName(const SQObjectPtr &obj1)
|
||||||
{
|
{
|
||||||
return IdType2Name(type(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)
|
bool SQClosure::Save(SQVM *v,SQUserPointer up,SQWRITEFUNC write)
|
||||||
{
|
{
|
||||||
_CHECK_IO(WriteTag(v,write,up,SQ_CLOSURESTREAM_HEAD));
|
_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(_funcproto(_function)->Save(v,up,write));
|
||||||
_CHECK_IO(WriteTag(v,write,up,SQ_CLOSURESTREAM_TAIL));
|
_CHECK_IO(WriteTag(v,write,up,SQ_CLOSURESTREAM_TAIL));
|
||||||
return true;
|
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)
|
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,SQ_CLOSURESTREAM_HEAD));
|
||||||
_CHECK_IO(CheckTag(v,read,up,sizeof(SQChar)));
|
_CHECK_IO(CheckTag(v,read,up,sizeof(char)));
|
||||||
SQObjectPtr func;
|
SQObjectPtr func;
|
||||||
_CHECK_IO(SQFunctionProto::Load(v,up,read,func));
|
_CHECK_IO(SQFunctionProto::Load(v,up,read,func));
|
||||||
_CHECK_IO(CheckTag(v,read,up,SQ_CLOSURESTREAM_TAIL));
|
_CHECK_IO(CheckTag(v,read,up,SQ_CLOSURESTREAM_TAIL));
|
||||||
|
|
|
@ -357,7 +357,7 @@ struct SQObjectPtr : public SQObject
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
private:
|
private:
|
||||||
SQObjectPtr(const SQChar *){} //safety
|
SQObjectPtr(const char *) = delete; //safety
|
||||||
};
|
};
|
||||||
|
|
||||||
inline void _Swap(SQObject &a,SQObject &b)
|
inline void _Swap(SQObject &a,SQObject &b)
|
||||||
|
@ -449,8 +449,8 @@ struct SQDelegable : public CHAINABLE_OBJ {
|
||||||
SQUnsignedInteger TranslateIndex(const SQObjectPtr &idx);
|
SQUnsignedInteger TranslateIndex(const SQObjectPtr &idx);
|
||||||
typedef sqvector<SQObjectPtr> SQObjectPtrVec;
|
typedef sqvector<SQObjectPtr> SQObjectPtrVec;
|
||||||
typedef sqvector<SQInteger> SQIntVec;
|
typedef sqvector<SQInteger> SQIntVec;
|
||||||
const SQChar *GetTypeName(const SQObjectPtr &obj1);
|
std::string_view GetTypeName(const SQObjectPtr &obj1);
|
||||||
const SQChar *IdType2Name(SQObjectType type);
|
std::string_view IdType2Name(SQObjectType type);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -87,7 +87,7 @@ enum SQOpcode
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SQInstructionDesc {
|
struct SQInstructionDesc {
|
||||||
const SQChar *name;
|
std::string_view name;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SQInstruction
|
struct SQInstruction
|
||||||
|
|
|
@ -18,7 +18,7 @@ public:
|
||||||
std::span<char> Span() { return std::span<char>(this->_val, this->_len); }
|
std::span<char> Span() { return std::span<char>(this->_val, this->_len); }
|
||||||
private:
|
private:
|
||||||
SQInteger _len;
|
SQInteger _len;
|
||||||
SQChar _val[1];
|
char _val[1];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ struct SQUserData : SQDelegable
|
||||||
SQInteger _size;
|
SQInteger _size;
|
||||||
SQRELEASEHOOK _hook;
|
SQRELEASEHOOK _hook;
|
||||||
SQUserPointer _typetag;
|
SQUserPointer _typetag;
|
||||||
SQChar _val[1];
|
char _val[1];
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //_SQUSERDATA_H_
|
#endif //_SQUSERDATA_H_
|
||||||
|
|
Loading…
Reference in New Issue