Codechange: use std::string_view for sq_pushstring

This commit is contained in:
Rubidium
2025-05-03 13:19:53 +02:00
committed by rubidium42
parent 3020e615a9
commit ec79ceb2be
17 changed files with 52 additions and 55 deletions
+1 -2
View File
@@ -237,8 +237,7 @@ void sq_newarray(HSQUIRRELVM v,SQInteger size);
void sq_newclosure(HSQUIRRELVM v,SQFUNCTION func,SQUnsignedInteger nfreevars);
SQRESULT sq_setparamscheck(HSQUIRRELVM v,SQInteger nparamscheck,const SQChar *typemask);
SQRESULT sq_bindenv(HSQUIRRELVM v,SQInteger idx);
void sq_pushstring(HSQUIRRELVM v,const SQChar *s,SQInteger len);
inline void sq_pushstring(HSQUIRRELVM v, std::string_view str, SQInteger len = -1) { sq_pushstring(v, str.data(), len == -1 ? str.size() : len); }
void sq_pushstring(HSQUIRRELVM v, std::string_view str);
void sq_pushfloat(HSQUIRRELVM v,SQFloat f);
void sq_pushinteger(HSQUIRRELVM v,SQInteger n);
void sq_pushbool(HSQUIRRELVM v,SQBool b);
+3 -3
View File
@@ -99,7 +99,7 @@ SQRESULT sqstd_register_mathlib(HSQUIRRELVM v)
{
SQInteger i=0;
while(mathlib_funcs[i].name!=nullptr) {
sq_pushstring(v,mathlib_funcs[i].name,-1);
sq_pushstring(v,mathlib_funcs[i].name);
sq_newclosure(v,mathlib_funcs[i].f,0);
sq_setparamscheck(v,mathlib_funcs[i].nparamscheck,mathlib_funcs[i].typemask);
sq_setnativeclosurename(v,-1,mathlib_funcs[i].name);
@@ -107,11 +107,11 @@ SQRESULT sqstd_register_mathlib(HSQUIRRELVM v)
i++;
}
#ifdef EXPORT_DEFAULT_SQUIRREL_FUNCTIONS
sq_pushstring(v,"RAND_MAX",-1);
sq_pushstring(v,"RAND_MAX");
sq_pushinteger(v,RAND_MAX);
sq_createslot(v,-3);
#endif /* EXPORT_DEFAULT_SQUIRREL_FUNCTIONS */
sq_pushstring(v,"PI",-1);
sq_pushstring(v,"PI");
sq_pushfloat(v,(SQFloat)M_PI);
sq_createslot(v,-3);
return SQ_OK;
+2 -4
View File
@@ -210,11 +210,9 @@ void sq_pushnull(HSQUIRRELVM v)
v->Push(_null_);
}
void sq_pushstring(HSQUIRRELVM v,const SQChar *s,SQInteger len)
void sq_pushstring(HSQUIRRELVM v,std::string_view s)
{
if(s)
v->Push(SQObjectPtr(SQString::Create(_ss(v), s, len)));
else v->Push(_null_);
v->Push(SQObjectPtr(SQString::Create(_ss(v), s)));
}
void sq_pushinteger(HSQUIRRELVM v,SQInteger n)
+16 -16
View File
@@ -111,20 +111,20 @@ static SQInteger base_getstackinfos(HSQUIRRELVM v)
if(si.funcname)fn = si.funcname;
if(si.source)src = si.source;
sq_newtable(v);
sq_pushstring(v, "func", -1);
sq_pushstring(v, fn, -1);
sq_pushstring(v, "func");
sq_pushstring(v, fn);
sq_createslot(v, -3);
sq_pushstring(v, "src", -1);
sq_pushstring(v, src, -1);
sq_pushstring(v, "src");
sq_pushstring(v, src);
sq_createslot(v, -3);
sq_pushstring(v, "line", -1);
sq_pushstring(v, "line");
sq_pushinteger(v, si.line);
sq_createslot(v, -3);
sq_pushstring(v, "locals", -1);
sq_pushstring(v, "locals");
sq_newtable(v);
seq=0;
while ((name = sq_getlocal(v, level, seq))) {
sq_pushstring(v, name, -1);
sq_pushstring(v, name);
sq_push(v, -2);
sq_createslot(v, -4);
sq_pop(v, 1);
@@ -272,23 +272,23 @@ void sq_base_register(HSQUIRRELVM v)
SQInteger i=0;
sq_pushroottable(v);
while(base_funcs[i].name!=nullptr) {
sq_pushstring(v,base_funcs[i].name,-1);
sq_pushstring(v,base_funcs[i].name);
sq_newclosure(v,base_funcs[i].f,0);
sq_setnativeclosurename(v,-1,base_funcs[i].name);
sq_setparamscheck(v,base_funcs[i].nparamscheck,base_funcs[i].typemask);
sq_createslot(v,-3);
i++;
}
sq_pushstring(v,"_version_",-1);
sq_pushstring(v,SQUIRREL_VERSION,-1);
sq_pushstring(v,"_version_");
sq_pushstring(v,SQUIRREL_VERSION);
sq_createslot(v,-3);
sq_pushstring(v,"_charsize_",-1);
sq_pushstring(v,"_charsize_");
sq_pushinteger(v,sizeof(SQChar));
sq_createslot(v,-3);
sq_pushstring(v,"_intsize_",-1);
sq_pushstring(v,"_intsize_");
sq_pushinteger(v,sizeof(SQInteger));
sq_createslot(v,-3);
sq_pushstring(v,"_floatsize_",-1);
sq_pushstring(v,"_floatsize_");
sq_pushinteger(v,sizeof(SQFloat));
sq_createslot(v,-3);
sq_pop(v,1);
@@ -872,13 +872,13 @@ static SQInteger thread_getstatus(HSQUIRRELVM v)
SQObjectPtr &o = stack_get(v,1);
switch(sq_getvmstate(_thread(o))) {
case SQ_VMSTATE_IDLE:
sq_pushstring(v,"idle",-1);
sq_pushstring(v,"idle");
break;
case SQ_VMSTATE_RUNNING:
sq_pushstring(v,"running",-1);
sq_pushstring(v,"running");
break;
case SQ_VMSTATE_SUSPENDED:
sq_pushstring(v,"suspended",-1);
sq_pushstring(v,"suspended");
break;
default:
return sq_throwerror(v,"internal VM error");