commit 54840fb25696ab30e11d2d80f3c18af6d1f01481
parent e87fddf1adab8ca60ec988c9d71d29a44d7129a3
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date: Fri, 15 Jan 1999 11:11:00 -0200
new functions to manipulate C global variables
Diffstat:
3 files changed, 51 insertions(+), 11 deletions(-)
diff --git a/lapi.c b/lapi.c
@@ -1,5 +1,5 @@
/*
-** $Id: lapi.c,v 1.29 1998/12/03 15:45:15 roberto Exp roberto $
+** $Id: lapi.c,v 1.30 1998/12/30 17:26:49 roberto Exp roberto $
** Lua API
** See Copyright Notice in lua.h
*/
@@ -425,8 +425,42 @@ void lua_settag (int tag)
}
+
/*
+** {======================================================
+** To manipulate the implementation global variables
** =======================================================
+*/
+
+lua_State *lua_setstate (lua_State *st) {
+ lua_State *old = lua_state;
+ lua_state = st;
+ return old;
+}
+
+lua_LHFunction lua_setlinehook (lua_LHFunction func) {
+ lua_LHFunction old = lua_linehook;
+ lua_linehook = func;
+ return old;
+}
+
+lua_CHFunction lua_setcallhook (lua_CHFunction func) {
+ lua_CHFunction old = lua_callhook;
+ lua_callhook = func;
+ return old;
+}
+
+int lua_setdebug (int debug) {
+ int old = lua_debug;
+ lua_debug = debug;
+ return old;
+}
+
+/* }====================================================== */
+
+
+/*
+** {======================================================
** Debug interface
** =======================================================
*/
@@ -541,8 +575,11 @@ char *lua_getobjname (lua_Object o, char **name)
else return "";
}
+/* }====================================================== */
+
+
/*
-** =======================================================
+** {======================================================
** BLOCK mechanism
** =======================================================
*/
@@ -582,9 +619,11 @@ lua_Object lua_getref (int ref)
return (o ? put_luaObject(o) : LUA_NOOBJECT);
}
+/* }====================================================== */
+
/*
-** =======================================================
+** {======================================================
** Derived functions
** =======================================================
*/
@@ -602,6 +641,8 @@ void (lua_pushcfunction) (lua_CFunction f) { lua_pushcfunction(f); }
int (lua_clonetag) (int t) { return lua_clonetag(t); }
+/* }====================================================== */
+
diff --git a/lstate.c b/lstate.c
@@ -1,5 +1,5 @@
/*
-** $Id: lstate.c,v 1.5 1997/12/17 20:48:58 roberto Exp roberto $
+** $Id: lstate.c,v 1.6 1998/06/02 20:37:04 roberto Exp roberto $
** Global State
** See Copyright Notice in lua.h
*/
@@ -78,9 +78,3 @@ void lua_close (void)
}
-lua_State *lua_setstate (lua_State *st) {
- lua_State *old = lua_state;
- lua_state = st;
- return old;
-}
-
diff --git a/luadebug.h b/luadebug.h
@@ -1,5 +1,5 @@
/*
-** $Id: luadebug.h,v 1.2 1998/06/19 16:14:09 roberto Exp roberto $
+** $Id: luadebug.h,v 1.3 1998/09/07 18:59:59 roberto Exp roberto $
** Debugging API
** See Copyright Notice in lua.h
*/
@@ -31,4 +31,9 @@ extern lua_CHFunction lua_callhook;
extern int lua_debug;
+extern lua_LHFunction lua_setlinehook (lua_LHFunction func);
+extern lua_CHFunction lua_setcallhook (lua_CHFunction func);
+extern int lua_setdebug (int debug);
+
+
#endif