aboutsummaryrefslogtreecommitdiff
path: root/opcode.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-06-19 15:03:04 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-06-19 15:03:04 -0300
commit88f020b626d1b5b10b5d12e04bf103409a5e4308 (patch)
treee8d65e90ce914acebbd74c528b660db21ef27084 /opcode.c
parenta38f093f0540bce0207bb2dc27f1779f41c6d48b (diff)
downloadlua-88f020b626d1b5b10b5d12e04bf103409a5e4308.tar.gz
lua-88f020b626d1b5b10b5d12e04bf103409a5e4308.tar.bz2
lua-88f020b626d1b5b10b5d12e04bf103409a5e4308.zip
new interface to "lua_seterrormethod" and "lua_settagmethod", to
allow the use of Lua functions too.
Diffstat (limited to 'opcode.c')
-rw-r--r--opcode.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/opcode.c b/opcode.c
index d373dcec..982b1da9 100644
--- a/opcode.c
+++ b/opcode.c
@@ -3,7 +3,7 @@
3** TecCGraf - PUC-Rio 3** TecCGraf - PUC-Rio
4*/ 4*/
5 5
6char *rcs_opcode="$Id: opcode.c,v 4.11 1997/06/16 19:48:18 roberto Exp roberto $"; 6char *rcs_opcode="$Id: opcode.c,v 4.12 1997/06/19 17:46:12 roberto Exp roberto $";
7 7
8#include <setjmp.h> 8#include <setjmp.h>
9#include <stdio.h> 9#include <stdio.h>
@@ -654,21 +654,21 @@ lua_Object lua_gettagmethod (int tag, char *event)
654 return put_luaObjectonTop(); 654 return put_luaObjectonTop();
655} 655}
656 656
657lua_Object lua_settagmethod (int tag, char *event, lua_CFunction method) 657lua_Object lua_settagmethod (int tag, char *event)
658{ 658{
659 TObject newmethod;
660 checkCparams(1);
661 newmethod = *(--top);
659 lua_pushnumber(tag); 662 lua_pushnumber(tag);
660 lua_pushstring(event); 663 lua_pushstring(event);
661 if (method) 664 *top = newmethod; incr_top;
662 lua_pushcfunction (method);
663 else
664 lua_pushnil();
665 do_unprotectedrun(luaI_settagmethod, 3, 1); 665 do_unprotectedrun(luaI_settagmethod, 3, 1);
666 return put_luaObjectonTop(); 666 return put_luaObjectonTop();
667} 667}
668 668
669lua_Object lua_seterrormethod (lua_CFunction method) 669lua_Object lua_seterrormethod (void)
670{ 670{
671 lua_pushcfunction(method); 671 checkCparams(1);
672 do_unprotectedrun(luaI_seterrormethod, 1, 1); 672 do_unprotectedrun(luaI_seterrormethod, 1, 1);
673 return put_luaObjectonTop(); 673 return put_luaObjectonTop();
674} 674}