MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / isSCnumber

Function isSCnumber

xrepo/packages/l/lua/port/lua/src/lcode.c:1255–1269  ·  view source on GitHub ↗

** Check whether expression 'e' is a literal integer or float in ** proper range to fit in a register (sB or sC). */

Source from the content-addressed store, hash-verified

1253** proper range to fit in a register (sB or sC).
1254*/
1255static int isSCnumber (expdesc *e, int *pi, int *isfloat) {
1256 lua_Integer i;
1257 if (e->k == VKINT)
1258 i = e->u.ival;
1259 else if (e->k == VKFLT && luaV_flttointeger(e->u.nval, &i, F2Ieq))
1260 *isfloat = 1;
1261 else
1262 return 0; /* not a number */
1263 if (!hasjumps(e) && fitsC(i)) {
1264 *pi = int2sC(cast_int(i));
1265 return 1;
1266 }
1267 else
1268 return 0;
1269}
1270
1271
1272/*

Callers 3

codeorderFunction · 0.85
codeeqFunction · 0.85
luaK_infixFunction · 0.85

Calls 2

luaV_flttointegerFunction · 0.85
fitsCFunction · 0.85

Tested by

no test coverage detected