From 5072fa564d06127e873bc639d63740207ea1eb6b Mon Sep 17 00:00:00 2001 From: stepan <stepan.sindelar@oracle.com> Date: Tue, 7 Feb 2017 14:42:37 +0100 Subject: [PATCH] Convert graphics related nodes to new casts system --- .../truffle/r/nodes/builtin/base/RecordGraphics.java | 8 ++++++++ .../builtin/base/foreign/CallAndExternalFunctions.java | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/RecordGraphics.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/RecordGraphics.java index b0be4bf534..5182327ab4 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/RecordGraphics.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/RecordGraphics.java @@ -22,6 +22,7 @@ */ package com.oracle.truffle.r.nodes.builtin.base; +import static com.oracle.truffle.r.nodes.builtin.CastBuilder.Predef.instanceOf; import static com.oracle.truffle.r.runtime.builtins.RBehavior.COMPLEX; import static com.oracle.truffle.r.runtime.builtins.RBuiltinKind.INTERNAL; @@ -53,6 +54,13 @@ public abstract class RecordGraphics extends RBuiltinNode { @Child private SetVisibilityNode visibility = SetVisibilityNode.create(); @Child private RList2EnvNode list2EnvNode = new RList2EnvNode(); + static { + Casts casts = new Casts(RecordGraphics.class); + casts.arg("expr").mustBe(instanceOf(RLanguage.class).or(instanceOf(RExpression.class))); + casts.arg("list").mustBe(instanceOf(RList.class)); + casts.arg("env").mustBe(instanceOf(REnvironment.class)); + } + public static RecordGraphics create() { return RecordGraphicsNodeGen.create(); } diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/foreign/CallAndExternalFunctions.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/foreign/CallAndExternalFunctions.java index c8fc0b6df1..40b188aed7 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/foreign/CallAndExternalFunctions.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/foreign/CallAndExternalFunctions.java @@ -911,6 +911,10 @@ public class CallAndExternalFunctions { private final BranchProfile errorProfile = BranchProfile.create(); + static { + Casts.noCasts(DotExternalGraphics.class); + } + @Override @TruffleBoundary protected RExternalBuiltinNode lookupBuiltin(RList f) { @@ -970,6 +974,10 @@ public class CallAndExternalFunctions { private final BranchProfile errorProfile = BranchProfile.create(); + static { + Casts.noCasts(DotCallGraphics.class); + } + @Override public Object[] getDefaultParameterValues() { return new Object[]{RMissing.instance, RArgsValuesAndNames.EMPTY, RMissing.instance}; -- GitLab