Interface EnumerationFunction<R>
-
- Type Parameters:
R
- result type
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface EnumerationFunction<R>
Functional interface to allow implementors to provide use case-specific logic when permutations are enumerated byBaseMatcher.match(com.apple.foundationdb.record.query.plan.temp.matching.EnumerationFunction<R>)
. The magic logic then callsapply(com.apple.foundationdb.record.query.plan.temp.EnumeratingIterator<com.apple.foundationdb.record.query.plan.temp.CorrelationIdentifier>, java.util.List<com.apple.foundationdb.record.query.plan.temp.CorrelationIdentifier>)
with anEnumeratingIterator
for ordered aliases on this side and one stable non-violating ordering o the other side. The result of this method is anIterable
of the result typeR
.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Iterator<R>
apply(EnumeratingIterator<CorrelationIdentifier> iterator, List<CorrelationIdentifier> otherOrdered)
Called directly or indirectly by matching logic inBaseMatcher.match(com.apple.foundationdb.record.query.plan.temp.matching.EnumerationFunction<R>)
using anEnumeratingIterator
for ordered aliases on this side and one stable non-violating ordering o the other side.
-
-
-
Method Detail
-
apply
Iterator<R> apply(EnumeratingIterator<CorrelationIdentifier> iterator, List<CorrelationIdentifier> otherOrdered)
Called directly or indirectly by matching logic inBaseMatcher.match(com.apple.foundationdb.record.query.plan.temp.matching.EnumerationFunction<R>)
using anEnumeratingIterator
for ordered aliases on this side and one stable non-violating ordering o the other side. The result of this method is anIterable
of the result typeR
.- Parameters:
iterator
-EnumeratingIterator
over all possible non-violating possible orderings of aliases on this sideotherOrdered
- one possible non-violating ordering of aliases on the other side- Returns:
Iterable
of typeR
-
-