aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-01-21 19:18:55 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2024-01-21 19:25:32 +0100
commit718b455587a6e093abfdbe5a45dc40221abc90eb (patch)
tree60d09423de6db9a07e0180b1abf01fdfa7500ba3 /vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java
parent8c80c15025e67cc8c31f390d4f6f800f7d3dc63a (diff)
- Add and use getAsDouble method returning a Double object. It behaves similar to Map.get(key).
null indicates no value present. Then you avoid 2 lookups to first check if a value is present, and then to fetch that value. This does wonders when it is backed by a map and hashCode/equals are relatively expensive.
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java')
-rw-r--r--vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java b/vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java
index 5471ea65b97..3e0df5f2261 100644
--- a/vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java
+++ b/vespajlib/src/main/java/com/yahoo/tensor/MappedTensor.java
@@ -41,6 +41,9 @@ public class MappedTensor implements Tensor {
public boolean has(TensorAddress address) { return cells.containsKey(address); }
@Override
+ public Double getAsDouble(TensorAddress address) { return cells.get(address); }
+
+ @Override
public Iterator<Cell> cellIterator() { return new CellIteratorAdaptor(cells.entrySet().iterator()); }
@Override