aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java
diff options
context:
space:
mode:
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java')
-rw-r--r--vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java b/vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java
index f7d72ade20d..4f8bd64f85a 100644
--- a/vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java
+++ b/vespajlib/src/main/java/com/yahoo/data/access/helpers/MatchFeatureData.java
@@ -13,6 +13,7 @@ import java.util.ArrayList;
import java.util.AbstractMap.SimpleEntry;
import java.util.List;
import java.util.Map;
+import java.util.function.Function;
/**
* MatchFeatureData helps pack match features for hits into
@@ -85,6 +86,16 @@ public class MatchFeatureData {
}
return new Value.DoubleValue(doubleValues[index]);
}
+
+ public HitValue subsetFilter(Function<Hashlet<String,Integer>, Hashlet<String,Integer>> filter) {
+ return new HitValue(filter.apply(hashlet), dataValues, doubleValues);
+ }
+ // used only from subsetFilter() above
+ private HitValue(Hashlet<String,Integer> hashlet, byte[][] dataValues, double[] doubleValues) {
+ this.hashlet = hashlet;
+ this.dataValues = dataValues;
+ this.doubleValues = doubleValues;
+ }
}
public HitValue addHit() {