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

Function luaD_protectedparser

src/Chain/libraries/glua/ldo.cpp:814–831  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

812
813
814int luaD_protectedparser(lua_State *L, ZIO *z, const char *name,
815 const char *mode) {
816 struct SParser p;
817 int status;
818 L->nny++; /* cannot yield during parsing */
819 p.z = z; p.name = name; p.mode = mode;
820 p.dyd.actvar.arr = nullptr; p.dyd.actvar.size = 0;
821 p.dyd.gt.arr = nullptr; p.dyd.gt.size = 0;
822 p.dyd.label.arr = nullptr; p.dyd.label.size = 0;
823 luaZ_initbuffer(L, &p.buff);
824 status = luaD_pcall(L, f_parser, &p, savestack(L, L->top), L->errfunc);
825 luaZ_freebuffer(L, &p.buff);
826 luaM_freearray(L, p.dyd.actvar.arr, p.dyd.actvar.size);
827 luaM_freearray(L, p.dyd.gt.arr, p.dyd.gt.size);
828 luaM_freearray(L, p.dyd.label.arr, p.dyd.label.size);
829 L->nny--;
830 return status;
831}
832
833

Callers 2

lua_loadFunction · 0.85
lua_load_with_checkFunction · 0.85

Calls 1

luaD_pcallFunction · 0.85

Tested by

no test coverage detected