From d8e0031c6d73ba960505601d8e4b3c1933e584ea Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 31 Oct 2015 18:56:24 +0000 Subject: Support reading of unboxing --- .../org/zwobble/couscous/ast/StaticMethodCallNode.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/main/java/org/zwobble/couscous/ast/StaticMethodCallNode.java') diff --git a/src/main/java/org/zwobble/couscous/ast/StaticMethodCallNode.java b/src/main/java/org/zwobble/couscous/ast/StaticMethodCallNode.java index 06c63da..b33e94c 100644 --- a/src/main/java/org/zwobble/couscous/ast/StaticMethodCallNode.java +++ b/src/main/java/org/zwobble/couscous/ast/StaticMethodCallNode.java @@ -4,6 +4,7 @@ import java.util.List; import org.zwobble.couscous.ast.visitors.ExpressionNodeMapper; import org.zwobble.couscous.values.BooleanValue; +import org.zwobble.couscous.values.IntegerValue; import org.zwobble.couscous.values.InternalCouscousValue; import org.zwobble.couscous.values.ObjectValues; @@ -21,6 +22,14 @@ public class StaticMethodCallNode implements ExpressionNode { asList(value), ObjectValues.BOXED_INT); } + + public static ExpressionNode unboxInt(ExpressionNode value) { + return staticMethodCall( + InternalCouscousValue.REF, + "unboxInt", + asList(value), + IntegerValue.REF); + } public static ExpressionNode boxBoolean(ExpressionNode value) { return staticMethodCall( @@ -29,6 +38,14 @@ public class StaticMethodCallNode implements ExpressionNode { asList(value), ObjectValues.BOXED_BOOLEAN); } + + public static ExpressionNode unboxBoolean(ExpressionNode value) { + return staticMethodCall( + InternalCouscousValue.REF, + "unboxBoolean", + asList(value), + BooleanValue.REF); + } public static StaticMethodCallNode staticMethodCall( String className, -- cgit v1.2.3