java.lang.Object
org.apache.jena.sparql.expr.ExprNode
org.apache.jena.sparql.expr.ExprVar
- All Implemented Interfaces:
Expr
An expression that is a variable in an expression.
-
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
-
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 substitutionboolean
General equality operation - consider this to be 'protected'eval
(Binding binding, FunctionEnv env) Evaluate this expression against the bindingvoid
org.apache.jena.graph.Node
Variable (or null)Variable name (returns null if not a variable)int
hashCode()
Expr
are used in both syntax and algebra.boolean
Answer whether this is a variable.toString()
void
visit
(ExprVisitor visitor) Methods inherited from class org.apache.jena.sparql.expr.ExprNode
deepCopy, equals, equalsBySyntax, getConstant, getExpr, getFunction, getGraphPattern, getVarsMentioned, isConstant, isExpr, isFunction, isGraphPattern, isSatisfied
-
Constructor Details
-
ExprVar
-
ExprVar
public ExprVar(org.apache.jena.graph.Node n) -
ExprVar
-
-
Method Details
-
eval
Description copied from interface:Expr
Evaluate this expression against the binding -
copySubstitute
Description copied from interface:Expr
Deep copy with substitution- Specified by:
copySubstitute
in interfaceExpr
- Specified by:
copySubstitute
in classExprNode
-
applyNodeTransform
Description copied from interface:Expr
Rewrite, applying a node->node transformation- Specified by:
applyNodeTransform
in interfaceExpr
- Specified by:
applyNodeTransform
in classExprNode
-
copy
-
visit
-
apply
-
format
-
hashCode
public int hashCode()Description copied from interface:Expr
Expr
are 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 EXISTS
andEXISTS
expressions which involve a query pattern. As a result there are different ways in syntax to produce the same algebra form.Two
Expr
are considered equal if they are equal as algebra expressions.hashCode
andequals
must 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,equalsBySyntax
impliesequals
(by algebra).Hence, different
hashCode
=> notequalsBySyntax
. -
equals
Description copied from interface:Expr
General equality operation - consider this to be 'protected' -
isVariable
public boolean isVariable()Description copied from interface:Expr
Answer whether this is a variable.- Specified by:
isVariable
in interfaceExpr
- Overrides:
isVariable
in classExprNode
-
getVarName
Description copied from interface:Expr
Variable name (returns null if not a variable)- Specified by:
getVarName
in interfaceExpr
- Overrides:
getVarName
in classExprNode
- Returns:
- Returns the name.
-
getExprVar
Description copied from interface:Expr
Variable (or null)- Specified by:
getExprVar
in interfaceExpr
- Overrides:
getExprVar
in classExprNode
-
asVar
Description copied from interface:Expr
Convert to a Var variable. -
getAsNode
public org.apache.jena.graph.Node getAsNode() -
toPrefixString
-
asSparqlExpr
-
toString
-