aboutsummaryrefslogtreecommitdiff
path: root/lvm.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2018-03-07 12:55:38 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2018-03-07 12:55:38 -0300
commit4a1612ff9b968fe446bc4dd20460bfaccabeb3b3 (patch)
treeaef8f8c476e0814c357ead6248a614fb0ca07eac /lvm.c
parent464658b16a1a539fd590e1696bfcfb572a77fe13 (diff)
downloadlua-4a1612ff9b968fe446bc4dd20460bfaccabeb3b3.tar.gz
lua-4a1612ff9b968fe446bc4dd20460bfaccabeb3b3.tar.bz2
lua-4a1612ff9b968fe446bc4dd20460bfaccabeb3b3.zip
new experimental syntax using reserved word 'undef'
Diffstat (limited to '')
-rw-r--r--lvm.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/lvm.c b/lvm.c
index 891e7d8d..b3abbf13 100644
--- a/lvm.c
+++ b/lvm.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lvm.c,v 2.348 2018/02/26 14:16:05 roberto Exp roberto $ 2** $Id: lvm.c,v 2.349 2018/03/02 18:59:19 roberto Exp roberto $
3** Lua virtual machine 3** Lua virtual machine
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -1552,6 +1552,18 @@ void luaV_execute (lua_State *L, CallInfo *ci) {
1552 } 1552 }
1553 vmbreak; 1553 vmbreak;
1554 } 1554 }
1555 vmcase(OP_UNDEF) {
1556 TValue *rb = vRB(i);
1557 luaT_keydef(L, vra, rb, 1);
1558 vmbreak;
1559 }
1560 vmcase(OP_ISDEF) {
1561 TValue *rb = vRB(i);
1562 TValue *rc = vRC(i);
1563 int res = luaT_keydef(L, rb, rc, 0);
1564 setbvalue(vra, res == GETARG_k(i));
1565 vmbreak;
1566 }
1555 vmcase(OP_CALL) { 1567 vmcase(OP_CALL) {
1556 int b = GETARG_B(i); 1568 int b = GETARG_B(i);
1557 int nresults = GETARG_C(i) - 1; 1569 int nresults = GETARG_C(i) - 1;