Class EvaluationStatistics.CardinalityCalculator
java.lang.Object
org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor<RuntimeException>
org.eclipse.rdf4j.query.algebra.evaluation.impl.EvaluationStatistics.CardinalityCalculator
- All Implemented Interfaces:
QueryModelVisitor<RuntimeException>
- Direct Known Subclasses:
TupleFunctionEvaluationStatistics.TupleFunctionCardinalityCalculator
- Enclosing class:
- EvaluationStatistics
protected static class EvaluationStatistics.CardinalityCalculator
extends AbstractQueryModelVisitor<RuntimeException>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected intcountConstantVars(Iterable<Var> vars) doubleprotected doublegetCardinality(double varCardinality, Collection<Var> vars) protected doublegetCardinality(double varCardinality, Var var) protected doublegetCardinality(BindingSetAssignment bindingSetAssignment) protected doubleprotected doublegetCardinality(TripleRef tripleRef) protected doubleOverride this if you are able to determine the cardinality based not only on the contextVar itself but also the other vars (e.g.protected doublegetContextCardinality(Var var) protected doubleOverride this if you are able to determine the cardinality based not only on the objectVar itself but also the other vars (e.g.protected doublegetObjectCardinality(Var var) protected doubleOverride this if you are able to determine the cardinality based not only on the predicateVar itself but also the other vars (e.g.protected doubleprotected doubleOverride this if you are able to determine the cardinality based not only on the subjectVar itself but also the other vars (e.g.protected doublegetSubjectCardinality(Var var) voidmeet(ArbitraryLengthPath node) voidmeet(BindingSetAssignment node) voidvoidvoidvoidvoidvoidmeet(SingletonSet node) voidmeet(StatementPattern sp) voidvoidmeet(ZeroLengthPath node) protected voidMethod called by all meet methods with aBinaryTupleOperatornode as argument.protected voidmeetNode(QueryModelNode node) Method called by all of the other meet methods that are not overridden in subclasses.protected voidMethod called by all meet methods with aUnaryTupleOperatornode as argument.Methods inherited from class org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor
meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meetBinaryValueOperator, meetCompareSubQueryValueOperator, meetNAryValueOperator, meetOther, meetSubQueryValueOperator, meetUnaryValueOperator, meetUpdateExpr
-
Field Details
-
cardinality
protected double cardinality
-
-
Constructor Details
-
CardinalityCalculator
protected CardinalityCalculator()
-
-
Method Details
-
getCardinality
public double getCardinality() -
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
getCardinality
-
getCardinality
-
getCardinality
-
getSubjectCardinality
Override this if you are able to determine the cardinality based not only on the subjectVar itself but also the other vars (e.g. the predicate value might determine a subject subset). -
getSubjectCardinality
-
getPredicateCardinality
Override this if you are able to determine the cardinality based not only on the predicateVar itself but also the other vars (e.g. the subject value might determine a predicate subset). -
getPredicateCardinality
-
getObjectCardinality
Override this if you are able to determine the cardinality based not only on the objectVar itself but also the other vars (e.g. the predicate value might determine an object subset). -
getObjectCardinality
-
getContextCardinality
Override this if you are able to determine the cardinality based not only on the contextVar itself but also the other vars (e.g. the subject value might determine a context subset). -
getContextCardinality
-
getCardinality
-
getCardinality
-
countConstantVars
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meetBinaryTupleOperator
Description copied from class:AbstractQueryModelVisitorMethod called by all meet methods with aBinaryTupleOperatornode as argument. Forwards the call toAbstractQueryModelVisitor.meetNode(org.eclipse.rdf4j.query.algebra.QueryModelNode)by default.- Overrides:
meetBinaryTupleOperatorin classAbstractQueryModelVisitor<RuntimeException>- Parameters:
node- The node that is being visited.
-
meetUnaryTupleOperator
Description copied from class:AbstractQueryModelVisitorMethod called by all meet methods with aUnaryTupleOperatornode as argument. Forwards the call toAbstractQueryModelVisitor.meetNode(org.eclipse.rdf4j.query.algebra.QueryModelNode)by default.- Overrides:
meetUnaryTupleOperatorin classAbstractQueryModelVisitor<RuntimeException>- Parameters:
node- The node that is being visited.
-
meet
- Specified by:
meetin interfaceQueryModelVisitor<RuntimeException>- Overrides:
meetin classAbstractQueryModelVisitor<RuntimeException>
-
meetNode
Description copied from class:AbstractQueryModelVisitorMethod called by all of the other meet methods that are not overridden in subclasses. This method can be overridden in subclasses to define default behaviour when visiting nodes. The default behaviour of this method is to visit the node's children.- Overrides:
meetNodein classAbstractQueryModelVisitor<RuntimeException>- Parameters:
node- The node that is being visited.
-