Class PredicateMultiMap
- java.lang.Object
-
- com.apple.foundationdb.record.query.plan.temp.PredicateMultiMap
-
- Direct Known Subclasses:
PredicateMap
public class PredicateMultiMap extends Object
Map that maps from aQueryPredicate
of a query to aQueryPredicate
of aMatchCandidate
. The each mapping itself has other pieces of information associated with it:- a
PredicateMultiMap.ReapplyPredicateFunction
which can be used to compensate the implied candidate predicate or - a
CorrelationIdentifier
which denotes that this mapping binds the respective parameter in the match candidate
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PredicateMultiMap.Builder
Builder class for a predicate maps.static class
PredicateMultiMap.PredicateMapping
Mapping class.static interface
PredicateMultiMap.ReapplyPredicateFunction
Functional interface to reapply a predicate if necessary.
-
Constructor Summary
Constructors Modifier Constructor Description protected
PredicateMultiMap(com.google.common.collect.SetMultimap<QueryPredicate,PredicateMultiMap.PredicateMapping> map)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PredicateMultiMap.Builder
builder()
Set<Map.Entry<QueryPredicate,PredicateMultiMap.PredicateMapping>>
entries()
Set<PredicateMultiMap.PredicateMapping>
get(QueryPredicate queryPredicate)
protected com.google.common.collect.ImmutableSetMultimap<QueryPredicate,PredicateMultiMap.PredicateMapping>
getMap()
-
-
-
Constructor Detail
-
PredicateMultiMap
protected PredicateMultiMap(@Nonnull com.google.common.collect.SetMultimap<QueryPredicate,PredicateMultiMap.PredicateMapping> map)
-
-
Method Detail
-
getMap
protected com.google.common.collect.ImmutableSetMultimap<QueryPredicate,PredicateMultiMap.PredicateMapping> getMap()
-
get
public Set<PredicateMultiMap.PredicateMapping> get(@Nonnull QueryPredicate queryPredicate)
-
entries
public Set<Map.Entry<QueryPredicate,PredicateMultiMap.PredicateMapping>> entries()
-
builder
@Nonnull public static PredicateMultiMap.Builder builder()
-
-