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 boolean
arrow
protected NameExpression
nameExpression
The feature name expression.protected boolean
safe
protected Expression
targetExpression
-
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 void
build(AST cst, IModule module)
protected AbstractOperation
getAbstractOperation(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context)
java.lang.String
getName()
Convenience method forgetNameExpression().getName()
.NameExpression
getNameExpression()
protected AbstractOperation
getOperationFromContext(java.lang.Object target, java.lang.String name, IModel owningModel, IEolContext context)
Expression
getTargetExpression()
boolean
isArrow()
boolean
isNullSafe()
void
setNameExpression(NameExpression nameExpression)
void
setTargetExpression(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:
build
in interfaceModuleElement
- Overrides:
build
in 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
null
if absent. - Since:
- 1.6
-
isArrow
public boolean isArrow()
-
isNullSafe
public boolean isNullSafe()
- Returns:
- Since:
- 2.1
-
-