From 1134b50cafbd1e23e7a8ecef52098486ac4e113f Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Mon, 12 Jul 2021 18:41:39 -0600 Subject: [PATCH] refactoring aoc --- src/kiss/Helpers.hx | 1 + src/kiss/KissInterp.hx | 7 +++++++ src/kiss/Macros.hx | 6 +++++- src/kiss/Operand.hx | 2 +- 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/kiss/Helpers.hx b/src/kiss/Helpers.hx index 152455d..f9342c0 100644 --- a/src/kiss/Helpers.hx +++ b/src/kiss/Helpers.hx @@ -259,6 +259,7 @@ class Helpers { ReaderExpDef: ReaderExpDef }, Operand: { + toDynamic: Operand.toDynamic, fromDynamic: Operand.fromDynamic } }); diff --git a/src/kiss/KissInterp.hx b/src/kiss/KissInterp.hx index 0df24bb..d8bd75d 100644 --- a/src/kiss/KissInterp.hx +++ b/src/kiss/KissInterp.hx @@ -20,6 +20,13 @@ class KissInterp extends Interp { this.nullForUnknownVar = nullForUnknownVar; variables.set("Prelude", Prelude); + variables.set("kiss", { + Operand: { + fromDynamic: Operand.fromDynamic, + toDynamic: Operand.toDynamic + } + }); + trace(variables["kiss"]); variables.set("Lambda", Lambda); variables.set("Std", Std); variables.set("Keep", ExtraElementHandling.Keep); diff --git a/src/kiss/Macros.hx b/src/kiss/Macros.hx index 9e07afa..f746698 100644 --- a/src/kiss/Macros.hx +++ b/src/kiss/Macros.hx @@ -192,7 +192,11 @@ class Macros { conditionInterp.variables.set(flag, value); } try { - var conditionHScript = parser.parseString(Prelude.convertToHScript(conditionStr)); + var hscriptStr = Prelude.convertToHScript(conditionStr); + #if test + Prelude.print(hscriptStr); + #end + var conditionHScript = parser.parseString(hscriptStr); return if (Prelude.truthy(conditionInterp.execute(conditionHScript))) { thenExp; } else { diff --git a/src/kiss/Operand.hx b/src/kiss/Operand.hx index de20482..cb55f0b 100644 --- a/src/kiss/Operand.hx +++ b/src/kiss/Operand.hx @@ -25,7 +25,7 @@ abstract Operand(Either) from Either to Either