Class ClosureHelper
java.lang.Object
com.blackbuild.klum.ast.runtime.internal.ClosureHelper
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T> groovy.lang.Closure<T>createClosureInstance(Class<? extends groovy.lang.Closure<T>> closureType) Instantiates a closure.static <T> Class<?>getFirstParameterType(Class<? extends groovy.lang.Closure<T>> closure) static <T> TinvokeClosure(Class<? extends groovy.lang.Closure<T>> closureType, Object... arguments) static <T> TinvokeClosureWithDelegate(groovy.lang.Closure<T> closure, Object delegate, Object... arguments) static <T> TinvokeClosureWithDelegate(Class<? extends groovy.lang.Closure<T>> closureType, Object delegate, Object... arguments) Instantiates the closure defined by the given typestatic <T> TinvokeClosureWithDelegateAsArgument(groovy.lang.Closure<T> closure, Object delegate) static <T> TinvokeClosureWithDelegateAsArgument(Class<? extends groovy.lang.Closure<T>> closureType, Object delegate) static booleanisClosureType(Object value)
-
Method Details
-
createClosureInstance
public static <T> groovy.lang.Closure<T> createClosureInstance(Class<? extends groovy.lang.Closure<T>> closureType) Instantiates a closure. While this method accepts any class as argument, any non closure will lead to an IllegalStateException.- Parameters:
closureType-- Returns:
-
invokeClosure
-
isClosureType
-
invokeClosureWithDelegate
public static <T> T invokeClosureWithDelegate(Class<? extends groovy.lang.Closure<T>> closureType, Object delegate, Object... arguments) Instantiates the closure defined by the given type- Type Parameters:
T-- Parameters:
closureType-delegate-arguments-- Returns:
-
invokeClosureWithDelegateAsArgument
-
invokeClosureWithDelegateAsArgument
public static <T> T invokeClosureWithDelegateAsArgument(groovy.lang.Closure<T> closure, Object delegate) -
invokeClosureWithDelegate
-
getFirstParameterType
-