Package org.camunda.bpm.impl.juel
Class AstNode
java.lang.Object
org.camunda.bpm.impl.juel.AstNode
- All Implemented Interfaces:
ExpressionNode,Node
- Direct Known Subclasses:
AstEval,AstIdentifier,AstMethod,AstProperty,AstRightValue,AstText
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract voidappendStructure(StringBuilder builder, Bindings bindings) abstract Objectfinal StringgetStructuralId(Bindings bindings) Get the canonical expression string for this node.final Objectevaluate and return the (optionally coerced) result.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.camunda.bpm.impl.juel.ExpressionNode
getMethodInfo, getType, getValueReference, invoke, isLeftValue, isLiteralText, isMethodInvocation, isReadOnly, setValueMethods inherited from interface org.camunda.bpm.impl.juel.Node
getCardinality, getChild
-
Constructor Details
-
AstNode
public AstNode()
-
-
Method Details
-
getValue
evaluate and return the (optionally coerced) result.- Specified by:
getValuein interfaceExpressionNode- Parameters:
bindings- bindings containing variables and functionscontext- evaluation contexttype- result type- Returns:
- evaluated node, coerced to the expected type
-
appendStructure
-
eval
-
getStructuralId
Description copied from interface:ExpressionNodeGet the canonical expression string for this node. Variable and funtion names will be replaced in a way such that two expression nodes that have the same node structure and bindings will also answer the same value here. For example,"${foo:bar()+2*foobar}"may lead to"${<fn>() + 2 * <var>}"iffoobaris a bound variable. Otherwise, the structural id would be"${<fn>() + 2 * foobar}". If the bindings isnull, the full canonical subexpression is returned.- Specified by:
getStructuralIdin interfaceExpressionNode
-