Interface FilterTuple
- All Superinterfaces:
Cloneable
,QueryModelNode
,Serializable
- All Known Implementing Classes:
ExclusiveGroup
,ExclusiveStatement
,FedXStatementPattern
,StatementSourcePattern
Expressions implementing this interface can apply some
FilterValueExpr
during evaluation.- Author:
- Andreas Schwarte
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addBoundFilter
(String varName, Value value) register a filter that can be directly expressed as a binding, e.g.void
addFilterExpr
(FilterExpr expr) register a new filter expression.Returns bound filter bindings, that need to be added as additional bindings to the final resultboolean
Methods inherited from interface org.eclipse.rdf4j.query.algebra.QueryModelNode
clone, equals, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, replaceChildNode, replaceWith, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, toString, visit, visitChildren
-
Method Details
-
hasFilter
boolean hasFilter()- Returns:
- true if this expression has a filter to apply
-
addFilterExpr
register a new filter expression. If the expr has already a filter registered, the new expression is added to aConjunctiveFilterExpr
.- Parameters:
expr
-
-
addBoundFilter
register a filter that can be directly expressed as a binding, e.g. SELECT * WHERE { ?s p o . FILTER (?s = X) } is equivalent to SELECT * WHERE { X p o . }- Parameters:
varName
-value
-
-
getFilterExpr
FilterValueExpr getFilterExpr()- Returns:
- the currently registered filter expressions, usually of type
FilterExpr
orConjunctiveFilterExpr
-
getFreeVars
- Returns:
- the free variables of this expression
-
getBoundFilters
BindingSet getBoundFilters()Returns bound filter bindings, that need to be added as additional bindings to the final result- Returns:
- the bound filters, or
null
-