Represents the entire contents of a compilation step which consists of one or more ModuleNode instances. There's one instance of this that's shared by all modules and classes compiled during a single invocation of the compiler.
It's attached to MethodNodes and ClassNodes and is used to find fully qualified names of classes, resolve imports, and that sort of thing.
Constructor and description |
---|
CompileUnit
(GroovyClassLoader classLoader, CompilerConfiguration config) |
CompileUnit
(GroovyClassLoader classLoader, CodeSource codeSource, CompilerConfiguration config) |
Type Params | Return Type | Name and description |
---|---|---|
|
void |
addClass(ClassNode node) Adds a class to the unit. |
|
void |
addClassNodeToCompile(ClassNode node, SourceUnit location) this method actually does not compile a class. |
|
void |
addGeneratedInnerClass(InnerClassNode icn) |
|
void |
addModule(ModuleNode node) |
|
ClassNode |
getClass(String name) @return the ClassNode for the given qualified name or returns null if the name does not exist in the current compilation unit (ignoring the .class files on the classpath) |
|
GroovyClassLoader |
getClassLoader() |
|
List |
getClasses() @return a list of all the classes in each module in the compilation unit |
|
CodeSource |
getCodeSource() |
|
CompilerConfiguration |
getConfig() |
|
InnerClassNode |
getGeneratedInnerClass(String name) |
|
Map<String, InnerClassNode> |
getGeneratedInnerClasses() |
|
List<ModuleNode> |
getModules() |
|
SourceUnit |
getScriptSourceLocation(String className) |
|
boolean |
hasClassNodeToCompile() |
|
Iterator<String> |
iterateClassNodeToCompile() |
Adds a class to the unit.
this method actually does not compile a class. It's only a marker that this type has to be compiled by the CompilationUnit at the end of a parse step no node should be be left.
Copyright © 2003-2019 The Apache Software Foundation. All rights reserved.