java.lang.Object
org.apache.jena.sparql.expr.ExprNode
org.apache.jena.sparql.expr.ExprAggregator
- All Implemented Interfaces:
Expr
Group aggregation functions calculated a value during grouping and placed in the
output binding. This class is the relationship of an aggregation expression and that
variable. Evaluation returns the variable's bound value.
-
Field Summary
Fields inherited from interface org.apache.jena.sparql.expr.Expr
CMP_EQUAL, CMP_GREATER, CMP_INDETERMINATE, CMP_LESS, CMP_UNEQUAL, NONE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapply(ExprTransform transform) applyNodeTransform(NodeTransform transform) Rewrite, applying a node->node transformationasVar()Convert to a Var variable.copySubstitute(Binding binding) Deep copy with substitutionbooleanGeneral equality operation - consider this to be 'protected'eval(Binding binding, FunctionEnv env) Evaluate this expression against the bindingVariable (or null)getVar()inthashCode()Exprare used in both syntax and algebra.voidtoString()voidvisit(ExprVisitor visitor) Methods inherited from class org.apache.jena.sparql.expr.ExprNode
deepCopy, equals, equalsBySyntax, getConstant, getExpr, getFunction, getGraphPattern, getVarName, getVarsMentioned, isConstant, isExpr, isFunction, isGraphPattern, isSatisfied, isVariable
-
Constructor Details
-
ExprAggregator
-
-
Method Details
-
getVar
-
setVar
-
getAggregator
-
hashCode
public int hashCode()Description copied from interface:ExprExprare used in both syntax and algebra. There is no syntax to algebra translation step because the parser uses operator precedence to build the right evaluation structure directly.The exceptions to this are the
NOT EXISTSandEXISTSexpressions which involve a query pattern. As a result there are different ways in syntax to produce the same algebra form.Two
Exprare considered equal if they are equal as algebra expressions.hashCodeandequalsmust implement that.There is also
equalsBySyntax. Because two different syntax forms can yield the same algebra, but two different algebra forms must be different syntax,equalsBySyntaximpliesequals(by algebra).Hence, different
hashCode=> notequalsBySyntax. -
equals
Description copied from interface:ExprGeneral equality operation - consider this to be 'protected' -
getExprVar
Description copied from interface:ExprVariable (or null)- Specified by:
getExprVarin interfaceExpr- Overrides:
getExprVarin classExprNode
-
asVar
Description copied from interface:ExprConvert to a Var variable. -
getAggVar
-
asSparqlExpr
-
copySubstitute
Description copied from interface:ExprDeep copy with substitution- Specified by:
copySubstitutein interfaceExpr- Specified by:
copySubstitutein classExprNode
-
applyNodeTransform
Description copied from interface:ExprRewrite, applying a node->node transformation- Specified by:
applyNodeTransformin interfaceExpr- Specified by:
applyNodeTransformin classExprNode
-
toString
-
copy
-
eval
Description copied from interface:ExprEvaluate this expression against the binding -
apply
-
visit
-