diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2024-01-18 11:51:01 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2024-01-18 11:51:01 +0100 |
commit | c9ae223ea9189fefcbd2e7005a9142c7bcb44348 (patch) | |
tree | 80abcf42fd85ab6a0e9d3440bd76907f22a404bd /vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java | |
parent | 3af27a9e69f4a9be0d5029394bc4ea4828081c6f (diff) |
Skip copying of array when there is no reuse possible.
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java b/vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java index a2a3874eced..ecd302db361 100644 --- a/vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java +++ b/vespajlib/src/main/java/com/yahoo/tensor/functions/Rename.java @@ -8,6 +8,7 @@ import com.yahoo.tensor.TypeResolver; import com.yahoo.tensor.evaluation.EvaluationContext; import com.yahoo.tensor.evaluation.Name; import com.yahoo.tensor.evaluation.TypeContext; +import com.yahoo.tensor.impl.StringTensorAddress; import java.util.HashMap; import java.util.Iterator; @@ -35,7 +36,7 @@ public class Rename<NAMETYPE extends Name> extends PrimitiveTensorFunction<NAMET Objects.requireNonNull(argument, "The argument tensor cannot be null"); Objects.requireNonNull(fromDimensions, "The 'from' dimensions cannot be null"); Objects.requireNonNull(toDimensions, "The 'to' dimensions cannot be null"); - if (fromDimensions.size() < 1) + if (fromDimensions.isEmpty()) throw new IllegalArgumentException("from dimensions is empty, must rename at least one dimension"); if (fromDimensions.size() != toDimensions.size()) throw new IllegalArgumentException("Rename from and to dimensions must be equal, was " + @@ -122,7 +123,7 @@ public class Rename<NAMETYPE extends Name> extends PrimitiveTensorFunction<NAMET String[] reorderedLabels = new String[toIndexes.length]; for (int i = 0; i < toIndexes.length; i++) reorderedLabels[toIndexes[i]] = address.label(i); - return TensorAddress.of(reorderedLabels); + return StringTensorAddress.unsafeOf(reorderedLabels); } private String toVectorString(List<String> elements) { |