From c8824614a71effdd985f4047c794049d17363fff Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Wed, 24 Nov 2021 20:53:03 -0500 Subject: Fix handling for some inverse header call cases --- docs/bqn.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/bqn.js b/docs/bqn.js index 08868663..c5c74fcc 100644 --- a/docs/bqn.js +++ b/docs/bqn.js @@ -148,6 +148,7 @@ let run = (B,O,F,S,L,T,src,env) => { // Bytecode, Objects, Blocks, Bodies, Locat vid.push(v); return "do {"+c+"} while (0);\n" } + if (ind.length===3) ind[3]=[]; let cases = ind.map((js,i) => { let e = js.length?"No matching case":"Left argument "+(i?"not allowed":"required"); return js.map(g).concat(["throw Error('"+e+"');\n"]).join(""); @@ -161,7 +162,7 @@ let run = (B,O,F,S,L,T,src,env) => { // Bytecode, Objects, Blocks, Bodies, Locat c = "const fn="+combine(cases)+repdf[type]; if (cases.length > 2) { c += "fn.inverse="+combine(cases.slice(2)); - if (cases[4]) c += "fn.sinverse="+fn(cases[4]); + if (cases[4]) c += "fn.sinverse="+fn("if(!has(w))throw Error('No matching case');"+cases[4]); } c += "return fn;"; } -- cgit v1.2.3