public final class TupleDomain<T> extends Object
Modifier and Type | Class and Description |
---|---|
static class |
TupleDomain.ColumnDomain<C> |
Modifier and Type | Method and Description |
---|---|
static <T> TupleDomain<T> |
all() |
static <T> TupleDomain<T> |
columnWiseUnion(List<TupleDomain<T>> tupleDomains)
Returns a TupleDomain in which corresponding column Domains are unioned together.
|
static <T> TupleDomain<T> |
columnWiseUnion(TupleDomain<T> first,
TupleDomain<T> second,
TupleDomain<T>... rest) |
boolean |
contains(TupleDomain<T> other)
Returns true only if the this TupleDomain contains all possible tuples that would be allowable by
the other TupleDomain.
|
boolean |
equals(Object obj) |
static <T> Optional<Map<T,NullableValue>> |
extractFixedValues(TupleDomain<T> tupleDomain)
Extract all column constraints that require exactly one value or only null in their respective Domains.
|
static <T> TupleDomain<T> |
fromColumnDomains(Optional<List<TupleDomain.ColumnDomain<T>>> columnDomains) |
static <T> TupleDomain<T> |
fromFixedValues(Map<T,NullableValue> fixedValues)
Convert a map of columns to values into the TupleDomain which requires
those columns to be fixed to those values.
|
Optional<List<TupleDomain.ColumnDomain<T>>> |
getColumnDomains() |
Optional<Map<T,Domain>> |
getDomains()
Gets the TupleDomain as a map of each column to its respective Domain.
|
int |
hashCode() |
TupleDomain<T> |
intersect(TupleDomain<T> other)
Returns the strict intersection of the TupleDomains.
|
boolean |
isAll()
Returns true if any tuples would satisfy this TupleDomain
|
boolean |
isNone()
Returns true if no tuple could ever satisfy this TupleDomain
|
static <T> TupleDomain<T> |
none() |
boolean |
overlaps(TupleDomain<T> other)
Returns true only if there exists a strict intersection between the TupleDomains.
|
TupleDomain<T> |
simplify() |
String |
toString(ConnectorSession session) |
<U> TupleDomain<U> |
transform(Function<T,U> function) |
static <T> TupleDomain<T> |
withColumnDomains(Map<T,Domain> domains) |
public static <T> TupleDomain<T> withColumnDomains(Map<T,Domain> domains)
public static <T> TupleDomain<T> none()
public static <T> TupleDomain<T> all()
public static <T> Optional<Map<T,NullableValue>> extractFixedValues(TupleDomain<T> tupleDomain)
public static <T> TupleDomain<T> fromFixedValues(Map<T,NullableValue> fixedValues)
public static <T> TupleDomain<T> fromColumnDomains(Optional<List<TupleDomain.ColumnDomain<T>>> columnDomains)
public Optional<List<TupleDomain.ColumnDomain<T>>> getColumnDomains()
public boolean isAll()
public boolean isNone()
public Optional<Map<T,Domain>> getDomains()
public TupleDomain<T> intersect(TupleDomain<T> other)
@SafeVarargs public static <T> TupleDomain<T> columnWiseUnion(TupleDomain<T> first, TupleDomain<T> second, TupleDomain<T>... rest)
public static <T> TupleDomain<T> columnWiseUnion(List<TupleDomain<T>> tupleDomains)
Note that this is NOT equivalent to a strict union as the final result may allow tuples that do not exist in either TupleDomain. For example:
In the above resulting TupleDomain, tuple (a => 1, b => 3) would be considered valid but would not be valid for either TupleDomain X or TupleDomain Y. However, this result is guaranteed to be a superset of the strict union.
public boolean overlaps(TupleDomain<T> other)
public boolean contains(TupleDomain<T> other)
public String toString(ConnectorSession session)
public <U> TupleDomain<U> transform(Function<T,U> function)
public TupleDomain<T> simplify()
Copyright © 2012–2018. All rights reserved.