|
Groovy Documentation | |||||||
FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.codenarc.util.AstUtil
@SuppressWarnings(['DuplicateLiteral', 'MethodCount']) class AstUtil
Contains static utility methods related to Groovy AST.
This is an internal class and its API is subject to change.Method Summary | |
---|---|
static boolean
|
classNodeImplementsType(org.codehaus.groovy.ast.ClassNode node, Class target)
This method tells you if a ClassNode implements or extends a certain class. |
static org.codehaus.groovy.ast.AnnotationNode
|
getAnnotation(org.codehaus.groovy.ast.AnnotatedNode node, String name)
Return the AnnotationNode for the named annotation, or else null. |
static List
|
getArgumentNames(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall)
Gets the argument names of a method call. |
static org.codehaus.groovy.ast.ASTNode
|
getEmptyBlock(org.codehaus.groovy.ast.stmt.Statement origStatement)
|
static Class
|
getFieldType(org.codehaus.groovy.ast.ClassNode node, String fieldName)
Supports discovering many common JDK types, but not all. |
static Class
|
getFieldType(org.codehaus.groovy.ast.FieldNode field)
Supports discovering many common JDK types, but not all. |
static String
|
getInstanceOfTarget(def expression)
|
static List
|
getMethodArguments(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall)
Return the List of Arguments for the specified MethodCallExpression. |
static String
|
getNullComparisonTarget(def expression)
|
static List
|
getParameterNames(org.codehaus.groovy.ast.MethodNode node)
Gets the parameter names of a method node. |
static List
|
getVariableExpressions(org.codehaus.groovy.ast.expr.DeclarationExpression declarationExpression)
Return the List of VariableExpression objects referenced by the specified DeclarationExpression. |
static boolean
|
isBinaryExpressionType(org.codehaus.groovy.ast.expr.Expression expression, String token)
Returns true if the expression is a binary expression with the specified token. |
static boolean
|
isBlock(org.codehaus.groovy.ast.stmt.Statement statement)
Return true if the Statement is a block |
static boolean
|
isBoolean(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if the expression is either the true or false literal. |
static boolean
|
isClosureDeclaration(org.codehaus.groovy.ast.ASTNode expression)
Returns true if the ASTNode is a declaration of a closure, either as a declaration or a field. |
static boolean
|
isConstant(org.codehaus.groovy.ast.expr.Expression expression, int expected)
Tells you if an expression is the constant integer. |
static boolean
|
isConstantOrLiteral(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if an expression is a constant or literal. |
static boolean
|
isEmptyBlock(org.codehaus.groovy.ast.stmt.Statement origStatement)
Return true if the Statement is a block and it is empty (contains no "meaningful" statements). |
static boolean
|
isFalse(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if the expression is the false expression, either literal or contant. |
static boolean
|
isFinalVariable(org.codehaus.groovy.ast.expr.DeclarationExpression declarationExpression, SourceCode sourceCode)
Return true if the DeclarationExpression represents a 'final' variable declaration. |
static boolean
|
isFromGeneratedSourceCode(org.codehaus.groovy.ast.ASTNode node)
@return true if the ASTNode was generated (synthetic) rather than from the "real" input source code. |
static boolean
|
isInstanceOfCheck(def expression)
|
static boolean
|
isMethodCall(org.codehaus.groovy.ast.stmt.Statement stmt, String methodObject, String methodName, int numArguments)
Return true only if the Statement represents a method call for the specified method object (receiver), method name, and with the specified number of arguments. |
static boolean
|
isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodObject, String methodPattern, int numArguments)
Return true only if the MethodCallExpression represents a method call for the specified method object (receiver), method name, and with the specified number of arguments. |
static boolean
|
isMethodCall(org.codehaus.groovy.ast.expr.Expression expression, String methodObject, String methodName, int numArguments)
Return true only if the expression is a MethodCallExpression representing a method call for the specified method object (receiver), method name, and with the specified number of arguments. |
static boolean
|
isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodObjectPattern, String methodNamePattern)
Return true only if the MethodCallExpression represents a method call for the specified method object (receiver) and method name. |
static boolean
|
isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, List methodObjects, List methodNames, def numArguments = null)
Return true only if the MethodCallExpression represents a method call for any one of the specified method objects (receivers) and any one of the method names. |
static boolean
|
isMethodCall(org.codehaus.groovy.ast.expr.Expression expression, String methodName, int numArguments)
Tells you if the expression is a method call for a certain method name with a certain number of arguments. |
static boolean
|
isMethodCallOnObject(org.codehaus.groovy.ast.expr.Expression expression, String methodObjectPattern)
Tells you if the expression is a method call on a particual object (which is represented as a String). |
static boolean
|
isMethodNamed(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodNamePattern, Integer numArguments = null)
Return true only if the MethodCallExpression represents a method call for the specified method name |
static boolean
|
isMethodNode(org.codehaus.groovy.ast.ASTNode node, String methodName, Integer numArguments = null, Class returnType = null)
Tells you if the ASTNode is a method node for the given name, arity, and return type. |
static boolean
|
isNotNullCheck(def expression)
|
static boolean
|
isNull(org.codehaus.groovy.ast.ASTNode expression)
Tells you if the expression is the null literal. |
static boolean
|
isPublic(org.codehaus.groovy.ast.ASTNode node)
Tells you if the ASTNode has a public modifier on it. |
static boolean
|
isSafe(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if the expression is a null safe dereference. |
static boolean
|
isSpreadSafe(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if the expression is a spread operator call |
static boolean
|
isTrue(org.codehaus.groovy.ast.expr.Expression expression)
Tells you if the expression is true, which can be true or Boolean.TRUE. |
static boolean
|
isVariable(org.codehaus.groovy.ast.ASTNode expression, String name)
Tells you if the given ASTNode is a VariableExpression with the given name. |
static boolean
|
respondsTo(Object object, String methodName)
Return true only if the specified object responds to the named method |
Methods inherited from class Object | |
---|---|
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll |
Method Detail |
---|
static boolean classNodeImplementsType(org.codehaus.groovy.ast.ClassNode node, Class target)
node
- the nodetarget
- the class
static org.codehaus.groovy.ast.AnnotationNode getAnnotation(org.codehaus.groovy.ast.AnnotatedNode node, String name)
node
- - the AnnotatedNodename
- - the name of the annotation
static List getArgumentNames(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall)
methodCall
- the method call to search
static org.codehaus.groovy.ast.ASTNode getEmptyBlock(org.codehaus.groovy.ast.stmt.Statement origStatement)
static Class getFieldType(org.codehaus.groovy.ast.ClassNode node, String fieldName)
static Class getFieldType(org.codehaus.groovy.ast.FieldNode field)
static String getInstanceOfTarget(def expression)
static List getMethodArguments(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall)
methodCall
- - the AST MethodCallExpression
static String getNullComparisonTarget(def expression)
static List getParameterNames(org.codehaus.groovy.ast.MethodNode node)
node
- the node to search parameter names on
static List getVariableExpressions(org.codehaus.groovy.ast.expr.DeclarationExpression declarationExpression)
declarationExpression
- - the DeclarationExpression
static boolean isBinaryExpressionType(org.codehaus.groovy.ast.expr.Expression expression, String token)
expression
- expressiontoken
- token
static boolean isBlock(org.codehaus.groovy.ast.stmt.Statement statement)
statement
- - the Statement to check
static boolean isBoolean(org.codehaus.groovy.ast.expr.Expression expression)
expression
- expression
static boolean isClosureDeclaration(org.codehaus.groovy.ast.ASTNode expression)
expression
- the target expression
static boolean isConstant(org.codehaus.groovy.ast.expr.Expression expression, int expected)
expression
- any expressionexpected
- the expected int
static boolean isConstantOrLiteral(org.codehaus.groovy.ast.expr.Expression expression)
expression
- any expression
static boolean isEmptyBlock(org.codehaus.groovy.ast.stmt.Statement origStatement)
statement
- - the Statement to check
static boolean isFalse(org.codehaus.groovy.ast.expr.Expression expression)
expression
- expression
static boolean isFinalVariable(org.codehaus.groovy.ast.expr.DeclarationExpression declarationExpression, SourceCode sourceCode)
static boolean isFromGeneratedSourceCode(org.codehaus.groovy.ast.ASTNode node)
static boolean isInstanceOfCheck(def expression)
static boolean isMethodCall(org.codehaus.groovy.ast.stmt.Statement stmt, String methodObject, String methodName, int numArguments)
stmt
- - the AST StatementmethodObject
- - the name of the method object (receiver)methodName
- - the name of the method being callednumArguments
- - the number of arguments passed into the method
static boolean isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodObject, String methodPattern, int numArguments)
methodCall
- - the AST MethodCallExpressionmethodObject
- - the name of the method object (receiver)methodPattern
- - the name of the method being callednumArguments
- - the number of arguments passed into the method
static boolean isMethodCall(org.codehaus.groovy.ast.expr.Expression expression, String methodObject, String methodName, int numArguments)
expression
- - the AST expressionmethodObject
- - the name of the method object (receiver)methodName
- - the name of the method being callednumArguments
- - the number of arguments passed into the method
static boolean isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodObjectPattern, String methodNamePattern)
methodCall
- - the AST MethodCallExpressionmethodObjectPattern
- - the name of the method object (receiver)methodNamePattern
- - the name of the method being called
static boolean isMethodCall(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, List methodObjects, List methodNames, def numArguments = null)
methodCall
- the method call objectmethodObjects
- a list of receivers, such as ['this', 'super']methodNames
- a list of method namesnumArguments
- optionally, require a certain number of arguments
static boolean isMethodCall(org.codehaus.groovy.ast.expr.Expression expression, String methodName, int numArguments)
expression
- the (potentially) method callmethodName
- the name of the method expectednumArguments
- number of expected arguments
static boolean isMethodCallOnObject(org.codehaus.groovy.ast.expr.Expression expression, String methodObjectPattern)
expression
- the expressionmethodObjectPattern
- - the name of the method object (receiver) such as 'this'
static boolean isMethodNamed(org.codehaus.groovy.ast.expr.MethodCallExpression methodCall, String methodNamePattern, Integer numArguments = null)
methodCall
- - the AST MethodCallExpressionmethodNamePattern
- - the expected name of the method being called
static boolean isMethodNode(org.codehaus.groovy.ast.ASTNode node, String methodName, Integer numArguments = null, Class returnType = null)
node
- the node to inspectmethodName
- the expected name of the methodnumArguments
- the expected number of arguments, optionalreturnType
- the expected return type, optional
static boolean isNotNullCheck(def expression)
static boolean isNull(org.codehaus.groovy.ast.ASTNode expression)
expression
- expression.
static boolean isPublic(org.codehaus.groovy.ast.ASTNode node)
node
- node to query
static boolean isSafe(org.codehaus.groovy.ast.expr.Expression expression)
expression
- expression
static boolean isSpreadSafe(org.codehaus.groovy.ast.expr.Expression expression)
expression
- expression
static boolean isTrue(org.codehaus.groovy.ast.expr.Expression expression)
expression
- expression
static boolean isVariable(org.codehaus.groovy.ast.ASTNode expression, String name)
expression
- any AST Nodename
- a string name
static boolean respondsTo(Object object, String methodName)
object
- - the object to checkmethodName
- - the name of the method
Groovy Documentation