# Package org.codehaus.groovy.grails.compiler.injection

##

- Interface Summary
  Interface | Description
  --- | ---
  ASTErrorsHelper | Enhances a class to contain an Errors property of type org.springframework.validation.Errors.
  AllArtefactClassInjector | Extended marker interface that indicates this ClassInjector applies to all types of artefacts.
  AnnotatedClassInjector | Injector applied to annotated (local transform) entities
  ClassInjector | When implemented allows additional properties to be injected into Grails classes at compile time (ie when they are loaded by the GroovyClassLoader).
  GrailsArtefactClassInjector | Interface specific to Grails artefacts that returns the artefact type.
  GrailsDomainClassInjector | Mainly just a marker interface for implementations that perform injection on domain classes.
  GroovyPageInjector | Extended marker interface that indicates this ClassInjector applies to GSPs.

- Class Summary
  Class | Description
  --- | ---
  ASTValidationErrorsHelper |
  AbstractArtefactTypeAstTransformation | Base implementation for the artefact type transformation.
  AbstractGrailsArtefactTransformer | Abstract transformer that takes an implementation class and creates methods in a target ClassNode that delegate to that implementation class.
  ApiDelegateTransformation | The logic for the ApiDelegate location transform.
  ArtefactTypeAstTransformation | A transformation used to apply transformers to classes not located in Grails directory structure.
  DefaultGrailsDomainClassInjector | Default implementation of domain class injector interface that adds the 'id' and 'version' properties and other previously boilerplate code.
  EntityASTTransformation | Injects the necessary fields and behaviors into a domain class in order to make it a property GORM entity.
  GrailsASTUtils | Helper methods for working with Groovy AST trees.
  GrailsAwareClassLoader | A class loader that is aware of Groovy sources and injection operations.
  GrailsAwareInjectionOperation | A Groovy compiler injection operation that uses a specified array of ClassInjector instances to attempt AST injection.
  MixinTransformation | The logic for the Mixin location transform.
  NamedArtefactTypeAstTransformation | An AST transform used to apply a named artefact type
  PluginAwareAstTransformer | Automatically annotates each class based on the plugin it originated from.

- Annotation Type Summary
  Annotation Type | Description
  --- | ---
  AstTransformer | Marker annotation that for classes that transform Grails classes at the AST level.