Class DeferredResolvableOperationExpression
java.lang.Object
net.ssehub.easy.instantiation.core.model.expressions.Expression
de.uni_hildesheim.sse.vil.expressions.translation.DeferredResolvableOperationExpression
class DeferredResolvableOperationExpression
extends net.ssehub.easy.instantiation.core.model.expressions.Expression
Defines a deferrable resolvable operation expression, i.e., a currently unresolved "function pointer".
This is needed, as all functions and operations are only known at the end of the translation process, while
the initialization expressions of global variables are (currently) resolved before.
- Author:
- Holger Eichelberger
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDeferredResolvableOperationExpression(org.eclipse.emf.ecore.EObject cause, net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> varType, net.ssehub.easy.instantiation.core.model.expressions.Expression init) Creates a resolvable operation expression. -
Method Summary
Modifier and TypeMethodDescriptionaccept(net.ssehub.easy.instantiation.core.model.expressions.IExpressionVisitor visitor) (package private) org.eclipse.emf.ecore.EObjectgetCause()Returns the ECore cause.(package private) net.ssehub.easy.instantiation.core.model.expressions.ExpressiongetInit()Returns the initialization expression.(package private) net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> Returns the variable type.net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> Methods inherited from class net.ssehub.easy.instantiation.core.model.expressions.Expression
getFormattingHint, replaceEmptyLine
-
Field Details
-
cause
private transient org.eclipse.emf.ecore.EObject cause -
varType
private transient net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> varType -
init
private transient net.ssehub.easy.instantiation.core.model.expressions.Expression init
-
-
Constructor Details
-
DeferredResolvableOperationExpression
DeferredResolvableOperationExpression(org.eclipse.emf.ecore.EObject cause, net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> varType, net.ssehub.easy.instantiation.core.model.expressions.Expression init) Creates a resolvable operation expression.- Parameters:
cause- the Ecore instance causing this expressionvarType- the actual variable typeinit- the initialization expression
-
-
Method Details
-
inferType
public net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> inferType() throws net.ssehub.easy.instantiation.core.model.common.VilException- Specified by:
inferTypein classnet.ssehub.easy.instantiation.core.model.expressions.Expression- Throws:
net.ssehub.easy.instantiation.core.model.common.VilException
-
accept
public Object accept(net.ssehub.easy.instantiation.core.model.expressions.IExpressionVisitor visitor) throws net.ssehub.easy.instantiation.core.model.common.VilException - Specified by:
acceptin classnet.ssehub.easy.instantiation.core.model.expressions.Expression- Throws:
net.ssehub.easy.instantiation.core.model.common.VilException
-
getCause
org.eclipse.emf.ecore.EObject getCause()Returns the ECore cause.- Returns:
- the cause
-
getVarType
net.ssehub.easy.instantiation.core.model.vilTypes.TypeDescriptor<?> getVarType()Returns the variable type.- Returns:
- the variable type
-
getInit
net.ssehub.easy.instantiation.core.model.expressions.Expression getInit()Returns the initialization expression.- Returns:
- the initialization expression
-