org.eclipse.xtend.backend.expr
Class InvocationOnWhateverExpression

java.lang.Object
  extended by org.eclipse.xtend.backend.common.ExpressionBase
      extended by org.eclipse.xtend.backend.expr.InvocationOnWhateverExpression

public final class InvocationOnWhateverExpression
extends ExpressionBase

This expression invokes a function on the first argument, deciding at runtime whether to do the "collection magic" of invoking the function on every member of the collection that is the first argument and returning the collection of all the arguments.
This expression does *not* do implicit "this" resolution - it is the responsibility of the initializing code, e.g. in the middle end, to statically resolve that.

Author:
Arno Haase (http://www.haase-consulting.com), André Arnold

Field Summary
 
Fields inherited from class org.eclipse.xtend.backend.common.ExpressionBase
_log
 
Constructor Summary
InvocationOnWhateverExpression(QualifiedName functionName, java.util.List<? extends ExpressionBase> params, boolean nullIfFirstParamIsNull, SourcePos sourcePos)
           
 
Method Summary
protected  java.lang.Object evaluateInternal(ExecutionContext ctx)
           
 QualifiedName getFunctionName()
           
 java.util.List<? extends ExpressionBase> getParams()
           
 boolean isNullIfFirstParamIsNull()
           
 
Methods inherited from class org.eclipse.xtend.backend.common.ExpressionBase
evaluate, getListeners, getPos, registerExecutionListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InvocationOnWhateverExpression

public InvocationOnWhateverExpression(QualifiedName functionName,
                                      java.util.List<? extends ExpressionBase> params,
                                      boolean nullIfFirstParamIsNull,
                                      SourcePos sourcePos)
Method Detail

getFunctionName

public QualifiedName getFunctionName()

getParams

public java.util.List<? extends ExpressionBase> getParams()

isNullIfFirstParamIsNull

public boolean isNullIfFirstParamIsNull()

evaluateInternal

protected java.lang.Object evaluateInternal(ExecutionContext ctx)
Specified by:
evaluateInternal in class ExpressionBase