Package groovy.lang
Class GroovyClassLoader.ClassCollector
java.lang.Object
groovy.lang.GroovyClassLoader.ClassCollector
- All Implemented Interfaces:
CompilationUnit.ClassgenCallback
- Enclosing class:
- GroovyClassLoader
public static class GroovyClassLoader.ClassCollector
extends Object
implements CompilationUnit.ClassgenCallback
Collects classes defined during a compilation unit callback.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedClassCollector(GroovyClassLoader.InnerLoader cl, CompilationUnit unit, SourceUnit su) Creates a class collector for the supplied compilation state. -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected ClasscreateClass(byte[] code, ClassNode classNode) Defines a generated class from bytecode produced for a class node.Returns the loader used to define generated classes.Returns the classes defined during the current compilation callback.protected ClassonClassNode(org.objectweb.asm.ClassWriter classWriter, ClassNode classNode) Converts the generated class writer output into a defined class.
-
Constructor Details
-
ClassCollector
Creates a class collector for the supplied compilation state.- Parameters:
cl- the defining loader used for generated classesunit- the compilation unit producing classessu- the primary source unit for the compilation round
-
-
Method Details
-
getDefiningClassLoader
Returns the loader used to define generated classes.- Returns:
- the defining class loader
-
createClass
Defines a generated class from bytecode produced for a class node.- Parameters:
code- the generated bytecodeclassNode- the corresponding class node- Returns:
- the defined class
-
onClassNode
Converts the generated class writer output into a defined class.- Parameters:
classWriter- the ASM writer containing generated bytecodeclassNode- the corresponding class node- Returns:
- the defined class
-
call
- Specified by:
callin interfaceCompilationUnit.ClassgenCallback
-
getLoadedClasses
Returns the classes defined during the current compilation callback.- Returns:
- the generated classes in definition order
-