Lines Matching full:uv

52     UpVal *uv = gco2upv(o);  in luaF_initupvals()  local
53 uv->v.p = &uv->u.value; /* make it closed */ in luaF_initupvals()
54 setnilvalue(uv->v.p); in luaF_initupvals()
55 cl->upvals[i] = uv; in luaF_initupvals()
56 luaC_objbarrier(L, cl, uv); in luaF_initupvals()
67 UpVal *uv = gco2upv(o); in newupval() local
69 uv->v.p = s2v(level); /* current value lives in the stack */ in newupval()
70 uv->u.open.next = next; /* link it to list of open upvalues */ in newupval()
71 uv->u.open.previous = prev; in newupval()
73 next->u.open.previous = &uv->u.open.next; in newupval()
74 *prev = uv; in newupval()
79 return uv; in newupval()
144 TValue *uv = s2v(level); /* value being closed */ in prepcallclosemth() local
149 errobj = s2v(level + 1); /* error object goes after 'uv' */ in prepcallclosemth()
152 callclosemethod(L, uv, errobj, yy); in prepcallclosemth()
182 void luaF_unlinkupval (UpVal *uv) { in luaF_unlinkupval() argument
183 lua_assert(upisopen(uv)); in luaF_unlinkupval()
184 *uv->u.open.previous = uv->u.open.next; in luaF_unlinkupval()
185 if (uv->u.open.next) in luaF_unlinkupval()
186 uv->u.open.next->u.open.previous = uv->u.open.previous; in luaF_unlinkupval()
194 UpVal *uv; in luaF_closeupval() local
195 StkId upl; /* stack index pointed by 'uv' */ in luaF_closeupval()
196 while ((uv = L->openupval) != NULL && (upl = uplevel(uv)) >= level) { in luaF_closeupval()
197 TValue *slot = &uv->u.value; /* new position for value */ in luaF_closeupval()
198 lua_assert(uplevel(uv) < L->top.p); in luaF_closeupval()
199 luaF_unlinkupval(uv); /* remove upvalue from 'openupval' list */ in luaF_closeupval()
200 setobj(L, slot, uv->v.p); /* move value to upvalue slot */ in luaF_closeupval()
201 uv->v.p = slot; /* now current value lives here */ in luaF_closeupval()
202 if (!iswhite(uv)) { /* neither white nor dead? */ in luaF_closeupval()
203 nw2black(uv); /* closed upvalues cannot be gray */ in luaF_closeupval()
204 luaC_barrier(L, uv, slot); in luaF_closeupval()