Package org.codehaus.groovy.ast.tools
Class ClosureUtils
- java.lang.Object
-
- org.codehaus.groovy.ast.tools.ClosureUtils
-
public class ClosureUtils extends Object
Handy methods when working with Closure AST data structures.
-
-
Constructor Summary
Constructors Constructor Description ClosureUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static String
convertClosureToSource(ReaderSource readerSource, ClosureExpression expression)
Converts a ClosureExpression into the String source.static Parameter[]
getParametersSafe(ClosureExpression ce)
static String
getResolveStrategyName(int resolveStrategy)
Returns the constant name associated with the given resolve strategy.static boolean
hasImplicitParameter(ClosureExpression ce)
static boolean
hasSingleCharacterArg(Closure c)
Does the Closure have a single char-like (char or Character) argument.static boolean
hasSingleStringArg(Closure c)
Does the Closure have a single String argument.
-
-
-
Method Detail
-
convertClosureToSource
public static String convertClosureToSource(ReaderSource readerSource, ClosureExpression expression) throws Exception
Converts a ClosureExpression into the String source.- Parameters:
readerSource
- a sourceexpression
- a closure. Can't be null- Returns:
- the source the closure was created from
- Throws:
IllegalArgumentException
- when expression is nullException
- when closure can't be read from source
-
hasSingleCharacterArg
public static boolean hasSingleCharacterArg(Closure c)
Does the Closure have a single char-like (char or Character) argument.- Parameters:
c
- a Closure- Returns:
- true if it has exactly one argument and the type is char or Character
-
hasSingleStringArg
public static boolean hasSingleStringArg(Closure c)
Does the Closure have a single String argument.- Parameters:
c
- a Closure- Returns:
- true if it has exactly one argument and the type is String
-
hasImplicitParameter
public static boolean hasImplicitParameter(ClosureExpression ce)
- Returns:
- true if the ClosureExpression has an implicit 'it' parameter
-
getParametersSafe
public static Parameter[] getParametersSafe(ClosureExpression ce)
- Returns:
- the parameters for the ClosureExpression
-
getResolveStrategyName
public static String getResolveStrategyName(int resolveStrategy)
Returns the constant name associated with the given resolve strategy.- Since:
- 3.0.5
-
-