org.eclipse.internal.xtend.expression.ast
Class OperationCall

java.lang.Object
  extended by org.eclipse.internal.xtend.expression.ast.SyntaxElement
      extended by org.eclipse.internal.xtend.expression.ast.Expression
          extended by org.eclipse.internal.xtend.expression.ast.FeatureCall
              extended by org.eclipse.internal.xtend.expression.ast.OperationCall
All Implemented Interfaces:
ISyntaxElement, Analyzable, Evaluatable

public class OperationCall
extends FeatureCall

Author:
Sven Efftinge (http://www.efftinge.de), Arno Haase, Bernd Kolb, Karsten Thoms, Ed Merks - Bug#418156

Field Summary
 
Fields inherited from class org.eclipse.internal.xtend.expression.ast.SyntaxElement
end, line, start
 
Constructor Summary
OperationCall(Identifier name, Expression target, Expression... params)
           
 
Method Summary
 Type analyzeInternal(ExecutionContext ctx, java.util.Set<AnalysationIssue> issues)
          analyzes in the following order if (target==null) 1) enumeration literal 2) variable 3) implicite var (e.g.
 java.lang.Object evaluateInternal(ExecutionContext ctx)
          evaluates in the following order if (target==null) 1) enumeration literal 2) variable 3) implicit var (e.g.
 java.lang.String getNameString(ExecutionContext context)
           
 Expression[] getParams()
           
 java.util.List<Expression> getParamsAsList()
           
protected  java.lang.String toStringInternal()
           
 
Methods inherited from class org.eclipse.internal.xtend.expression.ast.FeatureCall
analyzeTarget, findType, getEnumLiteral, getName, getTarget, setTarget
 
Methods inherited from class org.eclipse.internal.xtend.expression.ast.Expression
analyze, evaluate, findType, toString
 
Methods inherited from class org.eclipse.internal.xtend.expression.ast.SyntaxElement
accept, getEnd, getFileName, getLine, getStart, setEnd, setFileName, setLine, setStart
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OperationCall

public OperationCall(Identifier name,
                     Expression target,
                     Expression... params)
Method Detail

getParams

public Expression[] getParams()

getParamsAsList

public java.util.List<Expression> getParamsAsList()

evaluateInternal

public java.lang.Object evaluateInternal(ExecutionContext ctx)
Description copied from class: FeatureCall
evaluates in the following order if (target==null) 1) enumeration literal 2) variable 3) implicit var (e.g. this) being everything but an empty list 4) type literal otherwise it's a property if the above doesn't match throw an error as long as target is no empty Collection

Overrides:
evaluateInternal in class FeatureCall

analyzeInternal

public Type analyzeInternal(ExecutionContext ctx,
                            java.util.Set<AnalysationIssue> issues)
Description copied from class: FeatureCall
analyzes in the following order if (target==null) 1) enumeration literal 2) variable 3) implicite var (e.g. this) 4) type literal otherwise it's a property

Overrides:
analyzeInternal in class FeatureCall

toStringInternal

protected java.lang.String toStringInternal()
Overrides:
toStringInternal in class FeatureCall

getNameString

public java.lang.String getNameString(ExecutionContext context)
Specified by:
getNameString in interface ISyntaxElement
Overrides:
getNameString in class FeatureCall