Class Expression
- java.lang.Object
-
- net.ssehub.easy.instantiation.core.model.expressions.Expression
-
- Direct Known Subclasses:
AbstractCallExpression,AbstractRuleMatchExpression,AlternativeExpression,CompositeExpression,ConstantExpression,ContainerInitializerExpression,DeferredResolvableOperationExpression,ExpressionEvaluator,FieldAccessExpression,InContentExpression,InPlaceCommand,JoinExpression,MapExpression,MultiAndExpression,ParenthesisExpression,ResolvableOperationExpression,StringExpression,ValueAssignmentExpression,VariableExpression,VarModelIdentifierExpression,VilTypeExpression
public abstract class Expression extends java.lang.ObjectAn expression used in the instantiation languages.- Author:
- Holger Eichelberger
-
-
Constructor Summary
Constructors Constructor Description Expression()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract java.lang.Objectaccept(IExpressionVisitor visitor)Visits the expression.abstract TypeDescriptor<?>inferType()Infers the type of this expression including the type of the contained sub-expressions.booleanreplaceEmptyLine()In content replacement, replace an entire line if this expression is evaluated to an empty string.
-
-
-
Method Detail
-
inferType
public abstract TypeDescriptor<?> inferType() throws VilException
Infers the type of this expression including the type of the contained sub-expressions.- Returns:
- the type of this expression
- Throws:
VilException- in case that inferring the type fails
-
accept
public abstract java.lang.Object accept(IExpressionVisitor visitor) throws VilException
Visits the expression.- Parameters:
visitor- the visitor- Returns:
- the result of visiting this expression (may be null)
- Throws:
VilException- in case that visiting fails (e.g., execution)
-
replaceEmptyLine
public boolean replaceEmptyLine()
In content replacement, replace an entire line if this expression is evaluated to an empty string.- Returns:
truefor replace entire line,false(default) else
-
-