diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2001-06-26 10:20:45 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2001-06-26 10:20:45 -0300 |
commit | 37f3a1c0452439bce1f5c2069ca015af148bf62f (patch) | |
tree | 0ad887fb08400103904dab1954695d28aece0500 /lobject.h | |
parent | 9559c111a32479794acc59fba2cbeab365a567f3 (diff) | |
download | lua-37f3a1c0452439bce1f5c2069ca015af148bf62f.tar.gz lua-37f3a1c0452439bce1f5c2069ca015af148bf62f.tar.bz2 lua-37f3a1c0452439bce1f5c2069ca015af148bf62f.zip |
too much optimization to "break" keys in tables; keep them as TObjects...
Diffstat (limited to 'lobject.h')
-rw-r--r-- | lobject.h | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lobject.h,v 1.105 2001/06/07 15:01:21 roberto Exp roberto $ | 2 | ** $Id: lobject.h,v 1.106 2001/06/15 20:36:57 roberto Exp roberto $ |
3 | ** Type definitions for Lua objects | 3 | ** Type definitions for Lua objects |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -73,6 +73,9 @@ typedef struct lua_TObject { | |||
73 | { TObject *o1=(obj1); const TObject *o2=(obj2); \ | 73 | { TObject *o1=(obj1); const TObject *o2=(obj2); \ |
74 | o1->tt=o2->tt; o1->value = o2->value; } | 74 | o1->tt=o2->tt; o1->value = o2->value; } |
75 | 75 | ||
76 | #define setttype(obj, tt) (ttype(obj) = (tt)) | ||
77 | |||
78 | |||
76 | 79 | ||
77 | typedef TObject *StkId; /* index to stack elements */ | 80 | typedef TObject *StkId; /* index to stack elements */ |
78 | 81 | ||
@@ -167,8 +170,7 @@ typedef struct Closure { | |||
167 | 170 | ||
168 | typedef struct Node { | 171 | typedef struct Node { |
169 | struct Node *next; /* for chaining */ | 172 | struct Node *next; /* for chaining */ |
170 | int key_tt; /* (break object to save padding space) */ | 173 | TObject key; |
171 | Value key_value; | ||
172 | TObject val; | 174 | TObject val; |
173 | } Node; | 175 | } Node; |
174 | 176 | ||