diff options
author | Benoit Giannangeli <benoit.giannangeli@boursorama.fr> | 2017-02-21 08:46:48 +0100 |
---|---|---|
committer | Benoit Giannangeli <benoit.giannangeli@boursorama.fr> | 2017-02-21 09:00:32 +0100 |
commit | 23d15010edc905a3b7c123e85ef6d1960d3da039 (patch) | |
tree | d66761315763ab9e00cbed78fed69a687e02f5e3 /src/lvm.js | |
parent | 7d58c3b7314e4a63591fa375546cfc76a042e644 (diff) | |
download | fengari-23d15010edc905a3b7c123e85ef6d1960d3da039.tar.gz fengari-23d15010edc905a3b7c123e85ef6d1960d3da039.tar.bz2 fengari-23d15010edc905a3b7c123e85ef6d1960d3da039.zip |
luaG_ functions
Diffstat (limited to 'src/lvm.js')
-rw-r--r-- | src/lvm.js | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -20,6 +20,7 @@ const llimit = require('./llimit.js'); const ldo = require('./ldo.js'); const ltm = require('./ltm.js'); const ltable = require('./ltable.js'); +const ldebug = require('./ldebug.js'); const TMS = ltm.TMS; const RA = function(L, base, i) { @@ -865,7 +866,7 @@ const luaV_objlen = function(L, ra, rb) { default: { tm = ltm.luaT_gettmbyobj(L, rb, TMS.TM_LEN); if (tm.ttisnil()) - throw new Error("attempt to get length"); // TODO: luaG_typeerror + ldebug.luaG_typeerror(L, rb, "get length of"); break; } } @@ -952,7 +953,7 @@ const luaV_finishget = function(L, t, key, val, slot, recur) { assert(!t.ttistable()); tm = ltm.luaT_gettmbyobj(L, t, TMS.TM_INDEX); if (tm.ttisnil()) - throw new Error(`attempt to index a ${tm.ttype()} value`); // TODO: luaG_typeerror + ldebug.luaG_typeerror(L, t, 'index'); } else { /* 't' is a table */ assert(slot.ttisnil()); tm = ltm.luaT_gettmbyobj(L, t, TMS.TM_INDEX); // TODO: fasttm @@ -1001,7 +1002,7 @@ const luaV_finishset = function(L, t, key, val, slot, recur) { } else { /* not a table; check metamethod */ tm = ltm.luaT_gettmbyobj(L, t, TMS.TM_NEWINDEX); if (tm.ttisnil()) - throw new Error(`attempt to index a ${tm.ttype()} value`); // TODO: luaG_typeerror + ldebug.luaG_typeerror(L, t, 'index'); } if (tm.ttisfunction()) { |