diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-04-11 15:41:09 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-04-11 15:41:09 -0300 |
| commit | a3d36fe283c09d4e56474da98f22d13162cc9fec (patch) | |
| tree | 1f6e2ed56d50dc14aa669fa5f31a63755abd4553 /lstate.h | |
| parent | 9569ad6b0ddcde43eb893d2cfe5bcdb715c0ff20 (diff) | |
| download | lua-a3d36fe283c09d4e56474da98f22d13162cc9fec.tar.gz lua-a3d36fe283c09d4e56474da98f22d13162cc9fec.tar.bz2 lua-a3d36fe283c09d4e56474da98f22d13162cc9fec.zip | |
Upvalues collected like everything else (with mark-sweep) instead
of reference count (simpler and better for generational mode)
Diffstat (limited to 'lstate.h')
| -rw-r--r-- | lstate.h | 4 |
1 files changed, 3 insertions, 1 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lstate.h,v 2.135 2017/02/23 21:07:34 roberto Exp $ | 2 | ** $Id: lstate.h,v 2.136 2017/04/05 16:50:51 roberto Exp roberto $ |
| 3 | ** Global State | 3 | ** Global State |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -224,6 +224,7 @@ union GCUnion { | |||
| 224 | struct Table h; | 224 | struct Table h; |
| 225 | struct Proto p; | 225 | struct Proto p; |
| 226 | struct lua_State th; /* thread */ | 226 | struct lua_State th; /* thread */ |
| 227 | struct UpVal upv; | ||
| 227 | }; | 228 | }; |
| 228 | 229 | ||
| 229 | 230 | ||
| @@ -240,6 +241,7 @@ union GCUnion { | |||
| 240 | #define gco2t(o) check_exp((o)->tt == LUA_TTABLE, &((cast_u(o))->h)) | 241 | #define gco2t(o) check_exp((o)->tt == LUA_TTABLE, &((cast_u(o))->h)) |
| 241 | #define gco2p(o) check_exp((o)->tt == LUA_TPROTO, &((cast_u(o))->p)) | 242 | #define gco2p(o) check_exp((o)->tt == LUA_TPROTO, &((cast_u(o))->p)) |
| 242 | #define gco2th(o) check_exp((o)->tt == LUA_TTHREAD, &((cast_u(o))->th)) | 243 | #define gco2th(o) check_exp((o)->tt == LUA_TTHREAD, &((cast_u(o))->th)) |
| 244 | #define gco2upv(o) check_exp((o)->tt == LUA_TUPVAL, &((cast_u(o))->upv)) | ||
| 243 | 245 | ||
| 244 | 246 | ||
| 245 | /* macro to convert a Lua object into a GCObject */ | 247 | /* macro to convert a Lua object into a GCObject */ |
