MCPcopy Create free account
hub / github.com/F-Stack/f-stack / freeobj

Function freeobj

freebsd/contrib/openzfs/module/lua/lgc.c:662–686  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

660
661
662static void freeobj (lua_State *L, GCObject *o) {
663 switch (gch(o)->tt) {
664 case LUA_TPROTO: luaF_freeproto(L, gco2p(o)); break;
665 case LUA_TLCL: {
666 luaM_freemem(L, o, sizeLclosure(gco2lcl(o)->nupvalues));
667 break;
668 }
669 case LUA_TCCL: {
670 luaM_freemem(L, o, sizeCclosure(gco2ccl(o)->nupvalues));
671 break;
672 }
673 case LUA_TUPVAL: luaF_freeupval(L, gco2uv(o)); break;
674 case LUA_TTABLE: luaH_free(L, gco2t(o)); break;
675 case LUA_TTHREAD: luaE_freethread(L, gco2th(o)); break;
676 case LUA_TUSERDATA: luaM_freemem(L, o, sizeudata(gco2u(o))); break;
677 case LUA_TSHRSTR:
678 G(L)->strt.nuse--;
679 /* FALLTHROUGH */
680 case LUA_TLNGSTR: {
681 luaM_freemem(L, o, sizestring(gco2ts(o)));
682 break;
683 }
684 default: lua_assert(0);
685 }
686}
687
688
689#define sweepwholelist(L,p) sweeplist(L,p,MAX_LUMEM)

Callers 1

sweeplistFunction · 0.70

Calls 4

luaF_freeprotoFunction · 0.70
luaF_freeupvalFunction · 0.70
luaH_freeFunction · 0.70
luaE_freethreadFunction · 0.70

Tested by

no test coverage detected