tag methods are always functions, so don't need to store a whole object

This commit is contained in:
Roberto Ierusalimschy
2000-10-05 10:00:17 -03:00
parent 001f2bdd0e
commit 046a3d6173
10 changed files with 159 additions and 130 deletions

View File

@@ -1,5 +1,5 @@
/*
** $Id: lstate.h,v 1.39 2000/09/25 16:22:42 roberto Exp roberto $
** $Id: lstate.h,v 1.40 2000/09/29 12:42:13 roberto Exp roberto $
** Global State
** See Copyright Notice in lua.h
*/
@@ -32,6 +32,7 @@ struct Ref {
struct lua_longjmp; /* defined in ldo.c */
struct TM; /* defined in ltm.h */
typedef struct stringtable {
@@ -59,8 +60,8 @@ struct lua_State {
stringtable strt; /* hash table for strings */
stringtable udt; /* hash table for udata */
Hash *gt; /* table for globals */
struct IM *IMtable; /* table for tag methods */
int last_tag; /* last used tag in IMtable */
struct TM *TMtable; /* table for tag methods */
int last_tag; /* last used tag in TMtable */
struct Ref *refArray; /* locked objects */
int refSize; /* size of refArray */
int refFree; /* list of free positions in refArray */