aboutsummaryrefslogtreecommitdiff
path: root/lobject.h
diff options
context:
space:
mode:
Diffstat (limited to 'lobject.h')
-rw-r--r--lobject.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/lobject.h b/lobject.h
index 209a87fc..c6c43647 100644
--- a/lobject.h
+++ b/lobject.h
@@ -192,6 +192,8 @@ typedef union {
192/* macro to test for (any kind of) nil */ 192/* macro to test for (any kind of) nil */
193#define ttisnil(v) checktype((v), LUA_TNIL) 193#define ttisnil(v) checktype((v), LUA_TNIL)
194 194
195#define tagisempty(tag) (novariant(tag) == LUA_TNIL)
196
195 197
196/* macro to test for a standard nil */ 198/* macro to test for a standard nil */
197#define ttisstrictnil(o) checktag((o), LUA_VNIL) 199#define ttisstrictnil(o) checktag((o), LUA_VNIL)
@@ -749,12 +751,15 @@ typedef union Node {
749#define setnorealasize(t) ((t)->flags |= BITRAS) 751#define setnorealasize(t) ((t)->flags |= BITRAS)
750 752
751 753
754typedef union ArrayCell ArrayCell;
755
756
752typedef struct Table { 757typedef struct Table {
753 CommonHeader; 758 CommonHeader;
754 lu_byte flags; /* 1<<p means tagmethod(p) is not present */ 759 lu_byte flags; /* 1<<p means tagmethod(p) is not present */
755 lu_byte lsizenode; /* log2 of size of 'node' array */ 760 lu_byte lsizenode; /* log2 of size of 'node' array */
756 unsigned int alimit; /* "limit" of 'array' array */ 761 unsigned int alimit; /* "limit" of 'array' array */
757 TValue *array; /* array part */ 762 ArrayCell *array; /* array part */
758 Node *node; 763 Node *node;
759 struct Table *metatable; 764 struct Table *metatable;
760 GCObject *gclist; 765 GCObject *gclist;