diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-12-17 14:46:37 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-12-17 14:46:37 -0200 |
commit | 063d4e4543088e7a21965bda8ee5a0f952a9029e (patch) | |
tree | 6c3f2f8e98c26f071a94a32f9f2754396a66a9de /lstate.h | |
parent | e354c6355e7f48e087678ec49e340ca0696725b1 (diff) | |
download | lua-5.3.5.tar.gz lua-5.3.5.tar.bz2 lua-5.3.5.zip |
Lua 5.3.5 ported to gitv5.3.5
This is the first commit for the branch Lua 5.3. All source files
were copied from the official distribution of 5.3.5 in the Lua site.
The test files are the same of 5.3.4. The manual came from the
previous RCS repository, revision 1.167.1.2.
Diffstat (limited to 'lstate.h')
-rw-r--r-- | lstate.h | 20 |
1 files changed, 19 insertions, 1 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lstate.h,v 2.132 2016/10/19 12:31:42 roberto Exp roberto $ | 2 | ** $Id: lstate.h,v 2.133.1.1 2017/04/19 17:39:34 roberto Exp $ |
3 | ** Global State | 3 | ** Global State |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -26,6 +26,24 @@ | |||
26 | ** 'tobefnz': all objects ready to be finalized; | 26 | ** 'tobefnz': all objects ready to be finalized; |
27 | ** 'fixedgc': all objects that are not to be collected (currently | 27 | ** 'fixedgc': all objects that are not to be collected (currently |
28 | ** only small strings, such as reserved words). | 28 | ** only small strings, such as reserved words). |
29 | ** | ||
30 | ** Moreover, there is another set of lists that control gray objects. | ||
31 | ** These lists are linked by fields 'gclist'. (All objects that | ||
32 | ** can become gray have such a field. The field is not the same | ||
33 | ** in all objects, but it always has this name.) Any gray object | ||
34 | ** must belong to one of these lists, and all objects in these lists | ||
35 | ** must be gray: | ||
36 | ** | ||
37 | ** 'gray': regular gray objects, still waiting to be visited. | ||
38 | ** 'grayagain': objects that must be revisited at the atomic phase. | ||
39 | ** That includes | ||
40 | ** - black objects got in a write barrier; | ||
41 | ** - all kinds of weak tables during propagation phase; | ||
42 | ** - all threads. | ||
43 | ** 'weak': tables with weak values to be cleared; | ||
44 | ** 'ephemeron': ephemeron tables with white->white entries; | ||
45 | ** 'allweak': tables with weak keys and/or weak values to be cleared. | ||
46 | ** The last three lists are used only during the atomic phase. | ||
29 | 47 | ||
30 | */ | 48 | */ |
31 | 49 | ||