diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/AsVector.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/AsVector.java index f2a9b2accd5edfd51eaff9b6921133e3092171a2..776a5b37de2972097b39584ad76ab46adc0f897d 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/AsVector.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/AsVector.java @@ -178,7 +178,7 @@ public abstract class AsVector extends RBuiltinNode.Arg2 { @Cached("create()") DropAttributesNode drop, @Cached("createForeignArray2R()") ForeignArray2R foreignArray2R) { if (RRuntime.isForeignObject(x)) { - Object o = foreignArray2R.execute(x); + Object o = foreignArray2R.execute(x, true); if (!RRuntime.isForeignObject(o)) { return cast == null ? o : cast.doCast(o); } diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Unlist.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Unlist.java index aeee8fa4fe146c22d85af9c824d5cb1261411b31..71bff2a15a0295901ff2bbc513eaf05ae3dc4257 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Unlist.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Unlist.java @@ -17,10 +17,20 @@ import static com.oracle.truffle.r.runtime.builtins.RBuiltinKind.INTERNAL; import com.oracle.truffle.api.CompilerDirectives; import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary; +import com.oracle.truffle.api.dsl.Cached; import com.oracle.truffle.api.dsl.Fallback; +import com.oracle.truffle.api.dsl.ImportStatic; import com.oracle.truffle.api.dsl.Specialization; import com.oracle.truffle.api.dsl.TypeSystemReference; import com.oracle.truffle.api.frame.VirtualFrame; +import com.oracle.truffle.api.interop.ArityException; +import com.oracle.truffle.api.interop.ForeignAccess; +import com.oracle.truffle.api.interop.Message; +import com.oracle.truffle.api.interop.TruffleObject; +import com.oracle.truffle.api.interop.UnknownIdentifierException; +import com.oracle.truffle.api.interop.UnsupportedMessageException; +import com.oracle.truffle.api.interop.UnsupportedTypeException; +import com.oracle.truffle.api.interop.java.JavaInterop; import com.oracle.truffle.api.nodes.Node; import com.oracle.truffle.r.nodes.attributes.SpecialAttributesFunctions.GetNamesAttributeNode; import com.oracle.truffle.r.nodes.builtin.RBuiltinNode; @@ -28,6 +38,7 @@ import com.oracle.truffle.r.nodes.builtin.base.UnlistNodeGen.RecursiveLengthNode import com.oracle.truffle.r.nodes.unary.PrecedenceNode; import com.oracle.truffle.r.nodes.unary.PrecedenceNodeGen; import com.oracle.truffle.r.runtime.RDispatch; +import com.oracle.truffle.r.runtime.RError; import com.oracle.truffle.r.runtime.RInternalError; import com.oracle.truffle.r.runtime.RRuntime; import com.oracle.truffle.r.runtime.builtins.RBuiltin; @@ -44,8 +55,13 @@ import com.oracle.truffle.r.runtime.data.RStringVector; import com.oracle.truffle.r.runtime.data.RSymbol; import com.oracle.truffle.r.runtime.data.RTypes; import com.oracle.truffle.r.runtime.data.model.RAbstractContainer; +import com.oracle.truffle.r.runtime.data.model.RAbstractListVector; import com.oracle.truffle.r.runtime.data.model.RAbstractVector; +import com.oracle.truffle.r.runtime.interop.Foreign2R; +import com.oracle.truffle.r.runtime.interop.ForeignArray2R; +import com.oracle.truffle.r.runtime.interop.ForeignArray2RNodeGen; +@ImportStatic({Message.class, RRuntime.class}) @RBuiltin(name = "unlist", kind = INTERNAL, dispatch = RDispatch.INTERNAL_GENERIC, parameterNames = {"x", "recursive", "use.names"}, behavior = PURE) public abstract class Unlist extends RBuiltinNode.Arg3 { @@ -61,7 +77,10 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { @Child private Length lengthNode; @Child private RecursiveLength recursiveLengthNode; @Child private GetNamesAttributeNode getNames = GetNamesAttributeNode.create(); + @Child private Node hasSizeNode; + @Child private ForeignArray2R foreignArray2RNode; + @ImportStatic({Message.class, RRuntime.class, ForeignArray2R.class}) @TypeSystemReference(RTypes.class) protected abstract static class RecursiveLength extends Node { @@ -118,6 +137,10 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { return totalSize; } + protected boolean isVectorList(RAbstractVector vector) { + return vector instanceof RList; + } + @Specialization protected int getLengthPairList(VirtualFrame frame, RPairList list) { int totalSize = 0; @@ -127,8 +150,66 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { return totalSize; } - protected boolean isVectorList(RAbstractVector vector) { - return vector instanceof RList; + @Specialization(guards = {"isForeignArray(obj, hasSize)"}) + protected int getForeignArrayLength(VirtualFrame frame, TruffleObject obj, + @Cached("READ.createNode()") Node read, + @Cached("HAS_SIZE.createNode()") Node hasSize, + @Cached("GET_SIZE.createNode()") Node getSize, + @Cached("createForeign2R()") Foreign2R foreign2R) { + int totalSize = 0; + try { + int size = (int) ForeignAccess.sendGetSize(getSize, obj); + + if (JavaInterop.isJavaObject(obj)) { + Object o = JavaInterop.asJavaObject(Object.class, obj); + Class<?> ct = o.getClass().getComponentType(); + // check array component type, if not array of: + // arrays, iterables or Objects then no need to recurse + + // TODO well that is not exactly correct, but would be quite crazy + if (!(ct.isArray() || ct.isAssignableFrom(Iterable.class) || ct == Object.class)) { + return size; + } + } + + for (int i = 0; i < size; i++) { + Object element = ForeignAccess.sendRead(read, obj, i); + element = foreign2R.execute(element); + totalSize += getRecursiveLength(frame, element); + } + } catch (UnknownIdentifierException | UnsupportedMessageException ex) { + throw RError.interopError(RError.findParentRBase(this), ex, obj); + } + return totalSize; + } + + @Specialization(guards = {"isJavaIterable(obj)"}) + protected int getJavaIterableLength(VirtualFrame frame, TruffleObject obj, + @Cached("READ.createNode()") Node read, + @Cached("createExecute(0).createNode()") Node execute, + @Cached("createForeign2R()") Foreign2R foreign2R) { + int totalSize = 0; + try { + TruffleObject itFunction = (TruffleObject) ForeignAccess.sendRead(read, obj, "iterator"); + TruffleObject it = (TruffleObject) ForeignAccess.sendExecute(execute, itFunction); + TruffleObject hasNextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "hasNext"); + + while ((boolean) ForeignAccess.sendExecute(execute, hasNextFunction)) { + TruffleObject nextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "next"); + Object element = ForeignAccess.sendExecute(execute, nextFunction); + element = foreign2R.execute(element); + totalSize += getRecursiveLength(frame, element); + } + } catch (ArityException | UnsupportedTypeException | UnsupportedMessageException | UnknownIdentifierException ex) { + throw RError.interopError(RError.findParentRBase(this), ex, obj); + } + return totalSize; + } + + @Specialization(guards = {"isForeignObject(obj)", "!isForeignArray(obj, hasSize)", "!isJavaIterable(obj)"}) + protected int getForeignObject(VirtualFrame frame, TruffleObject obj, + @Cached("HAS_SIZE.createNode()") Node hasSize) { + return 1; } } @@ -205,12 +286,82 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { return unlistList(frame, list.toRList(), recursive, useNames); } + @Specialization(guards = {"isForeignArray(obj)"}) + protected Object unlistForeignArray(VirtualFrame frame, TruffleObject obj, boolean recursive, boolean useNames, + @SuppressWarnings("unused") @Cached("HAS_SIZE.createNode()") Node hasSize, + @Cached("createForeignArray2R()") ForeignArray2R foreignArray2R) { + return unlistForeign(frame, obj, recursive, useNames, foreignArray2R); + } + + @Specialization(guards = {"isJavaIterable(obj)"}) + protected Object unlistJavaIterable(VirtualFrame frame, TruffleObject obj, boolean recursive, boolean useNames, + @Cached("createForeignArray2R()") ForeignArray2R foreignArray2R) { + return unlistForeign(frame, obj, recursive, useNames, foreignArray2R); + } + + private Object unlistForeign(VirtualFrame frame, TruffleObject obj, boolean recursive, boolean useNames, ForeignArray2R foreignArray2R) { + Object result = foreignArray2R.execute(obj, recursive); + if (result instanceof RAbstractListVector) { + result = execute(frame, result, recursive, useNames); + } + return result; + } + + @Specialization(guards = {"isForeignObject(obj)", "!isForeignVector(obj)"}) + protected Object unlistForeign(@SuppressWarnings("unused") VirtualFrame frame, TruffleObject obj, @SuppressWarnings("unused") boolean recursive, @SuppressWarnings("unused") boolean useNames) { + return obj; + } + @SuppressWarnings("unused") @Fallback protected Object unlist(Object o, Object recursive, Object useNames) { return o; } + protected ForeignArray2R createForeignArray2R() { + return ForeignArray2RNodeGen.create(); + } + + protected boolean isForeignVector(Object obj) { + return ForeignArray2R.isForeignVector(obj, getHasSizeNode()); + } + + protected boolean isJavaIterable(Object obj) { + return ForeignArray2R.isJavaIterable(obj); + } + + protected boolean isForeignArray(Object obj) { + return ForeignArray2R.isForeignArray(obj, getHasSizeNode()); + } + + /** + * Converts foreign object to RAbstractVector. + * + * @param obj the foreign object. Has to be ensured it is a foreign array or java iterable. + * @param recursive + * @return + */ + private RAbstractVector foreignToVector(TruffleObject obj, boolean recursive) { + assert isForeignVector(obj); + return (RAbstractVector) getForeignArray2RNode().execute(obj, recursive); + } + + private ForeignArray2R getForeignArray2RNode() { + if (foreignArray2RNode == null) { + CompilerDirectives.transferToInterpreterAndInvalidate(); + foreignArray2RNode = insert(ForeignArray2R.createForeignArray2R()); + } + return foreignArray2RNode; + } + + private Node getHasSizeNode() { + if (hasSizeNode == null) { + CompilerDirectives.transferToInterpreterAndInvalidate(); + hasSizeNode = insert(Message.HAS_SIZE.createNode()); + } + return hasSizeNode; + } + @TruffleBoundary private RAbstractVector unlistHelper(RList list, boolean recursive, boolean useNames, int precedence, int totalSize) { String[] namesData = useNames ? new String[totalSize] : null; @@ -418,13 +569,17 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { for (int i = 0; i < v.getLength(); i++) { String name = itemName(listNames, i); Object cur = v.getDataAtAsObject(i); - if (v instanceof RList && recursive) { + if (RRuntime.isForeignObject(cur)) { + position = unlistHelperForeignLogical(result, position, (TruffleObject) cur, recursive); + } else if (v instanceof RList && recursive) { position = unlistHelperLogical(result, namesData, position, namesInfo, cur, base, name, recursive, useNames); } else { assignName(name, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueLogical(cur); } } + } else if (RRuntime.isForeignObject(o)) { + position = unlistHelperForeignLogical(result, position, (TruffleObject) o, recursive); } else if (o != RNull.instance) { assignName(null, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueLogical(o); @@ -456,13 +611,17 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { for (int i = 0; i < v.getLength(); i++) { String name = itemName(listNames, i); Object cur = v.getDataAtAsObject(i); - if (v instanceof RList && recursive) { + if (RRuntime.isForeignObject(cur)) { + position = unlistHelperForeignInt(result, position, (TruffleObject) cur, recursive); + } else if (v instanceof RList && recursive) { position = unlistHelperInt(result, namesData, position, namesInfo, cur, base, name, recursive, useNames); } else { assignName(name, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueInt(cur); } } + } else if (RRuntime.isForeignObject(o)) { + position = unlistHelperForeignInt(result, position, (TruffleObject) o, recursive); } else if (o != RNull.instance) { assignName(null, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueInt(o); @@ -494,13 +653,17 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { for (int i = 0; i < v.getLength(); i++) { String name = itemName(listNames, i); Object cur = v.getDataAtAsObject(i); - if (v instanceof RList && recursive) { + if (RRuntime.isForeignObject(cur)) { + position = unlistHelperForeignDouble(result, position, (TruffleObject) cur, recursive); + } else if (v instanceof RList && recursive) { position = unlistHelperDouble(result, namesData, position, namesInfo, cur, base, name, recursive, useNames); } else { assignName(name, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueDouble(cur); } } + } else if (RRuntime.isForeignObject(o)) { + position = unlistHelperForeignDouble(result, position, (TruffleObject) o, recursive); } else if (o != RNull.instance) { assignName(null, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueDouble(o); @@ -553,7 +716,12 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { @TruffleBoundary private int unlistHelperList(Object[] result, String[] namesData, int pos, NamesInfo namesInfo, Object obj, String outerBase, String tag, boolean recursive, boolean useNames) { - Object o = handlePairList(obj); + Object o; + if (isForeignVector(obj)) { + o = foreignToVector((TruffleObject) obj, recursive); + } else { + o = handlePairList(obj); + } int position = pos; int saveFirstPos = 0; int saveSeqNo = 0; @@ -574,7 +742,9 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { for (int i = 0; i < v.getLength(); i++) { String name = itemName(listNames, i); Object cur = v.getDataAtAsObject(i); - if (v instanceof RList && recursive) { + if (recursive && isForeignVector(obj)) { + position = unlistHelperForeign(result, position, (TruffleObject) cur, recursive); + } else if (v instanceof RList && recursive) { position = unlistHelperList(result, namesData, position, namesInfo, cur, base, name, recursive, useNames); } else { assignName(name, base, position, namesData, namesInfo, useNames); @@ -589,6 +759,91 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { return position; } + @TruffleBoundary + private int unlistHelperForeign(Object[] result, int pos, TruffleObject obj, boolean recursive) { + int position = pos; + if (recursive && isForeignVector(obj)) { + RAbstractVector v = foreignToVector(obj, recursive); + for (int i = 0; i < v.getLength(); i++) { + Object cur = v.getDataAtAsObject(i); + if (isForeignVector(cur)) { + position = unlistHelperForeign(result, position, (TruffleObject) cur, recursive); + } else { + result[position++] = cur; + } + } + } + return position; + } + + @TruffleBoundary + private int unlistHelperForeignLogical(byte[] result, int pos, TruffleObject obj, boolean recursive) { + int position = pos; + RAbstractVector v = foreignToVector(obj, recursive); + for (int i = 0; i < v.getLength(); i++) { + Object cur = v.getDataAtAsObject(i); + if (!RRuntime.isForeignObject(cur)) { + result[position++] = unlistValueLogical(cur); + } else if (recursive && isForeignVector(cur)) { + position = unlistHelperForeignLogical(result, position, (TruffleObject) cur, recursive); + } else { + assert false : "recursive=" + recursive + ", isIterable=" + ForeignArray2R.isJavaIterable(cur) + ", isArray=" + isForeignArray(cur); + } + } + return position; + } + + @TruffleBoundary + private int unlistHelperForeignInt(int[] result, int pos, TruffleObject obj, boolean recursive) { + int position = pos; + RAbstractVector v = foreignToVector(obj, recursive); + for (int i = 0; i < v.getLength(); i++) { + Object cur = v.getDataAtAsObject(i); + if (!RRuntime.isForeignObject(cur)) { + result[position++] = unlistValueInt(cur); + } else if (recursive && isForeignVector(cur)) { + position = unlistHelperForeignInt(result, position, (TruffleObject) cur, recursive); + } else { + assert false : "recursive=" + recursive + ", isIterable=" + ForeignArray2R.isJavaIterable(cur) + ", isArray=" + isForeignArray(cur); + } + } + return position; + } + + @TruffleBoundary + private int unlistHelperForeignDouble(double[] result, int pos, TruffleObject obj, boolean recursive) { + int position = pos; + RAbstractVector v = foreignToVector(obj, recursive); + for (int i = 0; i < v.getLength(); i++) { + Object cur = v.getDataAtAsObject(i); + if (!RRuntime.isForeignObject(cur)) { + result[position++] = unlistValueDouble(cur); + } else if (recursive && isForeignVector(cur)) { + position = unlistHelperForeignDouble(result, position, (TruffleObject) cur, recursive); + } else { + assert false : "recursive=" + recursive + ", isIterable=" + ForeignArray2R.isJavaIterable(cur) + ", isArray=" + isForeignArray(cur); + } + } + return position; + } + + @TruffleBoundary + private int unlistHelperForeignString(String[] result, int pos, TruffleObject obj, boolean recursive) { + int position = pos; + RAbstractVector v = foreignToVector(obj, recursive); + for (int i = 0; i < v.getLength(); i++) { + Object cur = v.getDataAtAsObject(i); + if (!RRuntime.isForeignObject(cur)) { + result[position++] = unlistValueString(cur); + } else if (recursive && isForeignVector(cur)) { + position = unlistHelperForeignString(result, position, (TruffleObject) cur, recursive); + } else { + assert false : "recursive=" + recursive + ", isIterable=" + ForeignArray2R.isJavaIterable(cur) + ", isArray=" + isForeignArray(cur); + } + } + return position; + } + @TruffleBoundary private int unlistHelperString(String[] result, String[] namesData, int pos, NamesInfo namesInfo, Object oIn, String outerBase, String tag, boolean recursive, boolean useNames) { int position = pos; @@ -612,13 +867,17 @@ public abstract class Unlist extends RBuiltinNode.Arg3 { for (int i = 0; i < v.getLength(); i++) { String name = itemName(listNames, i); Object cur = v.getDataAtAsObject(i); - if (v instanceof RList && recursive) { + if (RRuntime.isForeignObject(cur)) { + position = unlistHelperForeignString(result, position, (TruffleObject) cur, recursive); + } else if (v instanceof RList && recursive) { position = unlistHelperString(result, namesData, position, namesInfo, cur, base, name, recursive, useNames); } else { assignName(name, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueString(v.getDataAtAsObject(i)); } } + } else if (RRuntime.isForeignObject(o)) { + position = unlistHelperForeignString(result, position, (TruffleObject) o, recursive); } else if (o != RNull.instance) { assignName(null, base, position, namesData, namesInfo, useNames); result[position++] = unlistValueString(o); diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRInterop.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRInterop.java index 1bce957caa1f21c4a97f87665c1f910ef870c2fc..4049261a8a263e7929f019d6c73a1d24f5c99bc4 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRInterop.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRInterop.java @@ -780,7 +780,7 @@ public class FastRInterop { @Cached("HAS_SIZE.createNode()") Node hasSize, @Cached("createForeignArray2R()") ForeignArray2R array2R) { if (isArrayProfile.profile(ForeignAccess.sendHasSize(hasSize, obj))) { - return array2R.execute(obj); + return array2R.execute(obj, true); } else { throw error(RError.Message.GENERIC, "not a java array"); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/ExtractVectorNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/ExtractVectorNode.java index d246ce5719d9d392aa2d3ae05db868cb91fce3fb..6ea476013995d2e89f2d08f1fbd0a7d3d75e73a1 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/ExtractVectorNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/ExtractVectorNode.java @@ -54,7 +54,7 @@ import com.oracle.truffle.r.runtime.data.model.RAbstractStringVector; import com.oracle.truffle.r.runtime.data.model.RAbstractVector; import com.oracle.truffle.r.runtime.interop.Foreign2RNodeGen; import com.oracle.truffle.r.runtime.interop.ForeignArray2R; -import com.oracle.truffle.r.runtime.interop.ForeignArray2R.InteropTypeCheck; +import com.oracle.truffle.r.runtime.interop.ForeignArray2R.CollectedElements; import com.oracle.truffle.r.runtime.nodes.RBaseNode; @ImportStatic({RRuntime.class, com.oracle.truffle.api.interop.Message.class}) @@ -189,8 +189,7 @@ public abstract class ExtractVectorNode extends RBaseNode { @Cached("createForeign2RNode()") Foreign2R foreign2RNode) { RAbstractVector vec = (RAbstractVector) positions[0]; - Object[] resultElements = new Object[vec.getLength()]; - InteropTypeCheck typeCheck = new InteropTypeCheck(); + CollectedElements ce = new CollectedElements(); try { for (int i = 0; i < vec.getLength(); i++) { @@ -203,10 +202,10 @@ public abstract class ExtractVectorNode extends RBaseNode { res = ForeignAccess.sendUnbox(unboxNode, (TruffleObject) res); } } - typeCheck.check(res); - resultElements[i] = foreign2RNode.execute(res); + ce.getTypeCheck().checkForeign(res); + ce.getElements().add(foreign2RNode.execute(res)); } - return ForeignArray2R.asAbstractVector(resultElements, typeCheck); + return ForeignArray2R.asAbstractVector(ce); } catch (InteropException | NoSuchFieldError e) { throw RError.interopError(RError.findParentRBase(this), e, object); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/RLengthNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/RLengthNode.java index 9406bba633e9b0a0b82a76b24cd23f9b3ab7a653..dc4db2603451c05438926edc0cacf9c0886d4dcf 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/RLengthNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/RLengthNode.java @@ -23,14 +23,20 @@ package com.oracle.truffle.r.nodes.control; import com.oracle.truffle.api.dsl.Cached; +import com.oracle.truffle.api.dsl.ImportStatic; import com.oracle.truffle.api.dsl.NodeChild; import com.oracle.truffle.api.dsl.Specialization; import com.oracle.truffle.api.frame.VirtualFrame; +import com.oracle.truffle.api.interop.ArityException; import com.oracle.truffle.api.interop.ForeignAccess; import com.oracle.truffle.api.interop.InteropException; import com.oracle.truffle.api.interop.Message; import com.oracle.truffle.api.interop.TruffleObject; +import com.oracle.truffle.api.interop.UnknownIdentifierException; +import com.oracle.truffle.api.interop.UnsupportedMessageException; +import com.oracle.truffle.api.interop.UnsupportedTypeException; import com.oracle.truffle.api.nodes.Node; +import com.oracle.truffle.api.profiles.ConditionProfile; import com.oracle.truffle.r.nodes.profile.VectorLengthProfile; import com.oracle.truffle.r.runtime.RError; import com.oracle.truffle.r.runtime.RRuntime; @@ -40,6 +46,7 @@ import com.oracle.truffle.r.runtime.data.RNull; import com.oracle.truffle.r.runtime.data.RSymbol; import com.oracle.truffle.r.runtime.data.model.RAbstractContainer; import com.oracle.truffle.r.runtime.env.REnvironment; +import com.oracle.truffle.r.runtime.interop.ForeignArray2R; import com.oracle.truffle.r.runtime.nodes.RNode; /** @@ -48,6 +55,7 @@ import com.oracle.truffle.r.runtime.nodes.RNode; * function returns, like in {@code seq_along}. */ @NodeChild("operand") +@ImportStatic({Message.class, ForeignArray2R.class}) public abstract class RLengthNode extends RNode { @Override @@ -141,7 +149,43 @@ public abstract class RLengthNode extends RNode { return RRuntime.isForeignObject(object); } - @Specialization(guards = "isForeignObject(object)") + @Specialization(guards = "isJavaIterable(object)") + protected int getJavaIterableSize(TruffleObject object, + @Cached("READ.createNode()") Node read, + @Cached("createExecute(0).createNode()") Node execute, + @Cached("createBinaryProfile()") ConditionProfile profile) { + try { + Number sizeByMethod = null; + for (String method : new String[]{"size", "getSize", "length", "getLength"}) { + TruffleObject sizeFunction; + try { + sizeFunction = (TruffleObject) ForeignAccess.sendRead(read, object, method); + } catch (UnknownIdentifierException ex) { + continue; + } + Object value = ForeignAccess.sendExecute(execute, sizeFunction); + if (value instanceof Number) { + sizeByMethod = (Number) value; + } + } + if (profile.profile(sizeByMethod != null)) { + return sizeByMethod.intValue(); + } + + TruffleObject itMethod = (TruffleObject) ForeignAccess.sendRead(read, object, "iterator"); + TruffleObject it = (TruffleObject) ForeignAccess.sendExecute(execute, itMethod); + TruffleObject hasNextMethod = (TruffleObject) ForeignAccess.sendRead(read, it, "hasNext"); + int size = 0; + while ((boolean) ForeignAccess.sendExecute(execute, hasNextMethod)) { + ++size; + } + return size; + } catch (ArityException | UnsupportedTypeException | UnknownIdentifierException | UnsupportedMessageException ex) { + throw error(RError.Message.GENERIC, "error while accessing java iterable: " + ex.getMessage()); + } + } + + @Specialization(guards = {"isForeignObject(object)", "!isJavaIterable(object)"}) protected int getForeignSize(TruffleObject object, @Cached("createHasSize()") Node hasSizeNode, @Cached("createGetSize()") Node getSizeNode) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastComplexNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastComplexNode.java index d318c9747e68476189f3efbc26618db9b3b7e922..f90e615ee6ac2e7ea4b56b8ef5ff0c7f37804c84 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastComplexNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastComplexNode.java @@ -272,7 +272,7 @@ public abstract class CastComplexNode extends CastBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RComplexVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RComplexVector) { return (RComplexVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastDoubleNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastDoubleNode.java index 908140d68b9ccbb62d2b0fdf4089ea004c94193c..f0e17bb98d59f24aaf75f02466000cf858f55606 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastDoubleNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastDoubleNode.java @@ -215,7 +215,7 @@ public abstract class CastDoubleNode extends CastDoubleBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RDoubleVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RDoubleVector) { return (RDoubleVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastExpressionNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastExpressionNode.java index 408c9940fa4adef30321eec74b8d093a550f346a..1f4c55c3899a02c425977270b76ca47e747c0d20 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastExpressionNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastExpressionNode.java @@ -116,7 +116,7 @@ public abstract class CastExpressionNode extends CastBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RExpression doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { return (RExpression) castExpressionRecursive(o); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastIntegerNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastIntegerNode.java index 328622d157bbc4edfe8a3fdd668493379cf4e400..aff2149c234a85ef32c501a5c04ebbd60f18964f 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastIntegerNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastIntegerNode.java @@ -218,7 +218,7 @@ public abstract class CastIntegerNode extends CastIntegerBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RIntVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RIntVector) { return (RIntVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastListNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastListNode.java index 20b1522f9062bebbeb2c805d70b5fc15a785f210..a569b25f638246f6848612d73d5f7a973779927e 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastListNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastListNode.java @@ -162,7 +162,7 @@ public abstract class CastListNode extends CastBaseNode { protected RList doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RList) { return (RList) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastLogicalNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastLogicalNode.java index e9fb5472c55e03d13e50ceede13dc42d7e577a1a..9080f05e09a9f6421d18f00831fee0b042d63316 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastLogicalNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastLogicalNode.java @@ -196,7 +196,7 @@ public abstract class CastLogicalNode extends CastLogicalBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RLogicalVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RLogicalVector) { return (RLogicalVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastRawNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastRawNode.java index b402d1a759f350116f9fe8aab83ded70d06adbc4..181c0dc8e48ebbb798e4384366c9cd7cfdfc77b9 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastRawNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastRawNode.java @@ -320,7 +320,7 @@ public abstract class CastRawNode extends CastBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RRawVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RRawVector) { return (RRawVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastStringNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastStringNode.java index 96fe370580946c6dd51a9cf9097d7232f5b8d91b..1f413ee259640ac3c92cebc25bf33a3190a21733 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastStringNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastStringNode.java @@ -96,7 +96,7 @@ public abstract class CastStringNode extends CastStringBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RStringVector doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { if (o instanceof RStringVector) { return (RStringVector) o; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastSymbolNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastSymbolNode.java index 7445bfcc2a6179eee894cc76939d885de75f5000..047b9987bafdd659e8473a37c9af06d6b1cde0b0 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastSymbolNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/CastSymbolNode.java @@ -143,7 +143,7 @@ public abstract class CastSymbolNode extends CastBaseNode { @Specialization(guards = "isForeignObject(obj)") protected RSymbol doForeignObject(TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { return (RSymbol) castSymbolRecursive(o); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/ConvertBooleanNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/ConvertBooleanNode.java index 20a0f0a2b0d860ad4ba4ed333c2989da5b948f95..9fc48e238af3b92c8c436b8ac2f1ea8df9ddc596 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/ConvertBooleanNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/ConvertBooleanNode.java @@ -176,7 +176,7 @@ public abstract class ConvertBooleanNode extends RNode { @Specialization(guards = "isForeignObject(obj)") protected byte doForeignObject(VirtualFrame frame, TruffleObject obj, @Cached("createForeignArray2RNode()") ForeignArray2R foreignArray2R) { - Object o = foreignArray2R.execute(obj); + Object o = foreignArray2R.execute(obj, true); if (!RRuntime.isForeignObject(o)) { return convertBooleanRecursive(frame, o); } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/PrecedenceNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/PrecedenceNode.java index 750e1a362d18251948670ec79494fdac7d9c95bf..c9e1d89b406d5d82f3afaaf24bd3619d5921b604 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/PrecedenceNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/unary/PrecedenceNode.java @@ -25,7 +25,16 @@ package com.oracle.truffle.r.nodes.unary; import com.oracle.truffle.api.dsl.Cached; import com.oracle.truffle.api.dsl.ImportStatic; import com.oracle.truffle.api.dsl.Specialization; +import com.oracle.truffle.api.interop.ArityException; +import com.oracle.truffle.api.interop.ForeignAccess; +import com.oracle.truffle.api.interop.Message; import com.oracle.truffle.api.interop.TruffleObject; +import com.oracle.truffle.api.interop.UnknownIdentifierException; +import com.oracle.truffle.api.interop.UnsupportedMessageException; +import com.oracle.truffle.api.interop.UnsupportedTypeException; +import com.oracle.truffle.api.interop.java.JavaInterop; +import com.oracle.truffle.api.nodes.Node; +import com.oracle.truffle.r.runtime.RError; import com.oracle.truffle.r.runtime.RRuntime; import com.oracle.truffle.r.runtime.data.RArgsValuesAndNames; import com.oracle.truffle.r.runtime.data.RComplex; @@ -48,10 +57,14 @@ import com.oracle.truffle.r.runtime.data.RS4Object; import com.oracle.truffle.r.runtime.data.RStringVector; import com.oracle.truffle.r.runtime.data.RSymbol; import com.oracle.truffle.r.runtime.env.REnvironment; +import com.oracle.truffle.r.runtime.interop.Foreign2R; +import com.oracle.truffle.r.runtime.interop.ForeignArray2R; +import static com.oracle.truffle.r.runtime.interop.ForeignArray2R.isForeignArray; +import static com.oracle.truffle.r.runtime.interop.ForeignArray2R.isJavaIterable; import com.oracle.truffle.r.runtime.nodes.RBaseNode; @SuppressWarnings("unused") -@ImportStatic(RRuntime.class) +@ImportStatic({Message.class, RRuntime.class, ForeignArray2R.class, Foreign2R.class}) public abstract class PrecedenceNode extends RBaseNode { public static final int NO_PRECEDENCE = -1; @@ -212,18 +225,99 @@ public abstract class PrecedenceNode extends RBaseNode { return LIST_PRECEDENCE; } - @Specialization(guards = {"isForeignObject(to)"}) - protected int doForeignObject(TruffleObject to, boolean recursive) { - return LIST_PRECEDENCE; - } - @Specialization(guards = {"!recursive", "args.getLength() == 1"}) protected int doArgsValuesAndNames(RArgsValuesAndNames args, boolean recursive, @Cached("createRecursive()") PrecedenceNode precedenceNode) { return precedenceNode.executeInteger(args.getArgument(0), recursive); } - protected boolean isForeignObject(TruffleObject to) { - return RRuntime.isForeignObject(to); + @Specialization(guards = {"isForeignObject(to)", "!isJavaIterable(to)", "!isForeignArray(to, hasSize)"}) + protected int doForeignObject(TruffleObject to, boolean recursive, + @SuppressWarnings("unused") @Cached("HAS_SIZE.createNode()") Node hasSize) { + return LIST_PRECEDENCE; + } + + @Specialization(guards = {"isJavaIterable(obj)"}) + protected int doJavaIterable(TruffleObject obj, boolean recursive, + @Cached("HAS_SIZE.createNode()") Node hasSize, + @Cached("READ.createNode()") Node read, + @Cached("createExecute(0).createNode()") Node execute, + @Cached("createRecursive()") PrecedenceNode precedenceNode, + @Cached("createForeign2R()") Foreign2R foreign2R) { + int precedence = -1; + try { + TruffleObject itFunction = (TruffleObject) ForeignAccess.sendRead(read, obj, "iterator"); + TruffleObject it = (TruffleObject) ForeignAccess.sendExecute(execute, itFunction); + TruffleObject hasNextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "hasNext"); + + while ((boolean) ForeignAccess.sendExecute(execute, hasNextFunction)) { + TruffleObject nextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "next"); + Object element = ForeignAccess.sendExecute(execute, nextFunction); + element = foreign2R.execute(element); + if (!recursive && (isJavaIterable(element) || isForeignArray(element, hasSize))) { + return LIST_PRECEDENCE; + } else { + precedence = Math.max(precedence, precedenceNode.executeInteger(element, recursive)); + } + } + } catch (ArityException | UnsupportedTypeException | UnsupportedMessageException | UnknownIdentifierException ex) { + throw error(RError.Message.GENERIC, "error while accessing java iterable: " + ex.getMessage()); + } + return precedence; + } + + @Specialization(guards = {"isForeignArray(obj, hasSize)"}) + protected int doForeignArray(TruffleObject obj, boolean recursive, + @SuppressWarnings("unused") @Cached("HAS_SIZE.createNode()") Node hasSize, + @Cached("GET_SIZE.createNode()") Node getSize, + @Cached("READ.createNode()") Node read, + @Cached("createRecursive()") PrecedenceNode precedenceNode, + @Cached("createForeign2R()") Foreign2R foreign2R) { + int precedence = -1; + try { + if (JavaInterop.isJavaObject(obj)) { + Object o = JavaInterop.asJavaObject(Object.class, obj); + Class<?> ct = o.getClass().getComponentType(); + int prc = getPrecedence(ct, recursive); + if (prc != -1) { + return prc; + } + } + int size = (int) ForeignAccess.sendGetSize(getSize, obj); + for (int i = 0; i < size; i++) { + Object element = ForeignAccess.sendRead(read, obj, i); + element = foreign2R.execute(element); + if (!recursive && (isForeignArray(element, hasSize) || isJavaIterable(element))) { + return LIST_PRECEDENCE; + } else { + precedence = Math.max(precedence, precedenceNode.executeInteger(element, recursive)); + } + } + } catch (UnknownIdentifierException | UnsupportedMessageException ex) { + throw error(RError.Message.GENERIC, "error while accessing array: " + ex.getMessage()); + } + return precedence; + } + + private int getPrecedence(Class<?> ct, boolean recursive) { + if (recursive && ct.isArray()) { + return getPrecedence(ct.getComponentType(), recursive); + } + return getPrecedence(ct); + } + + private int getPrecedence(Class<?> ct) { + if (Integer.TYPE.getName().equals(ct.getName()) || Byte.TYPE.getName().equals(ct.getName()) || Short.TYPE.getName().equals(ct.getName()) || + Integer.class.getName().equals(ct.getName()) || Byte.class.getName().equals(ct.getName()) || Short.class.getName().equals(ct.getName())) { + return INT_PRECEDENCE; + } else if (Double.TYPE.getName().equals(ct.getName()) || Float.TYPE.getName().equals(ct.getName()) || Long.TYPE.getName().equals(ct.getName()) || + Double.class.getName().equals(ct.getName()) || Float.class.getName().equals(ct.getName()) || Long.class.getName().equals(ct.getName())) { + return DOUBLE_PRECEDENCE; + } else if (String.class.getName().equals(ct.getName()) || Character.TYPE.getName().equals(ct.getName()) || Character.class.getName().equals(ct.getName())) { + return STRING_PRECEDENCE; + } else if (Boolean.TYPE.getName().equals(ct.getName()) || Boolean.class.getName().equals(ct.getName())) { + return LOGICAL_PRECEDENCE; + } + return NO_PRECEDENCE; } } diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/Foreign2R.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/Foreign2R.java index 0ab8bbb6bb31a3d3677493cd34e99022aafd95d5..23b3b20dfb84afe5e585c692b7a11146e06f75ad 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/Foreign2R.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/Foreign2R.java @@ -33,6 +33,10 @@ import com.oracle.truffle.r.runtime.nodes.RBaseNode; @ImportStatic(Message.class) public abstract class Foreign2R extends RBaseNode { + public static Foreign2R createForeign2R() { + return Foreign2RNodeGen.create(); + } + public abstract Object execute(Object obj); @Specialization diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/ForeignArray2R.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/ForeignArray2R.java index d3999179c16f666d2a59a8a626fc6f96145bcbbe..9188efd74ade37058e8a0cd58ca1f32e2fc599d1 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/ForeignArray2R.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/interop/ForeignArray2R.java @@ -28,6 +28,7 @@ import java.util.List; import com.oracle.truffle.api.CompilerDirectives; import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary; import com.oracle.truffle.api.dsl.Cached; +import com.oracle.truffle.api.dsl.Fallback; import com.oracle.truffle.api.dsl.ImportStatic; import com.oracle.truffle.api.dsl.Specialization; import com.oracle.truffle.api.interop.ArityException; @@ -43,6 +44,10 @@ import com.oracle.truffle.r.runtime.RError; import com.oracle.truffle.r.runtime.RRuntime; import com.oracle.truffle.r.runtime.data.RDataFactory; import com.oracle.truffle.r.runtime.data.RNull; +import com.oracle.truffle.r.runtime.data.model.RAbstractDoubleVector; +import com.oracle.truffle.r.runtime.data.model.RAbstractIntVector; +import com.oracle.truffle.r.runtime.data.model.RAbstractLogicalVector; +import com.oracle.truffle.r.runtime.data.model.RAbstractStringVector; import com.oracle.truffle.r.runtime.data.model.RAbstractVector; import com.oracle.truffle.r.runtime.nodes.RBaseNode; @@ -51,26 +56,30 @@ public abstract class ForeignArray2R extends RBaseNode { @Child protected Node hasSize = Message.HAS_SIZE.createNode(); @Child private Foreign2R foreign2R; + @Child private ForeignArray2R foreignArray2R; @Child private Node read; @Child private Node isNull; @Child private Node isBoxed; @Child private Node unbox; - public abstract Object execute(Object obj); + public static ForeignArray2R createForeignArray2R() { + return ForeignArray2RNodeGen.create(); + } + + public abstract Object execute(Object obj, boolean recursive); - @Specialization(guards = {"isArray(obj, hasSize)"}) + @Specialization(guards = {"isForeignArray(obj)"}) @TruffleBoundary - public RAbstractVector doArray(TruffleObject obj, + public RAbstractVector doArray(TruffleObject obj, boolean recursive, @Cached("GET_SIZE.createNode()") Node getSize) { - int size; try { - size = (int) ForeignAccess.sendGetSize(getSize, obj); - if (size == 0) { + CollectedElements ce = new CollectedElements(); + collectArrayElements(ce, obj, recursive, getSize); + if (ce.elements.isEmpty()) { return RDataFactory.createList(); } - CollectedElements ce = getArrayElements(size, obj); - return asAbstractVector(ce.elements, ce.typeCheck); + return asAbstractVector(ce); } catch (UnsupportedMessageException | UnknownIdentifierException e) { throw error(RError.Message.GENERIC, "error while converting array: " + e.getMessage()); } @@ -78,44 +87,44 @@ public abstract class ForeignArray2R extends RBaseNode { @Specialization(guards = "isJavaIterable(obj)") @TruffleBoundary - protected RAbstractVector doJavaIterable(TruffleObject obj, + protected RAbstractVector doJavaIterable(TruffleObject obj, boolean recursive, @Cached("createExecute(0).createNode()") Node execute) { try { - CollectedElements ce = getIterableElements(obj, execute); - return asAbstractVector(ce.elements, ce.typeCheck); + CollectedElements ce = new CollectedElements(); + ce = getIterableElements(ce, obj, recursive, execute); + return asAbstractVector(ce); } catch (UnsupportedMessageException | UnknownIdentifierException | UnsupportedTypeException | ArityException e) { throw error(RError.Message.GENERIC, "error while casting external object to list: " + e.getMessage()); } } - @Specialization(guards = {"!isJavaIterable(obj)", "!isArray(obj, hasSize)"}) - public Object doObject(TruffleObject obj) { - return obj; - } - - @Specialization - public Object doObject(Object obj) { + @Fallback + public Object doObject(Object obj, boolean recursive) { return obj; } - private CollectedElements getArrayElements(int size, TruffleObject obj) throws UnsupportedMessageException, UnknownIdentifierException { - CollectedElements ce = new CollectedElements(); - ce.elements = new Object[size]; + private void collectArrayElements(CollectedElements ce, TruffleObject obj, boolean recursive, Node getSize) throws UnsupportedMessageException, UnknownIdentifierException { + int size = (int) ForeignAccess.sendGetSize(getSize, obj); + if (size == 0) { + return; + } for (int i = 0; i < size; i++) { if (read == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); read = insert(Message.READ.createNode()); } Object element = ForeignAccess.sendRead(read, obj, i); - ce.elements[i] = element2R(element, ce); + if (recursive && (isForeignArray(element, hasSize) || isJavaIterable(element))) { + recurse(ce, element); + } else { + ce.elements.add(element2R(element, ce)); + } } - return ce; } - private CollectedElements getIterableElements(TruffleObject obj, Node execute) + private CollectedElements getIterableElements(CollectedElements ce, TruffleObject obj, boolean recursive, Node execute) throws UnknownIdentifierException, ArityException, UnsupportedMessageException, UnsupportedTypeException { - List<Object> elements = new ArrayList<>(); if (read == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); read = insert(Message.READ.createNode()); @@ -124,16 +133,31 @@ public abstract class ForeignArray2R extends RBaseNode { TruffleObject it = (TruffleObject) ForeignAccess.sendExecute(execute, itFunction); TruffleObject hasNextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "hasNext"); - CollectedElements ce = new CollectedElements(); while ((boolean) ForeignAccess.sendExecute(execute, hasNextFunction)) { TruffleObject nextFunction = (TruffleObject) ForeignAccess.sendRead(read, it, "next"); Object element = ForeignAccess.sendExecute(execute, nextFunction); - elements.add(element2R(element, ce)); + if (recursive && (isJavaIterable(element) || isForeignArray(element, hasSize))) { + recurse(ce, element); + } else { + ce.elements.add(element2R(element, ce)); + } } - ce.elements = elements.toArray(new Object[elements.size()]); return ce; } + private void recurse(CollectedElements ce, Object element) { + if (foreignArray2R == null) { + CompilerDirectives.transferToInterpreterAndInvalidate(); + foreignArray2R = insert(createForeignArray2R()); + } + RAbstractVector result = (RAbstractVector) foreignArray2R.execute(element, true); + for (int i = 0; i < result.getLength(); i++) { + Object value = result.getDataAtAsObject(i); + ce.elements.add(value); + } + ce.typeCheck.checkVector(result); + } + private Object element2R(Object value, CollectedElements ce) throws UnsupportedMessageException { if (value instanceof TruffleObject) { if (isNull == null) { @@ -156,7 +180,7 @@ public abstract class ForeignArray2R extends RBaseNode { } } } - ce.typeCheck.check(value); + ce.typeCheck.checkForeign(value); if (foreign2R == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); @@ -165,55 +189,75 @@ public abstract class ForeignArray2R extends RBaseNode { return foreign2R.execute(value); } - public static RAbstractVector asAbstractVector(Object[] elements, InteropTypeCheck typeCheck) { - InteropTypeCheck.RType type = typeCheck.getType(); + /** + * Coverts the elements collected from a foreign array or java iterable into a vector or list. + * + * @param ce + * @return + */ + public static RAbstractVector asAbstractVector(CollectedElements ce) { + InteropTypeCheck.RType type = ce.typeCheck.getType(); if (type == null) { - return RDataFactory.createList(elements); + return RDataFactory.createList(ce.elements.toArray(new Object[ce.elements.size()])); } - int size = elements.length; - // TODO how to deal with NAs? + int size = ce.elements.size(); boolean complete = true; switch (type) { case BOOLEAN: byte[] bytes = new byte[size]; for (int i = 0; i < size; i++) { - bytes[i] = ((Number) elements[i]).byteValue(); + bytes[i] = ((Number) ce.elements.get(i)).byteValue(); complete &= RRuntime.isNA(bytes[i]); } return RDataFactory.createLogicalVector(bytes, complete); case DOUBLE: double[] doubles = new double[size]; for (int i = 0; i < size; i++) { - doubles[i] = ((Number) elements[i]).doubleValue(); + doubles[i] = ((Number) ce.elements.get(i)).doubleValue(); complete &= RRuntime.isNA(doubles[i]); } return RDataFactory.createDoubleVector(doubles, complete); case INTEGER: int[] ints = new int[size]; for (int i = 0; i < size; i++) { - ints[i] = ((Number) elements[i]).intValue(); + ints[i] = ((Number) ce.elements.get(i)).intValue(); complete &= RRuntime.isNA(ints[i]); } return RDataFactory.createIntVector(ints, complete); case STRING: String[] strings = new String[size]; for (int i = 0; i < size; i++) { - strings[i] = String.valueOf(elements[i]); + strings[i] = String.valueOf(ce.elements.get(i)); complete &= RRuntime.isNA(strings[i]); } return RDataFactory.createStringVector(strings, complete); default: assert false; } - return null; + + // type != null but no vector created - how comes? + assert false : "did not handle properly: " + type; + return RDataFactory.createList(ce.elements.toArray(new Object[ce.elements.size()])); + } + + protected boolean isForeignArray(Object obj) { + return RRuntime.isForeignObject(obj) && ForeignAccess.sendHasSize(hasSize, (TruffleObject) obj); + } + + protected boolean isForeignVector(Object obj) { + return isJavaIterable(obj) || isForeignArray(obj, hasSize); } - protected boolean isArray(TruffleObject obj, Node hasSize) { - return RRuntime.isForeignObject(obj) && ForeignAccess.sendHasSize(hasSize, obj); + public static boolean isForeignArray(Object obj, Node hasSize) { + return RRuntime.isForeignObject(obj) && ForeignAccess.sendHasSize(hasSize, (TruffleObject) obj); } - protected boolean isJavaIterable(TruffleObject obj) { - return RRuntime.isForeignObject(obj) && JavaInterop.isJavaObject(Iterable.class, obj); + public static boolean isJavaIterable(Object obj) { + return RRuntime.isForeignObject(obj) && JavaInterop.isJavaObject(Iterable.class, (TruffleObject) obj); + } + + public static boolean isForeignVector(Object obj, Node hasSize) { + return isJavaIterable(obj) || isForeignArray(obj, hasSize); } public static class InteropTypeCheck { @@ -227,7 +271,7 @@ public abstract class ForeignArray2R extends RBaseNode { private RType type = null; private boolean sameRType = true; - public void check(Object value) { + public void checkForeign(Object value) { if (value instanceof Boolean) { setType(RType.BOOLEAN); } else if (value instanceof Byte || value instanceof Integer || value instanceof Short) { @@ -242,6 +286,21 @@ public abstract class ForeignArray2R extends RBaseNode { } } + public void checkVector(RAbstractVector value) { + if (value instanceof RAbstractLogicalVector) { + setType(RType.BOOLEAN); + } else if (value instanceof RAbstractIntVector) { + setType(RType.INTEGER); + } else if (value instanceof RAbstractDoubleVector) { + setType(RType.DOUBLE); + } else if (value instanceof RAbstractStringVector) { + setType(RType.STRING); + } else { + this.type = null; + sameRType = false; + } + } + private void setType(RType check) { if (sameRType && this.type == null) { this.type = check; @@ -256,8 +315,25 @@ public abstract class ForeignArray2R extends RBaseNode { } } - private class CollectedElements { - Object[] elements; - InteropTypeCheck typeCheck = new InteropTypeCheck(); + public static class CollectedElements { + private InteropTypeCheck typeCheck = new InteropTypeCheck(); + private List<Object> elements = new ArrayList<>(); + + public InteropTypeCheck getTypeCheck() { + return typeCheck; + } + + public void setTypeCheck(InteropTypeCheck typeCheck) { + this.typeCheck = typeCheck; + } + + public List<Object> getElements() { + return elements; + } + + public void setElements(List<Object> elements) { + this.elements = elements; + } + } } diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test index dcb146433d64f210935bc5877e6cf1c38fb22745..829d3bfebe2c171fb20927bb0645d789cb039a06 100644 --- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test +++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test @@ -133635,21 +133635,41 @@ Error in is.infinite(to) : Error in is.nan(to) : default method not implemented for type 'external object' -##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testMap# -#if (!any(R.version$engine == "FastR")) { '1' } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); m <- to$map; m['one'] } -[1] "1" +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthArray# +#if (!any(R.version$engine == "FastR")) { 0 } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); length(ta$objectEmpty) } +[1] 0 -##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testMap#Ignored.Unimplemented# -#if (!any(R.version$engine == "FastR")) { '11' } else { how to put into map? } -Error: unexpected symbol in "if (!any(R.version$engine == "FastR")) { '11' } else { how to" +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthArray# +#if (!any(R.version$engine == "FastR")) { 2 } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); length(ta$booleanArray2) } +[1] 2 -##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testMap# -#if (!any(R.version$engine == "FastR")) { '11' } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); m <- to$map; m['one']<-'11'; m['one'] } -[1] "11" +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthArray# +#if (!any(R.version$engine == "FastR")) { 2 } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); length(ta$booleanArray3) } +[1] 2 -##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testMap# -#if (!any(R.version$engine == "FastR")) { '2' } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); m <- to$map; m['two'] } -[1] "2" +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthArray# +#if (!any(R.version$engine == "FastR")) { 3 } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); length(ta$booleanArray) } +[1] 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthIterable# +#if (!any(R.version$engine == "FastR")) { 123 } else { ti <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestIterableGetLength', 123); length(ti) } +[1] 123 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthIterable# +#if (!any(R.version$engine == "FastR")) { 123 } else { ti <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestIterableGetSize', 123); length(ti) } +[1] 123 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthIterable# +#if (!any(R.version$engine == "FastR")) { 123 } else { ti <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestIterableLength', 123); length(ti) } +[1] 123 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthIterable# +#if (!any(R.version$engine == "FastR")) { 123 } else { ti <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestIterableNoSizeMethod', 123); length(ti) } +[1] 123 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testLengthIterable# +#if (!any(R.version$engine == "FastR")) { 123 } else { ti <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestIterableSize', 123); length(ti) } +[1] 123 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testMethods# #if (!any(R.version$engine == "FastR")) { "a string" } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); to$methodStaticStringObject() } @@ -134989,6 +135009,3755 @@ Error in as.external.char(97L, 1) : #if (!any(R.version$engine == "FastR")) { 32767 } else { v <- as.external.short(32767); v; } [1] 32767 +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray2, ta$booleanList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray3, ta$booleanList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$byteArray2, ta$byteList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$byteArray3, ta$byteList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray2, ta$doubleList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray3, ta$doubleList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$floatArray2, ta$floatList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$floatArray3, ta$floatList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$integerArray2, ta$integerList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$integerArray3, ta$integerList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$longArray2, ta$longList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$longArray3, ta$longList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$shortArray2, ta$shortList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$shortArray3, ta$shortList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$stringArray2, ta$stringList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$stringArray3, ta$stringList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$stringArray2, ta$stringList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$stringArray3, ta$stringList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$stringArray2, ta$stringList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$stringArray3, ta$stringList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray2, ta$stringList2))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray3, ta$stringList3))) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charArray)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charArray2)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charArray3)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charList)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charList2)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charList3)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charObjectArray)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charObjectArray2)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charObjectArray3)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$mixedObjectArray)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringArray)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringArray2)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringArray3)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringList)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringList2)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringList3)) } +[1] "character" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$booleanArray2, ta$booleanList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$booleanArray3, ta$booleanList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$byteArray2, ta$byteList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$byteArray3, ta$byteList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$integerArray2, ta$integerList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$integerArray3, ta$integerList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$shortArray2, ta$shortList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$shortArray3, ta$shortList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray2, ta$byteList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray3, ta$byteList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray2, ta$integerList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray3, ta$integerList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray2, ta$shortList2))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray3, ta$shortList3))) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteList)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteList2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteList3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteObjectArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteObjectArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteObjectArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerList)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerList2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerList3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerObjectArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerObjectArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerObjectArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$mixedIntegerList)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$onlyIntegerObjectArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortList)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortList2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortList3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortObjectArray)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortObjectArray2)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortObjectArray3)) } +[1] "integer" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList))) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray2, ta$booleanList2))) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray3, ta$booleanList3))) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanArray)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanArray2)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanArray3)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanList)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanList2)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanList3)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanObjectArray)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanObjectArray2)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanObjectArray3)) } +[1] "logical" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray2, ta$booleanList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray3, ta$booleanList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$integerArray2, ta$integerList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$integerArray3, ta$integerList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$longArray2, ta$longList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$longArray3, ta$longList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$shortArray2, ta$shortList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$shortArray3, ta$shortList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$byteArray2, ta$byteList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$byteArray3, ta$byteList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray2, ta$doubleList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray3, ta$doubleList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$floatArray2, ta$floatList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$floatArray3, ta$floatList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$doubleArray2, ta$doubleList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$doubleArray3, ta$doubleList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$floatArray2, ta$floatList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$floatArray3, ta$floatList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$longArray2, ta$longList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$longArray3, ta$longList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray2, ta$doubleList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray3, ta$doubleList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray2, ta$floatList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray3, ta$floatList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$longArray2, ta$longList2))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$longArray3, ta$longList3))) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleList)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleList2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleList3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleObjectArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleObjectArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleObjectArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatList)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatList2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatList3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatObjectArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatObjectArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatObjectArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longList)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longList2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longList3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longObjectArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longObjectArray2)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longObjectArray3)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$onlyLongObjectArray)) } +[1] "numeric" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { TRUE } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); l<-list(ta, ta); ul <- unlist(l); identical(l, ul) } +[1] TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { TRUE } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); tal <- unlist(ta); identical(ta, tal) } +[1] TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('1', 'a', '1') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$mixedObjectArray) } +[1] "1" "a" "1" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList)) } +[1] "a" "aa" "aaa" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList), recursive=FALSE) } +[1] "a" "aa" "aaa" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray2, ta$stringList2)) } + [1] "a" "aa" "aaa" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[13] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray3, ta$stringList3)) } + [1] "a" "aa" "aaa" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[13] "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[25] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList)) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList)) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList)) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList)) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray2, ta$byteList2)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray2, ta$integerList2)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray2, ta$longList2)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray2, ta$shortList2)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray3, ta$byteList3)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[25] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray3, ta$integerList3)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[25] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray3, ta$longList3)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[25] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray3, ta$shortList3)) } + [1] "a" "aa" "aaa" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[13] "1" "2" "3" "1" "2" "3" "1" "2" "3" "1" "2" "3" +[25] "1" "2" "3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList)) } +[1] "a" "aa" "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray2, ta$doubleList2)) } + [1] "a" "aa" "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" +[13] "1.1" "1.2" "1.3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray3, ta$doubleList3)) } + [1] "a" "aa" "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" +[13] "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3" +[25] "1.1" "1.2" "1.3" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList)) } +[1] "a" "aa" "aaa" "1.10000002384186" +[5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372" +[9] "1.29999995231628" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList), recursive=FALSE) } +[1] "a" "aa" "aaa" "1.10000002384186" +[5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372" +[9] "1.29999995231628" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray2, ta$floatList2)) } + [1] "a" "aa" "aaa" "1.10000002384186" + [5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372" + [9] "1.29999995231628" "1.10000002384186" "1.20000004768372" "1.29999995231628" +[13] "1.10000002384186" "1.20000004768372" "1.29999995231628" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray3, ta$floatList3)) } + [1] "a" "aa" "aaa" "1.10000002384186" + [5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372" + [9] "1.29999995231628" "1.10000002384186" "1.20000004768372" "1.29999995231628" +[13] "1.10000002384186" "1.20000004768372" "1.29999995231628" "1.10000002384186" +[17] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372" +[21] "1.29999995231628" "1.10000002384186" "1.20000004768372" "1.29999995231628" +[25] "1.10000002384186" "1.20000004768372" "1.29999995231628" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList)) } +[1] "a" "aa" "aaa" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList), recursive=FALSE) } +[1] "a" "aa" "aaa" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray2, ta$booleanList2)) } + [1] "a" "aa" "aaa" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" +[10] "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray3, ta$booleanList3)) } + [1] "a" "aa" "aaa" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" +[10] "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" +[19] "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" "TRUE" "FALSE" "TRUE" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray, recursive=FALSE) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList, recursive=FALSE) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray, recursive=FALSE) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray, recursive=FALSE) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList, recursive=FALSE) } +[1] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray2) } +[1] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList2) } +[1] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray2) } +[1] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray2) } +[1] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList2) } +[1] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$onlyIntegerObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$onlyLongObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray, recursive=FALSE) } +[1] 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray2) } +[1] 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$mixedIntegerList) } + [1] 1 2 3 4 5 6 7 8 9 10 11 12 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray, recursive=FALSE) } +[1] 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList)) } +[1] "1.1" "1.2" "1.3" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList), recursive=FALSE) } +[1] "1.1" "1.2" "1.3" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray2, ta$stringList2)) } + [1] "1.1" "1.2" "1.3" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[13] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray3, ta$stringList3)) } + [1] "1.1" "1.2" "1.3" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[13] "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" "b" "c" +[25] "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList)) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList), recursive=FALSE) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList)) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList), recursive=FALSE) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList)) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList), recursive=FALSE) } +[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray2, ta$integerList2)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray2, ta$longList2)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray2, ta$shortList2)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray3, ta$integerList3)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 +[20] 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray3, ta$longList3)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 +[20] 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray3, ta$shortList3)) } + [1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 +[20] 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray2) } +[1] 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList)) } +[1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList), recursive=FALSE) } +[1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray2, ta$booleanList2)) } + [1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray3, ta$booleanList3)) } + [1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 1.0 +[20] 0.0 1.0 1.0 0.0 1.0 1.0 0.0 1.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList)) } +[1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList), recursive=FALSE) } +[1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray2, ta$byteList2)) } + [1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray3, ta$byteList3)) } + [1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 1.0 +[20] 2.0 3.0 1.0 2.0 3.0 1.0 2.0 3.0 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList)) } +[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList), recursive=FALSE) } +[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray2, ta$doubleList2)) } + [1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray3, ta$doubleList3)) } + [1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList)) } +[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList), recursive=FALSE) } +[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray2, ta$floatList2)) } + [1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray3, ta$floatList3)) } + [1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList)) } +[1] "1" "2" "3" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList), recursive=FALSE) } +[1] "1" "2" "3" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray2, ta$stringList2)) } + [1] "1" "2" "3" "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray3, ta$stringList3)) } + [1] "1" "2" "3" "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" "b" "c" "a" +[20] "b" "c" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList)) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList), recursive=FALSE) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList)) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList), recursive=FALSE) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList)) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList), recursive=FALSE) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList)) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList), recursive=FALSE) } +[1] 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray2, ta$byteList2)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray2, ta$integerList2)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray2, ta$longList2)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray2, ta$shortList2)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray3, ta$byteList3)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray3, ta$integerList3)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray3, ta$longList3)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray3, ta$shortList3)) } + [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList)) } +[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList), recursive=FALSE) } +[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray2, ta$doubleList2)) } + [1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray3, ta$doubleList3)) } + [1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList)) } +[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList), recursive=FALSE) } +[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray2, ta$floatList2)) } + [1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray3, ta$floatList3)) } + [1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList)) } +[1] 1 2 3 1 0 1 1 0 1 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList), recursive=FALSE) } +[1] 1 2 3 1 0 1 1 0 1 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray2, ta$booleanList2)) } + [1] 1 2 3 1 0 1 1 0 1 1 0 1 1 0 1 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray3, ta$booleanList3)) } + [1] 1 2 3 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray, recursive=FALSE) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList, recursive=FALSE) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray, recursive=FALSE) } +[1] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList)) } +[1] "TRUE" "FALSE" "TRUE" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList), recursive=FALSE) } +[1] "TRUE" "FALSE" "TRUE" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray2, ta$stringList2)) } + [1] "TRUE" "FALSE" "TRUE" "a" "b" "c" "a" "b" "c" +[10] "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray3, ta$stringList3)) } + [1] "TRUE" "FALSE" "TRUE" "a" "b" "c" "a" "b" "c" +[10] "a" "b" "c" "a" "b" "c" "a" "b" "c" +[19] "a" "b" "c" "a" "b" "c" "a" "b" "c" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList)) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList), recursive=FALSE) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList)) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList), recursive=FALSE) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList)) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList), recursive=FALSE) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList)) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList), recursive=FALSE) } +[1] 1 0 1 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray2, ta$byteList2)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray2, ta$integerList2)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray2, ta$longList2)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray2, ta$shortList2)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray3, ta$byteList3)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray3, ta$integerList3)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray3, ta$longList3)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray3, ta$shortList3)) } + [1] 1 0 1 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList)) } +[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList), recursive=FALSE) } +[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray2, ta$doubleList2)) } + [1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray3, ta$doubleList3)) } + [1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList)) } +[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList), recursive=FALSE) } +[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray2, ta$floatList2)) } + [1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray3, ta$floatList3)) } + [1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 1.1 +[20] 1.2 1.3 1.1 1.2 1.3 1.1 1.2 1.3 + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray2) } +[1] TRUE FALSE TRUE TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList2) } +[1] TRUE FALSE TRUE TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray2) } +[1] TRUE FALSE TRUE TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList)) } +[1] TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList), recursive=FALSE) } +[1] TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray3) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray2, ta$booleanList2)) } + [1] TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE +[13] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray3, ta$booleanList3)) } + [1] TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE +[13] TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE FALSE TRUE +[25] TRUE FALSE TRUE + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray2, ta$booleanList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray3, ta$booleanList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray2, ta$byteList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray3, ta$byteList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray2, ta$doubleList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray3, ta$doubleList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray2, ta$floatList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray3, ta$floatList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray2, ta$integerList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray3, ta$integerList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray2, ta$longList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray3, ta$longList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray2, ta$shortList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray3, ta$shortList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray2, ta$stringList2), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] "a"','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] "aa"','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] "aaa"','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray3, ta$stringList3), recursive=FALSE) } +[[1]] +[1] "a" + +[[2]] +[1] "aa" + +[[3]] +[1] "aaa" + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray2, ta$booleanList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray3, ta$booleanList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray2, ta$byteList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray3, ta$byteList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray2, ta$doubleList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray3, ta$doubleList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray2, ta$floatList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray3, ta$floatList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray2, ta$integerList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray3, ta$integerList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray2, ta$longList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray3, ta$longList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray2, ta$shortList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray3, ta$shortList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray2, ta$stringList2), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray3, ta$stringList3), recursive=FALSE) } +[[1]] +[1] 1 + +[[2]] +[1] 2 + +[[3]] +[1] 3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray2, ta$booleanList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray3, ta$booleanList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray2, ta$integerList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray3, ta$integerList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray2, ta$longList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray3, ta$longList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray2, ta$shortList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray3, ta$shortList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray2, ta$stringList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 1.2','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 1.3','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray3, ta$stringList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 1.2 + +[[3]] +[1] 1.3 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray2, ta$byteList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray3, ta$byteList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray2, ta$doubleList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray3, ta$doubleList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray2, ta$floatList2), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] 1.1','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] 2.1','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] 3.1','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray3, ta$floatList3), recursive=FALSE) } +[[1]] +[1] 1.1 + +[[2]] +[1] 2.1 + +[[3]] +[1] 3.1 + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray2, ta$booleanList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray3, ta$booleanList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray2, ta$byteList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray3, ta$byteList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray2, ta$doubleList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray3, ta$doubleList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray2, ta$floatList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray3, ta$floatList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray2, ta$integerList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray3, ta$integerList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray2, ta$longList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray3, ta$longList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray2, ta$shortList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray3, ta$shortList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray2, ta$stringList2), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[1] FALSE','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[1] TRUE','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[5]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[6]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[7]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray3, ta$stringList3), recursive=FALSE) } +[[1]] +[1] TRUE + +[[2]] +[1] FALSE + +[[3]] +[1] TRUE + +[[4]] +[external object] + +[[5]] +[external object] + +[[6]] +[external object] + +[[7]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { cat('[[1]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[2]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[3]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>','[[4]]','<<<NEWLINE>>>','[external object]','<<<NEWLINE>>><<<NEWLINE>>>', sep='') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList3, recursive=FALSE) } +[[1]] +[external object] + +[[2]] +[external object] + +[[3]] +[external object] + +[[4]] +[external object] + + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c')) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list('a', 'b', 'c', 'a', 'b', 'c'))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1, 2, 3, 1, 2, 3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(1.1, 1.2, 1.3, 1.1, 1.2, 1.3))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanList2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + +##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist# +#if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray2, recursive=FALSE) } +Error: unexpected ')' in "if (!any(R.version$engine == "FastR")) { list(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE))" + ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testWhile#Output.IgnoreErrorContext# #if (!any(R.version$engine == "FastR")) { cat('Error in if (T) print(\'OK\') : ', '<<<NEWLINE>>>', ' argument is not interpretable as logical', '<<<NEWLINE>>>') } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass'));while(to) print('OK') } Error in if (T) print('OK') : diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java index 1df8c54f86b10b2b80f070ac652c235a6f4a51dc..92e3863811a2ef1d91846d47bccdc7e171ae7d2d 100644 --- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java +++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java @@ -483,6 +483,24 @@ public class TestJavaInterop extends TestBase { } @Test + public void testLengthArray() { + TestArraysClass ta = new TestArraysClass(); + assertEvalFastR(CREATE_TEST_ARRAYS + " length(ta$objectEmpty)", "" + ta.objectEmpty.length); + + assertEvalFastR(CREATE_TEST_ARRAYS + " length(ta$booleanArray)", "" + ta.booleanArray.length); + assertEvalFastR(CREATE_TEST_ARRAYS + " length(ta$booleanArray2)", "" + ta.booleanArray2.length); + assertEvalFastR(CREATE_TEST_ARRAYS + " length(ta$booleanArray3)", "" + ta.booleanArray3.length); + } + + @Test + public void testLengthIterable() { + String thisFQN = this.getClass().getName(); + for (String s : new String[]{"Size", "GetSize", "Length", "GetLength", "NoSizeMethod"}) { + String clazz = thisFQN + "$TestIterable" + s; + assertEvalFastR("ti <- new('" + clazz + "', 123); length(ti)", "123"); + } + } + public void testMap() { assertEvalFastR(CREATE_TRUFFLE_OBJECT + " m <- to$map; m['one']", "'1'"); assertEvalFastR(CREATE_TRUFFLE_OBJECT + " m <- to$map; m['two']", "'2'"); @@ -631,6 +649,187 @@ public class TestJavaInterop extends TestBase { assertEvalFastR(Output.IgnoreErrorContext, CREATE_TRUFFLE_OBJECT + " l<-as.list(to);", "cat('Error in as.list(to) : ', '\n', ' no method for coercing this external object to a list', '\n')"); } + private static final String CREATE_TEST_ARRAYS = "ta <- new('" + TestArraysClass.class.getName() + "');"; + + @Test + public void testUnlist() throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException { + + assertEvalFastR(CREATE_TEST_ARRAYS + " tal <- unlist(ta); identical(ta, tal)", "TRUE"); + assertEvalFastR(CREATE_TEST_ARRAYS + " l<-list(ta, ta); ul <- unlist(l); identical(l, ul)", "TRUE"); + + // arrays + testUnlistByType("string", "'a', 'b', 'c'", "character"); + testUnlistByType("boolean", "TRUE, FALSE, TRUE", "logical"); + testUnlistByType("byte", "1, 2, 3", "integer"); + testUnlistByType("char", "'a', 'b', 'c'", "character"); + testUnlistByType("double", "1.1, 1.2, 1.3", "numeric"); + testUnlistByType("float", "1.1, 1.2, 1.3", "numeric"); + testUnlistByType("integer", "1, 2, 3", "integer"); + testUnlistByType("long", "1, 2, 3", "numeric"); + testUnlistByType("short", "1, 2, 3", "integer"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$onlyIntegerObjectArray)", "c(1, 2, 3)"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$onlyIntegerObjectArray))", "'integer'"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$onlyLongObjectArray)", "c(1, 2, 3)"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$onlyLongObjectArray))", "'numeric'"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$mixedObjectArray)", "c('1', 'a', '1')"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$mixedObjectArray))", "'character'"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$mixedIntegerList)", "c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$mixedIntegerList))", "'integer'"); + + testForeingObjectInListUnlist("byte", new String[]{"TRUE", "FALSE", "TRUE"}, "integer"); + testForeingObjectInListUnlist("byte", new String[]{"1L", "2L", "3L"}, "integer"); + testForeingObjectInListUnlist("byte", new String[]{"1.1", "2.1", "3.1"}, "numeric"); + testForeingObjectInListUnlist("byte", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("boolean", new String[]{"TRUE", "FALSE", "TRUE"}, "logical"); + testForeingObjectInListUnlist("boolean", new String[]{"1L", "2L", "3L"}, "integer"); + testForeingObjectInListUnlist("boolean", new String[]{"1.1", "1.2", "1.3"}, "numeric"); + testForeingObjectInListUnlist("boolean", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("double", new String[]{"TRUE", "FALSE", "TRUE"}, "numeric"); + testForeingObjectInListUnlist("double", new String[]{"1L", "2L", "3L"}, "numeric"); + testForeingObjectInListUnlist("double", new String[]{"1.1", "2.1", "3.1"}, "numeric"); + testForeingObjectInListUnlist("double", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("float", new String[]{"TRUE", "FALSE", "TRUE"}, "numeric"); + testForeingObjectInListUnlist("float", new String[]{"1L", "2L", "3L"}, "numeric"); + testForeingObjectInListUnlist("float", new String[]{"1.1", "2.1", "3.1"}, "numeric"); + testForeingObjectInListUnlist("float", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("integer", new String[]{"TRUE", "FALSE", "TRUE"}, "integer"); + testForeingObjectInListUnlist("integer", new String[]{"1L", "2L", "3L"}, "integer"); + testForeingObjectInListUnlist("integer", new String[]{"1.1", "1.2", "1.3"}, "numeric"); + testForeingObjectInListUnlist("integer", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("long", new String[]{"TRUE", "FALSE", "TRUE"}, "numeric"); + testForeingObjectInListUnlist("long", new String[]{"1L", "2L", "3L"}, "numeric"); + testForeingObjectInListUnlist("long", new String[]{"1.1", "1.2", "1.3"}, "numeric"); + testForeingObjectInListUnlist("long", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("short", new String[]{"TRUE", "FALSE", "TRUE"}, "integer"); + testForeingObjectInListUnlist("short", new String[]{"1L", "2L", "3L"}, "integer"); + testForeingObjectInListUnlist("short", new String[]{"1.1", "1.2", "1.3"}, "numeric"); + testForeingObjectInListUnlist("short", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + + testForeingObjectInListUnlist("string", new String[]{"TRUE", "FALSE", "TRUE"}, "character"); + testForeingObjectInListUnlist("string", new String[]{"1L", "2L", "3L"}, "character"); + testForeingObjectInListUnlist("string", new String[]{"1.1", "1.2", "1.3"}, "character"); + testForeingObjectInListUnlist("string", new String[]{"'a'", "'aa'", "'aaa'"}, "character"); + } + + private void testUnlistByType(String fieldType, String result, String clazz) { + testForeingObjectUnlist(fieldType + "Array", result, clazz); + if (!fieldType.equals("string")) { + testForeingObjectUnlist(fieldType + "ObjectArray", result, clazz); + } + testForeingObjectUnlist(fieldType + "List", result, clazz); + } + + private void testForeingObjectUnlist(String fieldPrefix, String result, String clazz) { + String field = fieldPrefix; + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ")", "c(" + result + ")"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$" + field + "))", "'" + clazz + "'"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ", recursive=FALSE)", "c(" + result + ")"); + + field = fieldPrefix + "2"; + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ")", "c(" + result + ", " + result + ")"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$" + field + "))", "'" + clazz + "'"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ", recursive=FALSE)", "list(" + result + ", " + result + "))"); + + field = fieldPrefix + "3"; + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ")", "c(" + result + ", " + result + ", " + result + ", " + result + "))"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$" + field + "))", "'" + clazz + "'"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$" + field + ", recursive=FALSE)", + "cat('[[1]]','\n','[external object]','\n\n','[[2]]','\n','[external object]','\n\n','[[3]]','\n','[external object]','\n\n','[[4]]','\n','[external object]','\n\n', sep='')"); + + } + + private void testForeingObjectInListUnlist(String field, String[] toMixWith, String clazz) throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException { + StringBuilder sbToVector = new StringBuilder(); + StringBuilder sbVector = new StringBuilder(); + StringBuilder sbList = new StringBuilder(); + int i = 0; + sbToVector.append("c("); + for (String s : toMixWith) { + sbVector.append(s); + String mwv = toMixWith[i]; + if (mwv.endsWith("L")) { + mwv = mwv.replace("L", ""); + } + mwv = mwv.replace("'", "\""); + sbList.append("'[[").append(++i).append("]]','\n','").append("[1] ").append(mwv).append("','\n\n',"); + sbToVector.append(s); + if (i < toMixWith.length) { + sbVector.append(", "); + sbToVector.append(", "); + } + } + sbToVector.append(")"); + + String mixWithVector = sbToVector.toString(); + String resultInVector = sbVector.toString(); + String resultInList = sbList.toString(); + String testFieldArrayResult = getTestFieldValuesAsResult(field + "Array"); + String testFieldListResult = getTestFieldValuesAsResult(field + "List"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array, ta$" + field + "List))", + "c(" + resultInVector + ", " + testFieldArrayResult + ", " + testFieldListResult + ")"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" + field + "Array, ta$" + field + "List)))", "'" + clazz + "'"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array, ta$" + field + "List), recursive=FALSE)", + "c(" + resultInVector + ", " + testFieldArrayResult + ", " + testFieldListResult + ")"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2))", + "c(" + resultInVector + ", " + testFieldArrayResult + ", " + testFieldArrayResult + ", " + testFieldListResult + ", " + testFieldListResult + ")"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2)))", "'" + clazz + "'"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2), recursive=FALSE)", + "cat(" + resultInList + + "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external object]','\n\n', sep='')"); + + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3))", + "c(" + resultInVector + ", " + testFieldArrayResult + ", " + testFieldArrayResult + ", " + testFieldArrayResult + ", " + testFieldArrayResult + ", " + testFieldListResult + + ", " + testFieldListResult + ", " + testFieldListResult + ", " + testFieldListResult + ")"); + assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3)))", "'" + clazz + "'"); + assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3), recursive=FALSE)", + "cat(" + resultInList + + "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external object]','\n\n', sep='')"); + } + + private String getTestFieldValuesAsResult(String name) throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException { + TestArraysClass ta = new TestArraysClass(); + Field f = ta.getClass().getDeclaredField(name); + Object value = f.get(ta); + if (value instanceof List) { + List<?> l = (List) value; + value = l.toArray(new Object[l.size()]); + } + StringBuilder sb = new StringBuilder(); + int length = Array.getLength(value); + for (int i = 0; i < length; i++) { + Object object = Array.get(value, i); + if (object instanceof String || object instanceof Character) { + sb.append("'"); + } + if (object instanceof Boolean) { + sb.append(Boolean.toString((boolean) object).toUpperCase()); + } else if (object instanceof Float) { + sb.append((double) ((float) object)); + } else { + sb.append(object); + } + if (object instanceof String || object instanceof Character) { + sb.append("'"); + } + if (i < length - 1) { + sb.append(", "); + } + } + return sb.toString(); + } + @Test public void testConvertEmptyList() throws IllegalArgumentException, IllegalAccessException { assertEvalFastR(Ignored.ImplementationError, CREATE_TRUFFLE_OBJECT + "as.character(to$listEmpty);", "as.character(list())"); @@ -847,6 +1046,10 @@ public class TestJavaInterop extends TestBase { return null; } + private String toRVector(Object[] l, String asXXX) { + return toRVector(Arrays.asList(l), asXXX); + } + private String toRVector(List<?> l, String asXXX) { StringBuilder sb = new StringBuilder(); if (asXXX != null) { @@ -1571,7 +1774,203 @@ public class TestJavaInterop extends TestBase { } } - public static class TestArrayClass { - public static TestArrayClass[] testArray = new TestArrayClass[]{new TestArrayClass(), new TestArrayClass(), new TestArrayClass()}; + public static class TestArraysClass { + public Object[] objectEmpty = new Object[0]; + + public boolean[] booleanArray = {true, false, true}; + public boolean[][] booleanArray2 = {{true, false, true}, {true, false, true}}; + public boolean[][][] booleanArray3 = {{{true, false, true}, {true, false, true}}, {{true, false, true}, {true, false, true}}}; + + public byte[] byteArray = {1, 2, 3}; + public byte[][] byteArray2 = {{1, 2, 3}, {1, 2, 3}}; + public byte[][][] byteArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public char[] charArray = {'a', 'b', 'c'}; + public char[][] charArray2 = {{'a', 'b', 'c'}, {'a', 'b', 'c'}}; + public char[][][] charArray3 = {{{'a', 'b', 'c'}, {'a', 'b', 'c'}}, {{'a', 'b', 'c'}, {'a', 'b', 'c'}}}; + + public double[] doubleArray = {1.1, 1.2, 1.3}; + public double[][] doubleArray2 = {{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}; + public double[][][] doubleArray3 = {{{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}, {{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}}; + + public float[] floatArray = {1.1f, 1.2f, 1.3f}; + public float[][] floatArray2 = {{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}; + public float[][][] floatArray3 = {{{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}, {{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}}; + + public int[] integerArray = {1, 2, 3}; + public int[][] integerArray2 = {{1, 2, 3}, {1, 2, 3}}; + public int[][][] integerArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public long[] longArray = {1L, 2L, 3L}; + public long[][] longArray2 = {{1L, 2L, 3L}, {1L, 2L, 3L}}; + public long[][][] longArray3 = {{{1L, 2L, 3L}, {1L, 2L, 3L}}, {{1L, 2L, 3L}, {1L, 2L, 3L}}}; + + public short[] shortArray = {1, 2, 3}; + public short[][] shortArray2 = {{1, 2, 3}, {1, 2, 3}}; + public short[][][] shortArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public Boolean[] booleanObjectArray = {true, false, true}; + public Boolean[][] booleanObjectArray2 = {{true, false, true}, {true, false, true}}; + public Boolean[][][] booleanObjectArray3 = {{{true, false, true}, {true, false, true}}, {{true, false, true}, {true, false, true}}}; + + public Byte[] byteObjectArray = {1, 2, 3}; + public Byte[][] byteObjectArray2 = {{1, 2, 3}, {1, 2, 3}}; + public Byte[][][] byteObjectArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public Character[] charObjectArray = {'a', 'b', 'c'}; + public Character[][] charObjectArray2 = {{'a', 'b', 'c'}, {'a', 'b', 'c'}}; + public Character[][][] charObjectArray3 = {{{'a', 'b', 'c'}, {'a', 'b', 'c'}}, {{'a', 'b', 'c'}, {'a', 'b', 'c'}}}; + + public Double[] doubleObjectArray = {1.1, 1.2, 1.3}; + public Double[][] doubleObjectArray2 = {{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}; + public Double[][][] doubleObjectArray3 = {{{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}, {{1.1, 1.2, 1.3}, {1.1, 1.2, 1.3}}}; + + public Float[] floatObjectArray = {1.1f, 1.2f, 1.3f}; + public Float[][] floatObjectArray2 = {{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}; + public Float[][][] floatObjectArray3 = {{{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}, {{1.1f, 1.2f, 1.3f}, {1.1f, 1.2f, 1.3f}}}; + + public Integer[] integerObjectArray = {1, 2, 3}; + public Integer[][] integerObjectArray2 = {{1, 2, 3}, {1, 2, 3}}; + public Integer[][][] integerObjectArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public Long[] longObjectArray = {1L, 2L, 3L}; + public Long[][] longObjectArray2 = {{1L, 2L, 3L}, {1L, 2L, 3L}}; + public Long[][][] longObjectArray3 = {{{1L, 2L, 3L}, {1L, 2L, 3L}}, {{1L, 2L, 3L}, {1L, 2L, 3L}}}; + + public Short[] shortObjectArray = {1, 2, 3}; + public Short[][] shortObjectArray2 = {{1, 2, 3}, {1, 2, 3}}; + public Short[][][] shortObjectArray3 = {{{1, 2, 3}, {1, 2, 3}}, {{1, 2, 3}, {1, 2, 3}}}; + + public String[] stringArray = {"a", "b", "c"}; + public String[][] stringArray2 = {{"a", "b", "c"}, {"a", "b", "c"}}; + public String[][][] stringArray3 = {{{"a", "b", "c"}, {"a", "b", "c"}}, {{"a", "b", "c"}, {"a", "b", "c"}}}; + + public Object[] onlyIntegerObjectArray = {1, 2, 3}; + public Object[] onlyLongObjectArray = {1L, 2L, 3L}; + public Object[] numericObjectArray = {1, 1L, 1.1}; + public Object[] mixedObjectArray = {1, "a", "1"}; + + public List<Boolean> booleanList = Arrays.asList(booleanObjectArray); + public List<?> booleanList2 = Arrays.asList(new List<?>[]{booleanList, booleanList}); + public List<?> booleanList3 = Arrays.asList(new List<?>[]{booleanList2, booleanList2}); + + public List<Byte> byteList = Arrays.asList(byteObjectArray); + public List<?> byteList2 = Arrays.asList(new List<?>[]{byteList, byteList}); + public List<?> byteList3 = Arrays.asList(new List<?>[]{byteList2, byteList2}); + + public List<Character> charList = Arrays.asList(charObjectArray); + public List<?> charList2 = Arrays.asList(new List<?>[]{charList, charList}); + public List<?> charList3 = Arrays.asList(new List<?>[]{charList2, charList2}); + + public List<Double> doubleList = Arrays.asList(doubleObjectArray); + public List<?> doubleList2 = Arrays.asList(new List<?>[]{doubleList, doubleList}); + public List<?> doubleList3 = Arrays.asList(new List<?>[]{doubleList2, doubleList2}); + + public List<Float> floatList = Arrays.asList(floatObjectArray); + public List<?> floatList2 = Arrays.asList(new List<?>[]{floatList, floatList}); + public List<?> floatList3 = Arrays.asList(new List<?>[]{floatList2, floatList2}); + + public List<Integer> integerList = Arrays.asList(integerObjectArray); + public List<?> integerList2 = Arrays.asList(new List<?>[]{integerList, integerList}); + public List<?> integerList3 = Arrays.asList(new List<?>[]{integerList2, integerList2}); + + public List<Long> longList = Arrays.asList(longObjectArray); + public List<?> longList2 = Arrays.asList(new List<?>[]{longList, longList}); + public List<?> longList3 = Arrays.asList(new List<?>[]{longList2, longList2}); + + public List<Short> shortList = Arrays.asList(shortObjectArray); + public List<?> shortList2 = Arrays.asList(new List<?>[]{shortList, shortList}); + public List<?> shortList3 = Arrays.asList(new List<?>[]{shortList2, shortList2}); + + public List<String> stringList = Arrays.asList(stringArray); + public List<?> stringList2 = Arrays.asList(new List<?>[]{Arrays.asList(stringArray), Arrays.asList(stringArray)}); + public List<?> stringList3 = Arrays.asList(new List<?>[]{stringList2, stringList2}); + + public List<?> mixedIntegerList = Arrays.asList(new Object[]{new Integer[]{1, 2, 3}, Arrays.asList(new int[]{4, 5, 6}), new int[]{7, 8, 9}, 10, 11, 12}); + } + + public static class TestIterableSize extends AbstractTestIterable { + public TestIterableSize(int size) { + super(size); + } + + public int size() { + return size; + } + } + + public static class TestIterableGetSize extends AbstractTestIterable { + public TestIterableGetSize(int size) { + super(size); + } + + public int getSize() { + return size; + } } + + public static class TestIterableLength extends AbstractTestIterable { + public TestIterableLength(int size) { + super(size); + } + + public int length() { + return size; + } + } + + public static class TestIterableGetLength extends AbstractTestIterable { + public TestIterableGetLength(int size) { + super(size); + } + + public int getLength() { + return size; + } + } + + public static class TestIterableNoSizeMethod implements Iterable<Integer> { + private final int size; + + public TestIterableNoSizeMethod(int size) { + this.size = size; + } + + private class I implements Iterator<Integer> { + private int size; + + I() { + this.size = TestIterableNoSizeMethod.this.size; + } + + @Override + public boolean hasNext() { + return size-- > 0; + } + + @Override + public Integer next() { + throw new UnsupportedOperationException("Should not reach here."); + }; + } + + @Override + public Iterator<Integer> iterator() { + return new I(); + } + } + + private static class AbstractTestIterable implements Iterable<Object> { + protected final int size; + + AbstractTestIterable(int size) { + this.size = size; + } + + @Override + public Iterator<Object> iterator() { + throw new UnsupportedOperationException("Should not reach here."); + } + } + }