summaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
diff options
context:
space:
mode:
authorLester Solbakken <lesters@users.noreply.github.com>2021-05-03 08:52:00 +0200
committerGitHub <noreply@github.com>2021-05-03 08:52:00 +0200
commitecdb31279ac8df4abfa4a568b3cd9c263f06adb8 (patch)
tree246101853ad15d5ad961187be3b66e873c212a51 /vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
parentc5df332d4c7519565f45ce9301771c3662eda128 (diff)
parent400a428fd3ae71684988e93953eb6c89462d057e (diff)
Merge pull request #17693 from vespa-engine/arnej/tensor-has-cell-with-address
add api for detecting cell existence
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java')
-rw-r--r--vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java b/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
index 7631a2e4eab..e686a42d530 100644
--- a/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
+++ b/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
@@ -61,6 +61,17 @@ public class MixedTensor implements Tensor {
return cell.getValue();
}
+ @Override
+ public boolean has(TensorAddress address) {
+ long cellIndex = index.indexOf(address);
+ if (cellIndex < 0 || cellIndex >= cells.size())
+ return false;
+ Cell cell = cells.get((int)cellIndex);
+ if ( ! address.equals(cell.getKey()))
+ return false;
+ return true;
+ }
+
/**
* Returns an iterator over the cells of this tensor.
* Cells are returned in order of increasing indexes in the