aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/Operations.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-06-17 21:18:09 +0100
committerMichael Williamson <mike@zwobble.org>2016-06-17 21:18:09 +0100
commit65371fd16808d9c8f34d0e0cd2ba030bcc6a7128 (patch)
treec4cb1e0a9a4a7f57f6e7fe2e51da8272211aba85 /src/main/java/org/zwobble/couscous/ast/Operations.java
parent242350031b18514247d77801509d65ca4e6e769c (diff)
Read Java instanceof expressions
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/Operations.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/Operations.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/Operations.java b/src/main/java/org/zwobble/couscous/ast/Operations.java
index 04de1de..ca7483f 100644
--- a/src/main/java/org/zwobble/couscous/ast/Operations.java
+++ b/src/main/java/org/zwobble/couscous/ast/Operations.java
@@ -1,8 +1,10 @@
package org.zwobble.couscous.ast;
+import org.zwobble.couscous.types.ScalarType;
import org.zwobble.couscous.types.Types;
import org.zwobble.couscous.values.InternalCouscousValue;
+import static org.zwobble.couscous.ast.LiteralNode.literal;
import static org.zwobble.couscous.ast.MethodCallNode.staticMethodCall;
import static org.zwobble.couscous.ast.TypeCoercionNode.typeCoercion;
import static org.zwobble.couscous.util.ExtraLists.list;
@@ -90,4 +92,7 @@ public class Operations {
return typeCoercion(value, Types.INT);
}
+ public static ExpressionNode instanceOf(ExpressionNode value, ScalarType type) {
+ return booleanOperation(Operator.INSTANCE_OF, value, literal(type));
+ }
}