MCPcopy Create free account
hub / github.com/Achain-Dev/Achain / g_write

Function g_write

src/Chain/libraries/glua/liolib.cpp:610–629  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

608
609
610static int g_write(lua_State *L, FILE *f, int arg) {
611 int nargs = lua_gettop(L) - arg;
612 int status = 1;
613 for (; nargs--; arg++) {
614 if (lua_type(L, arg) == LUA_TNUMBER) {
615 /* optimization: could be done exactly as for strings */
616 int len = lua_isinteger(L, arg)
617 ? fprintf(f, LUA_INTEGER_FMT, lua_tointeger(L, arg))
618 : fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg));
619 status = status && (len > 0);
620 }
621 else {
622 size_t l;
623 const char *s = luaL_checklstring(L, arg, &l);
624 status = status && (fwrite(s, sizeof(char), l, f) == l);
625 }
626 }
627 if (status) return 1; /* file handle already on stack top */
628 else return luaL_fileresult(L, status, nullptr);
629}
630
631
632static int io_write(lua_State *L) {

Callers 2

io_writeFunction · 0.85
f_writeFunction · 0.85

Calls 5

lua_gettopFunction · 0.85
lua_typeFunction · 0.85
lua_isintegerFunction · 0.85
luaL_checklstringFunction · 0.85
luaL_fileresultFunction · 0.85

Tested by

no test coverage detected