diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-03-01 10:39:52 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2022-03-01 10:39:52 +0100 |
commit | 05ab2e976349eb3016fa91020e161a8782bf00a5 (patch) | |
tree | d570863bbd636ddf908bf1d875efd21e5cbf9056 /vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java | |
parent | 0e1e603359c9018cea86d1716903c3ce365e529e (diff) |
Compute hash without serializing to string
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java b/vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java index adc84225a63..2b9dc709e0e 100644 --- a/vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java +++ b/vespajlib/src/main/java/com/yahoo/tensor/functions/Merge.java @@ -70,11 +70,6 @@ public class Merge<NAMETYPE extends Name> extends PrimitiveTensorFunction<NAMETY } @Override - public String toString(ToStringContext<NAMETYPE> context) { - return "merge(" + argumentA.toString(context) + ", " + argumentB.toString(context) + ", " + merger + ")"; - } - - @Override public TensorType type(TypeContext<NAMETYPE> context) { return outputType(argumentA.type(context), argumentB.type(context)); } @@ -87,6 +82,15 @@ public class Merge<NAMETYPE extends Name> extends PrimitiveTensorFunction<NAMETY return evaluate(a, b, mergedType, merger); } + + @Override + public String toString(ToStringContext<NAMETYPE> context) { + return "merge(" + argumentA.toString(context) + ", " + argumentB.toString(context) + ", " + merger + ")"; + } + + @Override + public int hashCode() { return Objects.hash("merge", argumentA, argumentB, merger); } + static Tensor evaluate(Tensor a, Tensor b, TensorType mergedType, DoubleBinaryOperator combinator) { // Choose merge algorithm if (hasSingleIndexedDimension(a) && hasSingleIndexedDimension(b) && a.type().dimensions().get(0).name().equals(b.type().dimensions().get(0).name())) |