Class IndexRecordFunction<T>
- java.lang.Object
-
- com.apple.foundationdb.record.RecordFunction<T>
-
- com.apple.foundationdb.record.metadata.IndexRecordFunction<T>
-
- Type Parameters:
T
- the result type of the function
- All Implemented Interfaces:
PlanHashable
,QueryHashable
- Direct Known Subclasses:
TimeWindowRecordFunction
@API(MAINTAINED) public class IndexRecordFunction<T> extends RecordFunction<T>
A function which is applied to a record with the help of an index.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.apple.foundationdb.record.PlanHashable
PlanHashable.PlanHashKind
-
Nested classes/interfaces inherited from interface com.apple.foundationdb.record.QueryHashable
QueryHashable.QueryHashKind
-
-
Constructor Summary
Constructors Constructor Description IndexRecordFunction(String name, GroupingKeyExpression operand, String index)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IndexRecordFunction<T>
cloneWithIndex(String index)
IndexRecordFunction<T>
cloneWithOperand(GroupingKeyExpression operand)
boolean
equals(Object o)
String
getIndex()
GroupingKeyExpression
getOperand()
int
hashCode()
int
planHash(PlanHashable.PlanHashKind hashKind)
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.int
queryHash(QueryHashable.QueryHashKind hashKind)
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.String
toString()
void
validate(Descriptors.Descriptor descriptor)
-
Methods inherited from class com.apple.foundationdb.record.RecordFunction
basePlanHash, baseQueryHash, getName
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.apple.foundationdb.record.PlanHashable
planHash
-
-
-
-
Method Detail
-
getOperand
@Nonnull public GroupingKeyExpression getOperand()
-
cloneWithOperand
@Nonnull public IndexRecordFunction<T> cloneWithOperand(@Nonnull GroupingKeyExpression operand)
-
cloneWithIndex
@Nonnull public IndexRecordFunction<T> cloneWithIndex(@Nonnull String index)
-
validate
public void validate(@Nonnull Descriptors.Descriptor descriptor)
- Overrides:
validate
in classRecordFunction<T>
-
equals
public boolean equals(Object o)
- Overrides:
equals
in classRecordFunction<T>
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classRecordFunction<T>
-
planHash
public int planHash(@Nonnull PlanHashable.PlanHashKind hashKind)
Description copied from interface:PlanHashable
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.- Parameters:
hashKind
- the "kind" of hash to calculate. Each kind of hash has a particular logic with regards to included and excluded items.- Returns:
- a stable hash code
-
queryHash
public int queryHash(@Nonnull QueryHashable.QueryHashKind hashKind)
Description copied from interface:QueryHashable
Return a hash similar tohashCode
, but with the additional guarantee that is is stable across JVMs.- Parameters:
hashKind
- the "kind" of hash to calculate. Each kind of hash has a particular logic with regards to included and excluded items.- Returns:
- a stable hash code
-
-