summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLua Team <team@lua.org>1996-05-14 12:00:00 +0000
committerrepogen <>1996-05-14 12:00:00 +0000
commit721542976ebc89f2f8d17d19be7e4426570b69be (patch)
tree0c79a45c63aa89d6e4b8ac80931e46d74a72f8cb /include
parent71754d2f6423fb9b6e87658e58bafc5470d53f65 (diff)
downloadlua-github-2.4.tar.gz
Lua 2.42.4
Diffstat (limited to 'include')
-rw-r--r--include/Makefile8
-rw-r--r--include/lua.h40
-rw-r--r--include/luadebug.h19
-rw-r--r--include/lualib.h15
4 files changed, 57 insertions, 25 deletions
diff --git a/include/Makefile b/include/Makefile
index e55b7717..e21de74d 100644
--- a/include/Makefile
+++ b/include/Makefile
@@ -1,11 +1,13 @@
-# makefile for lua distribution
+# makefile for lua distribution (includes)
+
+LUA= ..
+
+include $(LUA)/config
SRCS= lua.h lualib.h luadebug.h
all:
-dynamic:
-
clean:
co:
diff --git a/include/lua.h b/include/lua.h
index 4e0a52e3..07f53209 100644
--- a/include/lua.h
+++ b/include/lua.h
@@ -2,14 +2,14 @@
** LUA - Linguagem para Usuarios de Aplicacao
** Grupo de Tecnologia em Computacao Grafica
** TeCGraf - PUC-Rio
-** $Id: lua.h,v 3.21 1995/11/13 15:36:52 roberto Exp $
+** $Id: lua.h,v 3.28 1996/05/06 14:32:59 roberto Exp $
*/
#ifndef lua_h
#define lua_h
-#define LUA_VERSION "Lua 2.2"
+#define LUA_VERSION "Lua 2.4"
#define LUA_COPYRIGHT "Copyright (C) 1994, 1995 TeCGraf"
#define LUA_AUTHORS "W. Celes, R. Ierusalimschy & L. H. de Figueiredo"
@@ -52,6 +52,14 @@ void lua_endblock (void);
lua_Object lua_getparam (int number);
#define lua_getresult(_) lua_getparam(_)
+#define lua_isnil(_) (lua_type(_)==LUA_T_NIL)
+#define lua_istable(_) (lua_type(_)==LUA_T_ARRAY)
+#define lua_isuserdata(_) (lua_type(_)>=LUA_T_USERDATA)
+#define lua_iscfunction(_) (lua_type(_)==LUA_T_CFUNCTION)
+int lua_isnumber (lua_Object object);
+int lua_isstring (lua_Object object);
+int lua_isfunction (lua_Object object);
+
float lua_getnumber (lua_Object object);
char *lua_getstring (lua_Object object);
lua_CFunction lua_getcfunction (lua_Object object);
@@ -60,7 +68,6 @@ void *lua_getuserdata (lua_Object object);
void lua_pushnil (void);
void lua_pushnumber (float n);
void lua_pushstring (char *s);
-void lua_pushliteral (char *s);
void lua_pushcfunction (lua_CFunction fn);
void lua_pushusertag (void *u, int tag);
void lua_pushobject (lua_Object object);
@@ -73,32 +80,33 @@ lua_Object lua_getsubscript (void);
int lua_type (lua_Object object);
-int lua_lock (void);
-lua_Object lua_getlocked (int ref);
-void lua_pushlocked (int ref);
-void lua_unlock (int ref);
+
+int lua_ref (int lock);
+lua_Object lua_getref (int ref);
+void lua_pushref (int ref);
+void lua_unref (int ref);
lua_Object lua_createtable (void);
/* some useful macros */
-#define lua_lockobject(o) (lua_pushobject(o), lua_lock())
+#define lua_refobject(o,l) (lua_pushobject(o), lua_ref(l))
#define lua_register(n,f) (lua_pushcfunction(f), lua_storeglobal(n))
#define lua_pushuserdata(u) lua_pushusertag(u, LUA_T_USERDATA)
-#define lua_isnil(_) (lua_type(_)==LUA_T_NIL)
-#define lua_isnumber(_) (lua_type(_)==LUA_T_NUMBER)
-#define lua_isstring(_) (lua_type(_)==LUA_T_STRING)
-#define lua_istable(_) (lua_type(_)==LUA_T_ARRAY)
-#define lua_isfunction(_) (lua_type(_)==LUA_T_FUNCTION)
-#define lua_iscfunction(_) (lua_type(_)==LUA_T_CFUNCTION)
-#define lua_isuserdata(_) (lua_type(_)>=LUA_T_USERDATA)
+/* for compatibility with old versions. Avoid using these macros */
+
+#define lua_lockobject(o) lua_refobject(o,1)
+#define lua_lock() lua_ref(1)
+#define lua_getlocked lua_getref
+#define lua_pushlocked lua_pushref
+#define lua_unlock lua_unref
-/* for lua 1.1 compatibility. Avoid using these macros */
+#define lua_pushliteral(o) lua_pushstring(o)
#define lua_getindexed(o,n) (lua_pushobject(o), lua_pushnumber(n), lua_getsubscript())
#define lua_getfield(o,f) (lua_pushobject(o), lua_pushliteral(f), lua_getsubscript())
diff --git a/include/luadebug.h b/include/luadebug.h
index c1e26dcf..9392967c 100644
--- a/include/luadebug.h
+++ b/include/luadebug.h
@@ -2,7 +2,7 @@
** LUA - Linguagem para Usuarios de Aplicacao
** Grupo de Tecnologia em Computacao Grafica
** TeCGraf - PUC-Rio
-** $Id: luadebug.h,v 1.2 1995/10/26 14:21:56 roberto Exp $
+** $Id: luadebug.h,v 1.6 1996/03/20 17:05:44 roberto Exp $
*/
@@ -11,10 +11,21 @@
#include "lua.h"
-lua_Object lua_stackedfunction(int level);
+typedef lua_Object lua_Function;
+
+typedef void (*lua_LHFunction) (int line);
+typedef void (*lua_CHFunction) (lua_Function func, char *file, int line);
+
+lua_Function lua_stackedfunction (int level);
void lua_funcinfo (lua_Object func, char **filename, int *linedefined);
-int lua_currentline (lua_Object func);
-char *getobjname (lua_Object o, char **name);
+int lua_currentline (lua_Function func);
+char *lua_getobjname (lua_Object o, char **name);
+
+lua_Object lua_getlocal (lua_Function func, int local_number, char **name);
+int lua_setlocal (lua_Function func, int local_number);
+extern lua_LHFunction lua_linehook;
+extern lua_CHFunction lua_callhook;
+extern int lua_debug;
#endif
diff --git a/include/lualib.h b/include/lualib.h
index d250aa5b..6005d7c2 100644
--- a/include/lualib.h
+++ b/include/lualib.h
@@ -2,21 +2,32 @@
** Libraries to be used in LUA programs
** Grupo de Tecnologia em Computacao Grafica
** TeCGraf - PUC-Rio
-** $Id: lualib.h,v 1.4 1995/11/10 17:54:31 roberto Exp $
+** $Id: lualib.h,v 1.8 1996/04/30 21:13:55 roberto Exp $
*/
#ifndef lualib_h
#define lualib_h
+#include "lua.h"
+
void iolib_open (void);
void strlib_open (void);
void mathlib_open (void);
/* auxiliar functions (private) */
+
+struct lua_reg {
+ char *name;
+ lua_CFunction func;
+};
+
+void luaI_openlib (struct lua_reg *l, int n);
void lua_arg_error(char *funcname);
char *lua_check_string (int numArg, char *funcname);
-float lua_check_number (int numArg, char *funcname);
+double lua_check_number (int numArg, char *funcname);
+char *luaI_addchar (int c);
+void luaI_addquoted (char *s);
#endif