Class Quantifier.Existential
- java.lang.Object
-
- com.apple.foundationdb.record.query.plan.temp.Quantifier
-
- com.apple.foundationdb.record.query.plan.temp.Quantifier.Existential
-
- All Implemented Interfaces:
Bindable
,Correlated<Quantifier>
- Enclosing class:
- Quantifier
public static final class Quantifier.Existential extends Quantifier
A quantifier that conceptually flows exactly one item containing a boolean to the owning expression indicating whether the sub-graph that the quantifier ranges over produced a non-empty or an empty result. When the semantics of this quantifiers are realized in an execution strategy that strategy should facilitate a boolean "short-circuit" mechanism as the result will betrue
as soon as the sub-graph produces the first item.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Quantifier.Existential.ExistentialBuilder
Builder subclass for existential quantifiers.-
Nested classes/interfaces inherited from class com.apple.foundationdb.record.query.plan.temp.Quantifier
Quantifier.Builder<Q extends Quantifier,B extends Quantifier.Builder<Q,B>>, Quantifier.Existential, Quantifier.ForEach, Quantifier.Physical
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExpressionRef<? extends RelationalExpression>
getRangesOver()
Return the reference that the quantifier ranges over.String
getShorthand()
Return a short hand string for the quantifier.Quantifier.Existential
rebase(AliasMap translationMap)
Rebases this and all other objects this objects is composed of using a given translation map.-
Methods inherited from class com.apple.foundationdb.record.query.plan.temp.Quantifier
acceptPropertyVisitor, bindTo, equals, equalsOnKind, existential, existential, existentialBuilder, forEach, forEach, forEachBuilder, getAlias, getCorrelatedTo, hashCode, narrow, needsRebase, physical, physical, physicalBuilder, semanticEquals, semanticHashCode, toString
-
-
-
-
Method Detail
-
getRangesOver
@Nonnull public ExpressionRef<? extends RelationalExpression> getRangesOver()
Description copied from class:Quantifier
Return the reference that the quantifier ranges over.- Specified by:
getRangesOver
in classQuantifier
- Returns:
ExpressionRef
this quantifier ranges over
-
getShorthand
@Nonnull public String getShorthand()
Description copied from class:Quantifier
Return a short hand string for the quantifier. As a quantifier's semantics is usually quite subtle and should not distract from expressions. For example, when a data flow is visualized the returned string should be short.- Specified by:
getShorthand
in classQuantifier
- Returns:
- a short string representing the quantifier.
-
rebase
@Nonnull public Quantifier.Existential rebase(@Nonnull AliasMap translationMap)
Description copied from interface:Correlated
Rebases this and all other objects this objects is composed of using a given translation map.- Parameters:
translationMap
- a map defining a translation fromCorrelationIdentifier
sids
toCorrelationIdentifier
sids'
. After the rebase, every correlation to anid
containedids
that is contained or referred to directly or indirectly bythis
must have been transformed to use the mapped counterpart ofid
id'
inids'
. IDs not contained in the translation map must remain unmodified by the rebase operation.- Returns:
- a new entity that has been rebased
-
-