From ff9e56b4b276f73ed3eca2c72c5559e9feb0826e Mon Sep 17 00:00:00 2001 From: Michael Haupt <michael.haupt@oracle.com> Date: Thu, 3 Apr 2014 15:22:20 +0200 Subject: [PATCH] insert common superclass for all invisible builtins --- .../nodes/builtin/RInvisibleBuiltinNode.java | 32 +++++++++++++++++++ .../truffle/r/nodes/builtin/base/Assign.java | 7 +--- .../truffle/r/nodes/builtin/base/Cat.java | 7 +--- .../builtin/base/ConnectionFunctions.java | 14 ++------ .../r/nodes/builtin/base/Contributors.java | 7 +--- .../r/nodes/builtin/base/Invisible.java | 7 +--- .../truffle/r/nodes/builtin/base/License.java | 7 +--- .../truffle/r/nodes/builtin/base/OnExit.java | 7 +--- .../truffle/r/nodes/builtin/base/Print.java | 7 +--- .../truffle/r/nodes/builtin/base/Quit.java | 7 +--- .../r/nodes/builtin/base/ReadREnviron.java | 7 +--- .../truffle/r/nodes/builtin/base/Rm.java | 7 +--- .../truffle/r/nodes/builtin/base/SetSeed.java | 7 +--- .../truffle/r/nodes/builtin/base/Setwd.java | 7 +--- .../r/nodes/builtin/base/SysSleep.java | 7 +--- .../r/nodes/builtin/base/UpdateAttr.java | 7 +--- .../nodes/builtin/base/UpdateAttributes.java | 7 +--- .../r/nodes/builtin/base/UpdateClass.java | 7 +--- .../r/nodes/builtin/base/UpdateDiag.java | 7 +--- .../r/nodes/builtin/base/UpdateDim.java | 7 +--- .../r/nodes/builtin/base/UpdateDimNames.java | 7 +--- .../r/nodes/builtin/base/UpdateLength.java | 7 +--- .../r/nodes/builtin/base/UpdateNames.java | 7 +--- 23 files changed, 55 insertions(+), 138 deletions(-) create mode 100644 com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/RInvisibleBuiltinNode.java diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/RInvisibleBuiltinNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/RInvisibleBuiltinNode.java new file mode 100644 index 0000000000..2242f0782b --- /dev/null +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/RInvisibleBuiltinNode.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package com.oracle.truffle.r.nodes.builtin; + +public abstract class RInvisibleBuiltinNode extends RBuiltinNode { + + @Override + public final boolean getVisibility() { + return false; + } + +} diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Assign.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Assign.java index 98fc9df03b..890113247b 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Assign.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Assign.java @@ -33,7 +33,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin("assign") -public abstract class Assign extends RBuiltinNode { +public abstract class Assign extends RInvisibleBuiltinNode { @Child private WriteVariableNode writeVariableNode; @@ -55,11 +55,6 @@ public abstract class Assign extends RBuiltinNode { ConstantNode.create(RRuntime.LOGICAL_FALSE), ConstantNode.create(RRuntime.LOGICAL_TRUE)}; } - @Override - public final boolean getVisibility() { - return false; - } - @Specialization(order = 1, guards = "noEnv") @SuppressWarnings("unused") public Object assign(VirtualFrame frame, String x, Object value, Object pos, RMissing envir, byte inherits, byte immediate) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Cat.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Cat.java index dba1d8385e..5c2b8ecdec 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Cat.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Cat.java @@ -36,7 +36,7 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin(value = "cat", lastParameterKind = LastParameterKind.VAR_ARGS_SPECIALIZE) @SuppressWarnings("unused") -public abstract class Cat extends RBuiltinNode { +public abstract class Cat extends RInvisibleBuiltinNode { private static final Object[] PARAMETER_NAMES = new Object[]{"...", "file", "sep", "fill", "labels", "append"}; @Override @@ -50,11 +50,6 @@ public abstract class Cat extends RBuiltinNode { ConstantNode.create(RRuntime.LOGICAL_FALSE)}; } - @Override - public boolean getVisibility() { - return false; - } - @Child private ToString toString; @CompilationFinal private String currentSep; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ConnectionFunctions.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ConnectionFunctions.java index 36052a9569..4c7f655eb2 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ConnectionFunctions.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ConnectionFunctions.java @@ -59,12 +59,7 @@ public abstract class ConnectionFunctions { } @RBuiltin(".Internal.file") - public abstract static class File extends RBuiltinNode { - @Override - public final boolean getVisibility() { - return false; - } - + public abstract static class File extends RInvisibleBuiltinNode { @Specialization @SuppressWarnings("unused") public Object file(String description, String open, byte blocking, RAbstractStringVector encoding, byte raw) { @@ -91,12 +86,7 @@ public abstract class ConnectionFunctions { } @RBuiltin("close") - public abstract static class Close extends RBuiltinNode { - @Override - public final boolean getVisibility() { - return false; - } - + public abstract static class Close extends RInvisibleBuiltinNode { @Specialization public Object close(@SuppressWarnings("unused") Object con) { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Contributors.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Contributors.java index 4340388876..a34882b2cc 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Contributors.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Contributors.java @@ -28,15 +28,10 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin("contributors") -public abstract class Contributors extends RBuiltinNode { +public abstract class Contributors extends RInvisibleBuiltinNode { private static final String CONTRIBUTORS = Utils.getResourceAsString(Contributors.class, "CONTRIBUTORS", true); - @Override - public final boolean getVisibility() { - return false; - } - @Specialization public Object contributors() { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Invisible.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Invisible.java index 0bf8d9a19e..be5ac98f8f 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Invisible.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Invisible.java @@ -29,7 +29,7 @@ import com.oracle.truffle.r.nodes.builtin.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin("invisible") -public abstract class Invisible extends RBuiltinNode { +public abstract class Invisible extends RInvisibleBuiltinNode { private static final Object[] PARAMETER_NAMES = new Object[]{"x"}; @@ -47,11 +47,6 @@ public abstract class Invisible extends RBuiltinNode { return new RNode[]{ConstantNode.create(RNull.instance)}; } - @Override - public boolean getVisibility() { - return false; - } - @Specialization public Object doInvisible(Object o) { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/License.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/License.java index 34f607968d..948fe1a091 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/License.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/License.java @@ -28,12 +28,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin({"license", "licence"}) -public abstract class License extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class License extends RInvisibleBuiltinNode { @Specialization public Object license() { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/OnExit.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/OnExit.java index d568380ab4..8eeb2bdb34 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/OnExit.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/OnExit.java @@ -32,12 +32,7 @@ import com.oracle.truffle.r.runtime.data.*; * evaluated, but {@code add} is. */ @RBuiltin("on.exit") -public abstract class OnExit extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class OnExit extends RInvisibleBuiltinNode { @Specialization public Object onExit(@SuppressWarnings("unused") Object expr, @SuppressWarnings("unused") Object add) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Print.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Print.java index 888927da26..3e54f03810 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Print.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Print.java @@ -39,15 +39,10 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("print") @SuppressWarnings("unused") -public abstract class Print extends RBuiltinNode { +public abstract class Print extends RInvisibleBuiltinNode { @Child protected PrettyPrinterNode prettyPrinter = PrettyPrinterNodeFactory.create(null, null, false); - @Override - public final boolean getVisibility() { - return false; - } - private static void printHelper(String string) { RContext.getInstance().getConsoleHandler().println(string); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Quit.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Quit.java index 7358ce44bd..67aa77576b 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Quit.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Quit.java @@ -31,7 +31,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin({"quit", "q"}) -public abstract class Quit extends RBuiltinNode { +public abstract class Quit extends RInvisibleBuiltinNode { private static final Object[] PARAMETER_NAMES = new Object[]{"save", "status", "runLast"}; @@ -52,11 +52,6 @@ public abstract class Quit extends RBuiltinNode { return arguments; } - @Override - public final boolean getVisibility() { - return false; - } - @Specialization public Object doQuit(final String saveArg, int status, byte runLast) { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ReadREnviron.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ReadREnviron.java index 115ac64f5a..65cc1477cd 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ReadREnviron.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/ReadREnviron.java @@ -30,12 +30,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("readRenviron") -public abstract class ReadREnviron extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class ReadREnviron extends RInvisibleBuiltinNode { @Specialization(guards = "lengthOneCVector") public Object doReadEnviron(RAbstractStringVector vec) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Rm.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Rm.java index af2d70b596..0974d0fbb5 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Rm.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Rm.java @@ -32,7 +32,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin(value = {"rm", "remove"}, lastParameterKind = LastParameterKind.VAR_ARGS_SPECIALIZE) -public abstract class Rm extends RBuiltinNode { +public abstract class Rm extends RInvisibleBuiltinNode { public static Rm create(String name) { RNode[] args = getParameterValues0(); @@ -57,11 +57,6 @@ public abstract class Rm extends RBuiltinNode { return getParameterValues0(); } - @Override - public final boolean getVisibility() { - return false; - } - @Specialization @SuppressWarnings("unused") public Object rm(VirtualFrame frame, String name, RStringVector list, Object pos, RMissing envir, byte inherits) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SetSeed.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SetSeed.java index 1bd9709163..1d7514cb65 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SetSeed.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SetSeed.java @@ -28,12 +28,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin("set.seed") -public abstract class SetSeed extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class SetSeed extends RInvisibleBuiltinNode { @Specialization public RNull setseed(int n) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Setwd.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Setwd.java index 6fd1100323..9a13f24ad2 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Setwd.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/Setwd.java @@ -28,12 +28,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.ffi.*; @RBuiltin({".Internal.setwd"}) -public abstract class Setwd extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class Setwd extends RInvisibleBuiltinNode { @Specialization public Object setwd(String dir) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SysSleep.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SysSleep.java index 91c3af6fb9..8d50998484 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SysSleep.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/SysSleep.java @@ -28,12 +28,7 @@ import com.oracle.truffle.r.runtime.*; import com.oracle.truffle.r.runtime.data.*; @RBuiltin(".Internal.Sys.sleep") -public abstract class SysSleep extends RBuiltinNode { - - @Override - public final boolean getVisibility() { - return false; - } +public abstract class SysSleep extends RInvisibleBuiltinNode { @Specialization(order = 0) public Object sysSleep(double seconds) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttr.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttr.java index 053eed09a6..a18197a341 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttr.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttr.java @@ -37,7 +37,7 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("attr<-") @SuppressWarnings("unused") -public abstract class UpdateAttr extends RBuiltinNode { +public abstract class UpdateAttr extends RInvisibleBuiltinNode { @Child UpdateNames updateNames; @Child UpdateDimNames updateDimNames; @@ -45,11 +45,6 @@ public abstract class UpdateAttr extends RBuiltinNode { @Child private CastToVectorNode castVector; @Child private CastListNode castList; - @Override - public final boolean getVisibility() { - return false; - } - private RAbstractVector updateNames(VirtualFrame frame, RAbstractVector vector, Object o) { if (updateNames == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttributes.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttributes.java index c5a160bd76..9228d0f45d 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttributes.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateAttributes.java @@ -38,18 +38,13 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("attributes<-") @SuppressWarnings("unused") -public abstract class UpdateAttributes extends RBuiltinNode { +public abstract class UpdateAttributes extends RInvisibleBuiltinNode { @Child UpdateNames updateNames; @Child private CastIntegerNode castInteger; @Child private CastToVectorNode castVector; @Child private CastListNode castList; - @Override - public final boolean getVisibility() { - return false; - } - private void updateNamesStringVector(VirtualFrame frame, RAbstractVector vector, Object o) { if (updateNames == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateClass.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateClass.java index 60ba7e21c7..e73305a822 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateClass.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateClass.java @@ -22,7 +22,7 @@ import com.oracle.truffle.r.runtime.data.*; import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin(value = "class<-") -public abstract class UpdateClass extends RBuiltinNode { +public abstract class UpdateClass extends RInvisibleBuiltinNode { private RVector resultVector; @Child private CastStringNode castStringNode; @@ -35,11 +35,6 @@ public abstract class UpdateClass extends RBuiltinNode { public abstract Object execute(VirtualFrame frame, RAbstractVector vector, Object o); - @Override - public final boolean getVisibility() { - return false; - } - @Specialization public Object setClass(VirtualFrame frame, RAbstractVector arg, RAbstractVector className) { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDiag.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDiag.java index ce21a0d60b..221532caac 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDiag.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDiag.java @@ -33,17 +33,12 @@ import com.oracle.truffle.r.runtime.data.model.*; import com.oracle.truffle.r.runtime.ops.na.*; @RBuiltin("diag<-") -public abstract class UpdateDiag extends RBuiltinNode { +public abstract class UpdateDiag extends RInvisibleBuiltinNode { private final NACheck naCheck = NACheck.create(); @Child protected CastDoubleNode castDouble; - @Override - public final boolean getVisibility() { - return false; - } - public static boolean isMatrix(RAbstractVector vector) { return vector.hasDimensions() && vector.getDimensions().length == 2; } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDim.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDim.java index 34bce85904..f2d0069c66 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDim.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDim.java @@ -35,15 +35,10 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("dim<-") @SuppressWarnings("unused") -public abstract class UpdateDim extends RBuiltinNode { +public abstract class UpdateDim extends RInvisibleBuiltinNode { @Child private CastIntegerNode castInteger; - @Override - public final boolean getVisibility() { - return false; - } - private RAbstractIntVector castInteger(VirtualFrame frame, RAbstractVector vector) { if (castInteger == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDimNames.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDimNames.java index 7ce2f79585..62b336ea56 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDimNames.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateDimNames.java @@ -35,16 +35,11 @@ import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("dimnames<-") @SuppressWarnings("unused") -public abstract class UpdateDimNames extends RBuiltinNode { +public abstract class UpdateDimNames extends RInvisibleBuiltinNode { @Child CastStringNode castStringNode; @Child CastToVectorNode castVectorNode; - @Override - public final boolean getVisibility() { - return false; - } - private Object castString(VirtualFrame frame, Object o) { if (castStringNode == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateLength.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateLength.java index ef1ddebb47..90c1c60e6c 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateLength.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateLength.java @@ -31,7 +31,7 @@ import com.oracle.truffle.r.runtime.data.*; import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("length<-") -public abstract class UpdateLength extends RBuiltinNode { +public abstract class UpdateLength extends RInvisibleBuiltinNode { @CreateCast("arguments") protected RNode[] castStatusArgument(RNode[] arguments) { @@ -40,11 +40,6 @@ public abstract class UpdateLength extends RBuiltinNode { return arguments; } - @Override - public final boolean getVisibility() { - return false; - } - @Specialization(order = 1, guards = "isLengthOne") public RAbstractVector updateLength(RAbstractVector vector, RAbstractIntVector lengthVector) { controlVisibility(); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateNames.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateNames.java index 0245b04d34..7e69930467 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateNames.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/base/UpdateNames.java @@ -34,15 +34,10 @@ import com.oracle.truffle.r.runtime.data.*; import com.oracle.truffle.r.runtime.data.model.*; @RBuiltin("names<-") -public abstract class UpdateNames extends RBuiltinNode { +public abstract class UpdateNames extends RInvisibleBuiltinNode { @Child CastStringNode castStringNode; - @Override - public final boolean getVisibility() { - return false; - } - private Object castString(VirtualFrame frame, Object o) { if (castStringNode == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); -- GitLab