summaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2024-01-21 20:54:16 +0100
committerGitHub <noreply@github.com>2024-01-21 20:54:16 +0100
commit44bea161aac2bf0706dd4b30ac6bab0a63470dfd (patch)
treec82441d663be881bc30e266b91bd3bd395ad3819 /vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
parent22ef0233688ce3e6b85436b1af2e049c5870fa6b (diff)
parent850acefbc85b8bfdf0d6a434e8659f0461cc44bd (diff)
Merge pull request #30000 from vespa-engine/balder/add-method-returning-possible-object-to-avoid-double-lookupv8.290.51
Balder/add method returning possible object to avoid double lookup
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java')
-rw-r--r--vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java10
1 files changed, 10 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 cf6e737bf27..aab4a4e1297 100644
--- a/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
+++ b/vespajlib/src/main/java/com/yahoo/tensor/MixedTensor.java
@@ -83,6 +83,16 @@ public class MixedTensor implements Tensor {
}
@Override
+ public Double getAsDouble(TensorAddress address) {
+ var block = index.blockOf(address);
+ int denseOffset = index.denseOffsetOf(address);
+ if (block == null || denseOffset < 0 || denseOffset >= block.cells.length) {
+ return null;
+ }
+ return block.cells[denseOffset];
+ }
+
+ @Override
public boolean has(TensorAddress address) {
var block = index.blockOf(address);
int denseOffset = index.denseOffsetOf(address);