# Package org.codehaus.groovy.ast

Groovy AST nodes for the syntax of the language

See: Description

Interface Summary
GroovyClassVisitor: A special visitor for working with the structure of a class.
GroovyCodeVisitor: An implementation of the visitor pattern for working with ASTNodes
Variable: interface to mark a AstNode as Variable.

Class Summary
AnnotatedNode: Base class for any AST node which is capable of being annotated
AnnotationNode: Represents an annotation which can be attached to interfaces, classes, methods and fields.
ASTNode: Base class for any AST node.
AstToTextHelper: Helper class for converting AST into text.
ClassCodeExpressionTransformer: Visitor to transform expressions in a whole class.
ClassCodeVisitorSupport
ClassHelper: This class is a Helper for ClassNode and classes handling ClassNodes.
ClassNode: Represents a class in the AST.
CodeVisitorSupport: Abstract base class for any GroovyCodeVisitor which by default just walks the code and expression tree
CompileUnit: Represents the entire contents of a compilation step which consists of one or more `ModuleNode` instances.
ConstructorNode: Represents a constructor declaration
DynamicVariable
EnumConstantClassNode: Represents the anonymous inner class for an enum constant This subtype is needed so that EnumVisitor can differentiate between the scenarios when a InnerClassNode represents anonymous inner class for an enu constant and when it represents an enum class defined inside another class
FieldNode: Represents a field (member variable)
GenericsType: This class is used to describe generic type signatures for ClassNodes.
ImportNode: Represents an import statement of a single class
InnerClassNode: Represents an inner class declaration
InterfaceHelperClassNode: Represents an inner class defined as helper for an interface
MethodNode: Represents a method declaration
MixinASTTransformation: Deprecated static mixins have been deprecated in favour of traits (trait keyword).
MixinNode: Represents a mixin which can be applied to any ClassNode to implement mixins
ModuleNode: Represents a module, which consists typically of a class declaration but could include some imports, some statements and multiple classes intermixed with statements like scripts in Python or Ruby
PackageNode: Represents a package in the AST.
Parameter: Represents a parameter on a constructor or method call.
PropertyNode: Represents a property (member variable, a getter and setter)
VariableScope: Represents a variable scope.

## Package org.codehaus.groovy.ast Description

Groovy AST nodes for the syntax of the language