conditional \#when and \#unless

This commit is contained in:
2021-07-12 13:36:40 -06:00
parent 0124c05566
commit 737fd09288
3 changed files with 37 additions and 5 deletions

View File

@@ -17,4 +17,20 @@ class ConditionalCompilationTestCase extends Test {
Assert.isTrue(runningInPyOrJs);
#end
}
function testWhen() {
#if interp
Assert.equals(6, number());
#else
Assert.equals(5, number());
#end
}
function testUnless() {
#if !interp
Assert.equals(9, number2());
#else
Assert.equals(12, number2());
#end
}
}

View File

@@ -1,3 +1,16 @@
(defvar runningInHaxe (#if interp true false))
(defvar runningInPyOrJs (#if (or py js) true false))
(defun number []
(let [&mut num 5]
(#when interp
(+= num 5)
(-= num 4))
num))
(defun number2 []
(let [&mut num 12]
(#unless interp
(+= num 5)
(-= num 8))
num))