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
,IExecutableModuleElement
- Direct Known Subclasses:
ComplexOperationCallExpression
,FirstOrderOperationCallExpression
,OperationCallExpression
,PropertyCallExpression
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected boolean
protected NameExpression
The feature name expression.protected boolean
protected Expression
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract void
accept
(IEolVisitor visitor) void
protected AbstractOperation
getAbstractOperation
(Object target, String name, IModel owningModel, IEolContext context) getName()
Convenience method forgetNameExpression().getName()
.protected AbstractOperation
getOperationFromContext
(Object target, String name, IModel owningModel, IEolContext context) Looks for the operation in the EolContext EolOperationFactory.boolean
isArrow()
boolean
void
setNameExpression
(NameExpression nameExpression) void
setTargetExpression
(Expression targetExpression) Methods inherited from class org.eclipse.epsilon.common.module.AbstractModuleElement
equals, getChildren, getComments, getData, 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.IExecutableModuleElement
execute
Methods inherited from interface org.eclipse.epsilon.common.module.ModuleElement
getChildren, getComments, getData, getFile, getModule, getParent, getRegion, getUri, setModule, setParent, setRegion, setUri
-
Field Details
-
arrow
protected boolean arrow -
safe
protected boolean safe -
targetExpression
-
nameExpression
The feature name expression.- Since:
- 1.6
-
-
Constructor Details
-
FeatureCallExpression
public FeatureCallExpression()
-
-
Method Details
-
build
- Specified by:
build
in interfaceModuleElement
- Overrides:
build
in classAbstractModuleElement
-
getAbstractOperation
protected AbstractOperation getAbstractOperation(Object target, String name, IModel owningModel, IEolContext context) throws EolIllegalOperationException - Throws:
EolIllegalOperationException
-
getOperationFromContext
protected AbstractOperation getOperationFromContext(Object target, String name, IModel owningModel, IEolContext context) throws EolIllegalOperationException Looks for the operation in the EolContext EolOperationFactory.- Parameters:
target
- The object this feature is called on.name
- The requested operation name.owningModel
- The model (optional).context
- The context from which the EolOperationFactory is derived.- Returns:
- The operation.
- Throws:
EolIllegalOperationException
- Since:
- 1.6
-
getTargetExpression
-
setTargetExpression
-
setNameExpression
- Parameters:
nameExpression
-- Since:
- 1.6
-
getNameExpression
- Returns:
- Since:
- 1.6
-
getName
Convenience method forgetNameExpression().getName()
.- Returns:
- The name of the feature call, or
null
if absent. - Since:
- 1.6
-
isArrow
public boolean isArrow() -
isNullSafe
public boolean isNullSafe()- Returns:
- Since:
- 2.1
-
accept
- Specified by:
accept
in classExpression
-