GRAILS-9999 - supply type information to help @CompileStatic
Replace generic type parameters in static method arguments
GrailsASTUtils refactoring: rename parameter
GrailsASTUtils refactoring: remove duplicate method existence check in addDelegateStaticMethod
- classNode.hasDeclaredMethod already checks it
Refactor AbstractGrailsArtefactTransformer: extract shouldSkipInjection method
Refactor AbstractGrailsArtefactTransformer: extract performInstance/StaticImplementationInjection methods
AbstractGrailsArtefactTransformer: add type information to VariableExpression
AbstractGrailsArtefactTransformer: hold current instance of api implementation in static field
- implemented in addApiLookupFieldAndSetter
Fix test: Subclasses must be now mocked separately because metaclass isn't used for holding current implementation of api instance
Add @CompileStatic annotation for generated delegate methods
AbstractGrailsArtefactTransformer: make direct call to lookup method
GrailsASTUtils: add "noNullCheck" parameter to addDelegate*Method methods
- don't add null check to delegate methods generated by AGAT
Don't add validation methods to domain classes by default in DomainClassGrailsPlugin
- this is only required by old style tests that don't call mockDomain (subclasses of AbstractGrailsControllerTests in grails-test-suite-base)
Use @CompileStatic for delegate methods