aboutsummaryrefslogtreecommitdiff
path: root/src/lua/lstate.h
diff options
context:
space:
mode:
authorLi Jin <dragon-fly@qq.com>2020-09-11 15:31:51 +0800
committerLi Jin <dragon-fly@qq.com>2020-09-11 15:31:51 +0800
commit85b9ec82247f6e06b802188af35d09d3159625df (patch)
tree487152fb9639a74e323f7db962f558ba0514322d /src/lua/lstate.h
parentdfd4e3b2b2abc0137d26ed3df303a398741bb6a0 (diff)
downloadyuescript-85b9ec82247f6e06b802188af35d09d3159625df.tar.gz
yuescript-85b9ec82247f6e06b802188af35d09d3159625df.tar.bz2
yuescript-85b9ec82247f6e06b802188af35d09d3159625df.zip
update Lua.
Diffstat (limited to 'src/lua/lstate.h')
-rw-r--r--src/lua/lstate.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/lua/lstate.h b/src/lua/lstate.h
index 697d73b..1b6bcdf 100644
--- a/src/lua/lstate.h
+++ b/src/lua/lstate.h
@@ -63,7 +63,7 @@
63** can become gray have such a field. The field is not the same 63** can become gray have such a field. The field is not the same
64** in all objects, but it always has this name.) Any gray object 64** in all objects, but it always has this name.) Any gray object
65** must belong to one of these lists, and all objects in these lists 65** must belong to one of these lists, and all objects in these lists
66** must be gray (with one exception explained below): 66** must be gray (with two exceptions explained below):
67** 67**
68** 'gray': regular gray objects, still waiting to be visited. 68** 'gray': regular gray objects, still waiting to be visited.
69** 'grayagain': objects that must be revisited at the atomic phase. 69** 'grayagain': objects that must be revisited at the atomic phase.
@@ -75,11 +75,13 @@
75** 'ephemeron': ephemeron tables with white->white entries; 75** 'ephemeron': ephemeron tables with white->white entries;
76** 'allweak': tables with weak keys and/or weak values to be cleared. 76** 'allweak': tables with weak keys and/or weak values to be cleared.
77** 77**
78** The exception to that "gray rule" is the TOUCHED2 objects in 78** The exceptions to that "gray rule" are:
79** generational mode. Those objects stay in a gray list (because they 79** - TOUCHED2 objects in generational mode stay in a gray list (because
80** must be visited again at the end of the cycle), but they are marked 80** they must be visited again at the end of the cycle), but they are
81** black (because assignments to them must activate barriers, to move 81** marked black because assignments to them must activate barriers (to
82** them back to TOUCHED1). 82** move them back to TOUCHED1).
83** - Open upvales are kept gray to avoid barriers, but they stay out
84** of gray lists. (They don't even have a 'gclist' field.)
83*/ 85*/
84 86
85 87