From eff6ead0d0089fae070c6dbb7c937353632322c1 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 31 Oct 2015 13:42:14 +0000 Subject: Support int inequality --- .../zwobble/couscous/backends/python/PrimitiveMethods.java | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/main/java/org/zwobble/couscous/backends/python/PrimitiveMethods.java') diff --git a/src/main/java/org/zwobble/couscous/backends/python/PrimitiveMethods.java b/src/main/java/org/zwobble/couscous/backends/python/PrimitiveMethods.java index 9639c72..c6aa62d 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PrimitiveMethods.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PrimitiveMethods.java @@ -6,6 +6,8 @@ import java.util.Optional; import org.zwobble.couscous.ast.TypeName; import org.zwobble.couscous.backends.python.ast.PythonExpressionNode; +import org.zwobble.couscous.backends.python.ast.PythonNotNode; +import org.zwobble.couscous.values.BooleanValue; import org.zwobble.couscous.values.IntegerValue; import org.zwobble.couscous.values.StringValue; @@ -32,6 +34,14 @@ public class PrimitiveMethods { .build(); + private static final Map BOOLEAN_METHODS = + ImmutableMap.builder() + + .put("negate", (receiver, arguments) -> + PythonNotNode.pythonNot(receiver)) + + .build(); + private static final Map INT_METHODS; static { @@ -76,6 +86,7 @@ public class PrimitiveMethods { private static final Map> METHODS = ImmutableMap.>builder() .put(StringValue.REF, STRING_METHODS) + .put(BooleanValue.REF, BOOLEAN_METHODS) .put(IntegerValue.REF, INT_METHODS) .build(); -- cgit v1.2.3