org.eclipse.xtend.backend.lib
Class AbstractClosure

java.lang.Object
  extended by org.eclipse.xtend.backend.functions.AbstractFunction
      extended by org.eclipse.xtend.backend.lib.AbstractClosure
All Implemented Interfaces:
Function

public abstract class AbstractClosure
extends AbstractFunction

Author:
André Arnold - Initial contribution and API

Field Summary
 
Fields inherited from class org.eclipse.xtend.backend.functions.AbstractFunction
_returnType
 
Constructor Summary
AbstractClosure(LocalVarContext lvcAtDefinitionTime, FunctionDefContext fdcAtDefinitionTime, java.util.List<java.lang.String> paramNames, java.util.List<? extends BackendType> paramTypes)
           
 
Method Summary
protected abstract  java.lang.Object apply(ExecutionContext ctx)
           
 FunctionDefContext getFunctionDefContext()
           
 BackendType getReturnType()
           
 java.lang.Object invoke(ExecutionContext ctx, java.lang.Object[] params)
          this method is permitted to modify the param array that is passed in
 void setFunctionDefContext(FunctionDefContext fdc)
           
 
Methods inherited from class org.eclipse.xtend.backend.functions.AbstractFunction
getGuard, getParameterTypes, isCached
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractClosure

public AbstractClosure(LocalVarContext lvcAtDefinitionTime,
                       FunctionDefContext fdcAtDefinitionTime,
                       java.util.List<java.lang.String> paramNames,
                       java.util.List<? extends BackendType> paramTypes)
Method Detail

invoke

public java.lang.Object invoke(ExecutionContext ctx,
                               java.lang.Object[] params)
Description copied from interface: Function
this method is permitted to modify the param array that is passed in


apply

protected abstract java.lang.Object apply(ExecutionContext ctx)

setFunctionDefContext

public void setFunctionDefContext(FunctionDefContext fdc)
Specified by:
setFunctionDefContext in interface Function
Overrides:
setFunctionDefContext in class AbstractFunction

getFunctionDefContext

public FunctionDefContext getFunctionDefContext()
Specified by:
getFunctionDefContext in interface Function
Overrides:
getFunctionDefContext in class AbstractFunction

getReturnType

public BackendType getReturnType()
Specified by:
getReturnType in interface Function
Overrides:
getReturnType in class AbstractFunction