summaryrefslogtreecommitdiff
path: root/lfunc.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2003-12-10 10:13:36 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2003-12-10 10:13:36 -0200
commit47fc57a2529c83376883f36954082cfe80ae588f (patch)
treec2e57e2f9f7d78279144bfd9cbd04a3b1b131f12 /lfunc.c
parent4d5fe1f54bc00850f77a7c42f9e95d0ff3f1ab5b (diff)
downloadlua-github-47fc57a2529c83376883f36954082cfe80ae588f.tar.gz
`TObject' renamed to `TValue' + other name changes and better assertions
for incremental garbage collection
Diffstat (limited to 'lfunc.c')
-rw-r--r--lfunc.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/lfunc.c b/lfunc.c
index 77193ad7..af27bf0d 100644
--- a/lfunc.c
+++ b/lfunc.c
@@ -1,5 +1,5 @@
/*
-** $Id: lfunc.c,v 1.73 2003/12/03 20:03:07 roberto Exp roberto $
+** $Id: lfunc.c,v 1.74 2003/12/09 16:56:11 roberto Exp roberto $
** Auxiliary functions to manipulate prototypes and closures
** See Copyright Notice in lua.h
*/
@@ -21,16 +21,16 @@
Closure *luaF_newCclosure (lua_State *L, int nelems) {
Closure *c = cast(Closure *, luaM_malloc(L, sizeCclosure(nelems)));
- luaC_link(L, valtogco(c), LUA_TFUNCTION);
+ luaC_link(L, obj2gco(c), LUA_TFUNCTION);
c->c.isC = 1;
c->c.nupvalues = cast(lu_byte, nelems);
return c;
}
-Closure *luaF_newLclosure (lua_State *L, int nelems, TObject *e) {
+Closure *luaF_newLclosure (lua_State *L, int nelems, TValue *e) {
Closure *c = cast(Closure *, luaM_malloc(L, sizeLclosure(nelems)));
- luaC_link(L, valtogco(c), LUA_TFUNCTION);
+ luaC_link(L, obj2gco(c), LUA_TFUNCTION);
c->l.isC = 0;
c->l.g = *e;
c->l.nupvalues = cast(lu_byte, nelems);
@@ -40,7 +40,7 @@ Closure *luaF_newLclosure (lua_State *L, int nelems, TObject *e) {
UpVal *luaF_newupval (lua_State *L) {
UpVal *uv = luaM_new(L, UpVal);
- luaC_link(L, valtogco(uv), LUA_TUPVAL);
+ luaC_link(L, obj2gco(uv), LUA_TUPVAL);
uv->v = &uv->value;
setnilvalue(uv->v);
return uv;
@@ -60,7 +60,7 @@ UpVal *luaF_findupval (lua_State *L, StkId level) {
uv->marked = bitmask(FIXEDBIT); /* open upvalues cannot be collected */
uv->v = level; /* current value lives in the stack */
uv->next = *pp; /* chain it in the proper position */
- *pp = valtogco(uv);
+ *pp = obj2gco(uv);
return uv;
}
@@ -68,18 +68,18 @@ UpVal *luaF_findupval (lua_State *L, StkId level) {
void luaF_close (lua_State *L, StkId level) {
UpVal *uv;
while ((uv = ngcotouv(L->openupval)) != NULL && uv->v >= level) {
- setobj(&uv->value, uv->v);
+ setobj(L, &uv->value, uv->v);
luaC_barrier(L, uv, uv->v);
uv->v = &uv->value; /* now current value lives here */
L->openupval = uv->next; /* remove from `open' list */
- luaC_link(L, valtogco(uv), LUA_TUPVAL);
+ luaC_link(L, obj2gco(uv), LUA_TUPVAL);
}
}
Proto *luaF_newproto (lua_State *L) {
Proto *f = luaM_new(L, Proto);
- luaC_link(L, valtogco(f), LUA_TPROTO);
+ luaC_link(L, obj2gco(f), LUA_TPROTO);
f->k = NULL;
f->sizek = 0;
f->p = NULL;
@@ -105,7 +105,7 @@ Proto *luaF_newproto (lua_State *L) {
void luaF_freeproto (lua_State *L, Proto *f) {
luaM_freearray(L, f->code, f->sizecode, Instruction);
luaM_freearray(L, f->p, f->sizep, Proto *);
- luaM_freearray(L, f->k, f->sizek, TObject);
+ luaM_freearray(L, f->k, f->sizek, TValue);
luaM_freearray(L, f->lineinfo, f->sizelineinfo, int);
luaM_freearray(L, f->locvars, f->sizelocvars, struct LocVar);
luaM_freearray(L, f->upvalues, f->sizeupvalues, TString *);