| Class | Description | 
|---|---|
| DefaultStrategy | This strategy is used with the  BuilderAST transform to create a builder helper class
 for the fluent creation of instances of a specified class. It can be used at the class,
 static method or constructor levels. | 
| ExternalStrategy | This strategy is used with the  BuilderAST transform to populate a builder helper class
 so that it can be used for the fluent creation of instances of a specified class. The specified class is not modified in any way and may be a Java class. | 
| InitializerStrategy | This strategy is used with the  BuilderAST transform to create a builder helper class
 for the fluent and type-safe creation of instances of a specified class. | 
| InitializerStrategy.SET | Internal phantom type used by the  InitializerStrategyto indicate that a property has been set. | 
| InitializerStrategy.UNSET | Internal phantom type used by the  InitializerStrategyto indicate that a property remains unset. | 
| SimpleStrategy | This strategy is used with the  BuilderAST transform to modify your Groovy objects so that the
 setter methods for properties return the original object, thus allowing chained usage of the setters. | 
| Annotation Type | Description | 
|---|---|
| Builder | The  @BuilderAST transformation is used to help write classes that can be created using fluent api calls.
 The transform supports multiple building strategies to cover a range of cases and there are a number
 of configuration options to customize the building process. |