Class ClosureHelper

java.lang.Object
com.blackbuild.klum.ast.runtime.internal.ClosureHelper

public class ClosureHelper extends Object
  • 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

      public static <T> T invokeClosure(Class<? extends groovy.lang.Closure<T>> closureType, Object... arguments)
    • isClosureType

      public static boolean isClosureType(Object value)
    • 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

      public static <T> T invokeClosureWithDelegateAsArgument(Class<? extends groovy.lang.Closure<T>> closureType, Object delegate)
    • invokeClosureWithDelegateAsArgument

      public static <T> T invokeClosureWithDelegateAsArgument(groovy.lang.Closure<T> closure, Object delegate)
    • invokeClosureWithDelegate

      public static <T> T invokeClosureWithDelegate(groovy.lang.Closure<T> closure, Object delegate, Object... arguments)
    • getFirstParameterType

      public static <T> Class<?> getFirstParameterType(Class<? extends groovy.lang.Closure<T>> closure)