18 typedef unsigned char Byte
;
20 typedef unsigned short Word
;
31 PUSHLOCAL0
, PUSHLOCAL1
, PUSHLOCAL2
, PUSHLOCAL3
, PUSHLOCAL4
,
32 PUSHLOCAL5
, PUSHLOCAL6
, PUSHLOCAL7
, PUSHLOCAL8
, PUSHLOCAL9
,
38 STORELOCAL0
, STORELOCAL1
, STORELOCAL2
, STORELOCAL3
, STORELOCAL4
,
39 STORELOCAL5
, STORELOCAL6
, STORELOCAL7
, STORELOCAL8
, STORELOCAL9
,
84 typedef void (*Cfunction
) (void);
85 typedef int (*Input
) (void);
86 typedef void (*Unput
) (int );
110 /* Macros to access structure members */
111 #define tag(o) ((o)->tag)
112 #define nvalue(o) ((o)->value.n)
113 #define svalue(o) ((o)->value.s)
114 #define bvalue(o) ((o)->value.b)
115 #define avalue(o) ((o)->value.a)
116 #define fvalue(o) ((o)->value.f)
117 #define uvalue(o) ((o)->value.u)
119 /* Macros to access symbol table */
120 #define s_name(i) (lua_table[i].name)
121 #define s_object(i) (lua_table[i].object)
122 #define s_tag(i) (tag(&s_object(i)))
123 #define s_nvalue(i) (nvalue(&s_object(i)))
124 #define s_svalue(i) (svalue(&s_object(i)))
125 #define s_bvalue(i) (bvalue(&s_object(i)))
126 #define s_avalue(i) (avalue(&s_object(i)))
127 #define s_fvalue(i) (fvalue(&s_object(i)))
128 #define s_uvalue(i) (uvalue(&s_object(i)))
131 /* Exported functions */
132 int lua_execute (Byte
*pc
);
133 void lua_markstack (void);
134 char *lua_strdup (char *l
);
136 void lua_setinput (Input fn
); /* from "lua.lex" module */
137 void lua_setunput (Unput fn
); /* from "lua.lex" module */
138 char *lua_lasttext (void); /* from "lua.lex" module */
139 int lua_parse (void); /* from "lua.stx" module */
140 void lua_type (void);
141 void lua_obj2number (void);
142 void lua_print (void);