/* tells whether a key or value can be cleared from a weak table. Non-collectable objects are never removed from weak tables. Strings behave as 'values', so are never removed too. for other objects: if really collected, cannot keep them; for objects being finalized, keep them in keys, but not in values  */
static int iscleared(global_State *g, const TValue *o)
/* tells whether a key or value can be cleared from a weak table. Non-collectable objects are never removed from weak tables. Strings behave as 'values', so are never removed too. for other objects: if really collected, cannot keep them; for objects being finalized, keep them in keys, but not in values  */
static int iscleared(global_State *g, const TValue *o)
{
    markobject(g, tsvalue(o));
    return 0;
  }
  else return iswhite(gcvalue(o));
}