Package org.eclipse.epsilon.eol.dom
Class FeatureCallExpression
- java.lang.Object
-
- org.eclipse.epsilon.common.module.AbstractModuleElement
-
- org.eclipse.epsilon.eol.dom.AbstractExecutableModuleElement
-
- org.eclipse.epsilon.eol.dom.Expression
-
- org.eclipse.epsilon.eol.dom.FeatureCallExpression
-
- All Implemented Interfaces:
ModuleElement,ICompilableModuleElement,IExecutableModuleElement
- Direct Known Subclasses:
ComplexOperationCallExpression,FirstOrderOperationCallExpression,OperationCallExpression,PropertyCallExpression
public abstract class FeatureCallExpression extends Expression
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanarrowprotected NameExpressionnameExpressionThe feature name expression.protected booleansafeprotected ExpressiontargetExpression-
Fields inherited from class org.eclipse.epsilon.eol.dom.Expression
resolvedType
-
-
Constructor Summary
Constructors Constructor Description FeatureCallExpression()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbuild(AST cst, IModule module)protected AbstractOperationgetAbstractOperation(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context)java.lang.StringgetName()Convenience method forgetNameExpression().getName().NameExpressiongetNameExpression()protected AbstractOperationgetOperationFromContext(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context)ExpressiongetTargetExpression()booleanisArrow()booleanisNullSafe()voidsetNameExpression(NameExpression nameExpression)voidsetTargetExpression(Expression targetExpression)-
Methods inherited from class org.eclipse.epsilon.eol.dom.Expression
getResolvedType, hasResolvedType
-
Methods inherited from class org.eclipse.epsilon.common.module.AbstractModuleElement
equals, getChildren, getComments, getDebugInfo, getFile, getModule, getParent, getRegion, getUri, hashCode, setModule, setParent, setRegion, setUri, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.epsilon.eol.dom.ICompilableModuleElement
compile
-
Methods inherited from interface org.eclipse.epsilon.eol.dom.IExecutableModuleElement
execute
-
Methods inherited from interface org.eclipse.epsilon.common.module.ModuleElement
getChildren, getComments, getFile, getModule, getParent, getRegion, getUri, setModule, setParent, setRegion, setUri
-
-
-
-
Field Detail
-
arrow
protected boolean arrow
-
safe
protected boolean safe
-
targetExpression
protected Expression targetExpression
-
nameExpression
protected NameExpression nameExpression
The feature name expression.- Since:
- 1.6
-
-
Method Detail
-
build
public void build(AST cst, IModule module)
- Specified by:
buildin interfaceModuleElement- Overrides:
buildin classAbstractModuleElement
-
getAbstractOperation
protected AbstractOperation getAbstractOperation(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context) throws EolIllegalOperationException
- Throws:
EolIllegalOperationException
-
getOperationFromContext
protected AbstractOperation getOperationFromContext(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context) throws EolIllegalOperationException
- Parameters:
target-name- The requested operation nameowningModel-context- The context from which the EolOperationFactory is derived.- Returns:
- The operation
- Throws:
EolIllegalOperationException- Since:
- 1.6
-
getTargetExpression
public Expression getTargetExpression()
-
setTargetExpression
public void setTargetExpression(Expression targetExpression)
-
setNameExpression
public void setNameExpression(NameExpression nameExpression)
- Parameters:
nameExpression-- Since:
- 1.6
-
getNameExpression
public NameExpression getNameExpression()
- Returns:
- Since:
- 1.6
-
getName
public java.lang.String getName()
Convenience method forgetNameExpression().getName().- Returns:
- The name of the feature call, or
nullif absent. - Since:
- 1.6
-
isArrow
public boolean isArrow()
-
isNullSafe
public boolean isNullSafe()
- Returns:
- Since:
- 2.1
-
-