public class AstBuilderTransformation
extends MethodCallTransformation
Transformation to capture ASTBuilder from code statements.
The AstBuilder "from code" approach is used with a single Closure parameter. This transformation converts the ClosureExpression back into source code and rewrites the AST so that the "from string" builder is invoked on the source. In order for this to work, the closure source must be given a goto label. It is the "from string" approach's responsibility to remove the BlockStatement created by the label.
| Type Params | Return Type | Name and description |
|---|---|---|
|
protected GroovyCodeVisitor |
getTransformer(ASTNode[] nodes, SourceUnit sourceUnit)Creates the visitor that rewrites AstBuilder closure invocations into string-based
builder calls. |
| Methods inherited from class | Name |
|---|---|
class MethodCallTransformation |
getTransformer, visit |
Creates the visitor that rewrites AstBuilder closure invocations into string-based
builder calls.
nodes - the AST nodes being transformedsourceUnit - the source unit currently under compilation