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

Function traversestrongtable

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

Source from the content-addressed store, hash-verified

413
414
415static void traversestrongtable (global_State *g, Table *h) {
416 Node *n, *limit = gnodelast(h);
417 int i;
418 for (i = 0; i < h->sizearray; i++) /* traverse array part */
419 markvalue(g, &h->array[i]);
420 for (n = gnode(h, 0); n < limit; n++) { /* traverse hash part */
421 checkdeadkey(n);
422 if (ttisnil(gval(n))) /* entry is empty? */
423 removeentry(n); /* remove it */
424 else {
425 lua_assert(!ttisnil(gkey(n)));
426 markvalue(g, gkey(n)); /* mark key */
427 markvalue(g, gval(n)); /* mark value */
428 }
429 }
430}
431
432
433static lu_mem traversetable (global_State *g, Table *h) {

Callers 1

traversetableFunction · 0.85

Calls 1

removeentryFunction · 0.70

Tested by

no test coverage detected