From bc06840e00425db342bc5a021c0900d9e63b71f0 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 15 Jul 2016 14:23:47 +0100 Subject: Split switch handling off to desugar step --- src/main/java/org/zwobble/couscous/ast/Operations.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main/java/org/zwobble/couscous/ast/Operations.java') diff --git a/src/main/java/org/zwobble/couscous/ast/Operations.java b/src/main/java/org/zwobble/couscous/ast/Operations.java index 0ef9b88..308d070 100644 --- a/src/main/java/org/zwobble/couscous/ast/Operations.java +++ b/src/main/java/org/zwobble/couscous/ast/Operations.java @@ -4,7 +4,9 @@ import org.zwobble.couscous.types.ScalarType; import org.zwobble.couscous.types.Types; import org.zwobble.couscous.values.InternalCouscousValue; +import static org.zwobble.couscous.ast.MethodCallNode.methodCall; import static org.zwobble.couscous.ast.MethodCallNode.staticMethodCall; +import static org.zwobble.couscous.ast.TypeCoercionNode.coerce; import static org.zwobble.couscous.ast.TypeCoercionNode.typeCoercion; import static org.zwobble.couscous.util.ExtraLists.list; @@ -94,4 +96,8 @@ public class Operations { public static ExpressionNode instanceOf(ExpressionNode value, ScalarType type) { return new InstanceOfNode(value, type); } + + public static ExpressionNode methodEquals(ExpressionNode left, ExpressionNode right) { + return methodCall(left, "equals", list(coerce(right, Types.OBJECT)), Types.BOOLEAN); + } } -- cgit v1.2.3