From 0711e29283c9c645ff9226c1afe9f5ca0190bd09 Mon Sep 17 00:00:00 2001 From: TudbuT Date: Tue, 17 May 2022 15:00:19 +0200 Subject: [PATCH] add with keyword --- ISBPL.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ISBPL.java b/ISBPL.java index bc72ccf..44c68f5 100644 --- a/ISBPL.java +++ b/ISBPL.java @@ -252,6 +252,16 @@ public class ISBPL { ISBPL.gErrorStream.println("Constructing type " + type); return i.get(); }; + case "with": + return (idx, words, file, stack) -> { + idx++; + int i = 1; + for(; !words[idx].equals(";"); idx++, i++); + for(idx--; !words[idx].equals("with"); idx--) { + frameStack.get().peek().define(words[idx], stack.pop()); + } + return idx + i; + }; case "string!": return (idx, words, file, stack) -> { idx++;