## org.codehaus.groovy.ast
Class CompileUnit

Field Summary
`GroovyClassLoader` | `classLoader`
`Map` | `classNameToSource`
`Map` | `classes`
`Map` | `classesToCompile`
`CodeSource` | `codeSource`
`CompilerConfiguration` | `config`
`List` | `modules`

Constructor Summary
`CompileUnit(GroovyClassLoader classLoader, CompilerConfiguration config)`
`CompileUnit(GroovyClassLoader classLoader, CodeSource codeSource, CompilerConfiguration config)`

Method Summary
`void` | `addClass(ClassNode node)` Adds a class to the unit.
`void` | `addClassNodeToCompile(ClassNode node, SourceUnit location)` this emthod actually does not compile a class.
`void` | `addClasses(List classList)` Appends all of the fully qualified class names in this module into the given map
`void` | `addModule(ModuleNode node)`
`ClassNode` | `getClass(String name)` the name does not exist in the current compilation unit (ignoring the .class files on the classpath)
`GroovyClassLoader` | `getClassLoader()`
`List` | `getClasses()`
`CodeSource` | `getCodeSource()`
`CompilerConfiguration` | `getConfig()`
`List` | `getModules()`
`SourceUnit` | `getScriptSourceLocation(String className)`
`boolean` | `hasClassNodeToCompile()`
`Iterator` | `iterateClassNodeToCompile()`

Constructor Detail

### CompileUnit

    public CompileUnit(GroovyClassLoader classLoader, CompilerConfiguration config)

### CompileUnit

    public CompileUnit(GroovyClassLoader classLoader, CodeSource codeSource, CompilerConfiguration config)

Method Detail

### addClass

    public void addClass(ClassNode node)

  Adds a class to the unit.

### addClassNodeToCompile

    public void addClassNodeToCompile(ClassNode node, SourceUnit location)

  this emthod 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.

### addClasses

    public void addClasses(List classList)

  Appends all of the fully qualified class names in this module into the given map

### addModule

    public void addModule(ModuleNode node)

### getClass

    public 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)

### getClassLoader

    public GroovyClassLoader getClassLoader()

### getClasses

    public List getClasses()

  return:
    a list of all the classes in each module in the compilation unit

### getCodeSource

    public CodeSource getCodeSource()

### getConfig

    public CompilerConfiguration getConfig()

### getModules

    public List getModules()

### getScriptSourceLocation

    public SourceUnit getScriptSourceLocation(String className)

### hasClassNodeToCompile

    public boolean hasClassNodeToCompile()

### iterateClassNodeToCompile

    public Iterator iterateClassNodeToCompile()