Class ScanComparisons
- java.lang.Object
-
- com.apple.foundationdb.record.query.plan.ScanComparisons
-
- All Implemented Interfaces:
PlanHashable
- Direct Known Subclasses:
ScanComparisons.Builder
@API(INTERNAL) public class ScanComparisons extends Object implements PlanHashable
A set ofComparisons.Comparison
for scanning an index. A prefix of zero or more equality comparisons for each of the corresponding indexed fields, followed by zero or more inequality comparisons to be applied to the next field.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ScanComparisons.Builder
A builder forScanComparisons
.static class
ScanComparisons.ComparisonType
The type of a comparison.
-
Field Summary
Fields Modifier and Type Field Description static ScanComparisons
EMPTY
protected List<Comparisons.Comparison>
equalityComparisons
protected Set<Comparisons.Comparison>
inequalityComparisons
-
Constructor Summary
Constructors Constructor Description ScanComparisons(List<Comparisons.Comparison> equalityComparisons, Set<Comparisons.Comparison> inequalityComparisons)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ScanComparisons
append(ScanComparisons other)
boolean
equals(Object o)
static ScanComparisons
from(Comparisons.Comparison comparison)
static ScanComparisons.ComparisonType
getComparisonType(Comparisons.Comparison comparison)
List<Comparisons.Comparison>
getEqualityComparisons()
int
getEqualitySize()
Set<Comparisons.Comparison>
getInequalityComparisons()
int
hashCode()
boolean
isEmpty()
boolean
isEquality()
ScanComparisons
merge(ScanComparisons other)
int
planHash()
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.int
size()
String
toString()
int
totalSize()
static Object
toTupleItem(Object item)
TupleRange
toTupleRange()
TupleRange
toTupleRange(FDBRecordStoreBase<?> store, EvaluationContext context)
TupleRange
toTupleRangeWithoutContext()
-
-
-
Field Detail
-
equalityComparisons
@Nonnull protected final List<Comparisons.Comparison> equalityComparisons
-
inequalityComparisons
@Nonnull protected final Set<Comparisons.Comparison> inequalityComparisons
-
EMPTY
public static final ScanComparisons EMPTY
-
-
Constructor Detail
-
ScanComparisons
public ScanComparisons(@Nonnull List<Comparisons.Comparison> equalityComparisons, @Nonnull Set<Comparisons.Comparison> inequalityComparisons)
-
-
Method Detail
-
getEqualityComparisons
@Nonnull public List<Comparisons.Comparison> getEqualityComparisons()
-
getInequalityComparisons
@Nonnull public Set<Comparisons.Comparison> getInequalityComparisons()
-
getEqualitySize
public int getEqualitySize()
-
size
public int size()
-
totalSize
public int totalSize()
-
isEmpty
public boolean isEmpty()
-
isEquality
public boolean isEquality()
-
getComparisonType
@Nonnull public static ScanComparisons.ComparisonType getComparisonType(@Nonnull Comparisons.Comparison comparison)
-
from
@Nullable public static ScanComparisons from(@Nonnull Comparisons.Comparison comparison)
-
merge
@Nullable public ScanComparisons merge(@Nonnull ScanComparisons other)
-
append
@Nullable public ScanComparisons append(@Nonnull ScanComparisons other)
-
toTupleRange
@Nonnull public TupleRange toTupleRange()
-
toTupleRange
@Nonnull public TupleRange toTupleRange(@Nullable FDBRecordStoreBase<?> store, @Nullable EvaluationContext context)
-
toTupleRangeWithoutContext
@Nullable public TupleRange toTupleRangeWithoutContext()
-
planHash
public int planHash()
Description copied from interface:PlanHashable
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.- Specified by:
planHash
in interfacePlanHashable
- Returns:
- a stable hash code
-
-