@Test public void requireThatPredicatesHavingMultipleIdenticalConjunctionsAreSupported() { PredicateIndexBuilder builder = new PredicateIndexBuilder(10); builder.indexDocument(DOC_ID, Predicate.fromString( "((a in ['b'] and c in ['d']) or x in ['y']) and ((a in ['b'] and c in ['d']) or z in ['w'])")); PredicateIndex index = builder.build(); PredicateIndex.Searcher searcher = index.searcher(); PredicateQuery query = new PredicateQuery(); query.addFeature("a", "b"); query.addFeature("c", "d"); assertEquals("[42]", searcher.search(query).collect(toList()).toString()); }
public Searcher searcher() { return new Searcher(); }
PredicateIndex { public Searcher searcher() { return new Searcher(); } }
PredicateIndex { public Searcher searcher() { return new Searcher(); } PredicateIndex(
            Config config,
            int[] internalToExternalIdMapping,
            byte[] minFeatureIndex,
            short[] intervalEnds,
            int highestIntervalEnd,
            SimpleIndex intervalIndex,
            SimpleIndex boundsIndex,
            SimpleIndex conjunctionIntervalIndex,
            PredicateIntervalStore intervalStore,
            ConjunctionIndex conjunctionIndex,
            int[] zeroConstraintDocuments); }
PredicateIndex { public Searcher searcher() { return new Searcher(); } PredicateIndex(
            Config config,
            int[] internalToExternalIdMapping,
            byte[] minFeatureIndex,
            short[] intervalEnds,
            int highestIntervalEnd,
            SimpleIndex intervalIndex,
            SimpleIndex boundsIndex,
            SimpleIndex conjunctionIntervalIndex,
            PredicateIntervalStore intervalStore,
            ConjunctionIndex conjunctionIndex,
            int[] zeroConstraintDocuments); void rebuildPostingListCache(); Searcher searcher(); void writeToOutputStream(DataOutputStream out); static PredicateIndex fromInputStream(DataInputStream in); }
PredicateIndex { public Searcher searcher() { return new Searcher(); } PredicateIndex(
            Config config,
            int[] internalToExternalIdMapping,
            byte[] minFeatureIndex,
            short[] intervalEnds,
            int highestIntervalEnd,
            SimpleIndex intervalIndex,
            SimpleIndex boundsIndex,
            SimpleIndex conjunctionIntervalIndex,
            PredicateIntervalStore intervalStore,
            ConjunctionIndex conjunctionIndex,
            int[] zeroConstraintDocuments); void rebuildPostingListCache(); Searcher searcher(); void writeToOutputStream(DataOutputStream out); static PredicateIndex fromInputStream(DataInputStream in);  }