de.dhbwstuttgart.core

## Interface MyCompilerAPI

All Known Implementing Classes:
  MyCompiler

    public interface MyCompilerAPI

Schnittstellen-Klasse zum Compiler. Diese Klasse soll der IDE als Compiler-API zum Kompilieren einer Quellcode-Datei dienen und stellt somit die Schnittstelle zur Studienarbeit von Markus Melzer (Eclipse-Plugin) dar.

Version:
  $Date: 2013/09/09 11:04:24 $
Author:
  JÃ¶rg BÃ¤uerle

### Method Summary

All Methods Instance Methods Abstract Methods
`java.lang.String` `getOutputDir()` Author: Juergen Schmiing Gibt das Ausgabeverzeichnis fuer die class-Files zurueck.
`void` `init()` Author: JÃ¶rg BÃ¤uerle Initialisiert den Compiler
`SourceFile` `parse(java.io.File file)` Author: JÃ¶rg BÃ¤uerle Parst eine Quellcodedatei und baut den abstrakten Syntaxbaum auf.
`void` `parse(Menge<java.lang.String> filenames)` Parst zusammenhÃ¤ngende JavaKlassen in verschiedenen Dateien.
`SourceFile` `parse(java.lang.String sourceCode)` Parst den SourceCode einer Datei.
`void` `setOutputDir(java.lang.String dir)` Author: Juergen Schmiing Legt das Ausgabeverzeichnis fuer die class-Files fest.
`Menge<TypeinferenceResultSet>` `typeReconstruction()` Author: JÃ¶rg BÃ¤uerle Ruft den Typrekonstruktionsalgorithmus auf.

### Method Detail

#### init

    void init()

Author: JÃ¶rg BÃ¤uerle
Initialisiert den Compiler

#### parse

    SourceFile parse(java.io.File file)
              throws java.io.FileNotFoundException,
                     java.io.IOException,
                     JavaParser.yyException

Author: JÃ¶rg BÃ¤uerle
Parst eine Quellcodedatei und baut den abstrakten Syntaxbaum auf.

Parameters:
  `file` - Die Quellcode-Datei
Throws:
  `java.io.FileNotFoundException` - Wenn die Quellcode-Datei nicht existiert.
  `java.io.IOException` - Wenn was schief lÃ¤uft.
  `JavaParser.yyException` - Wenn ein Fehler beim Parsen auftritt.

#### typeReconstruction

    Menge<TypeinferenceResultSet> typeReconstruction()
                                              throws java.lang.NullPointerException,
                                                     TypeinferenceException

Author: JÃ¶rg BÃ¤uerle
Ruft den Typrekonstruktionsalgorithmus auf.

Returns:
  Die Menge aller mÃ¶glichen Typkombinationen
Throws:
  `java.lang.NullPointerException` - Wenn noch kein abstrakter Syntaxbaum vorhanden ist. @throws CTypeReconstructionException Wenn ein Fehler bei der Typrekonstruktion auftritt.
  `TypeinferenceException`

#### setOutputDir

    void setOutputDir(java.lang.String dir)

Author: Juergen Schmiing
Legt das Ausgabeverzeichnis fuer die class-Files fest.

#### getOutputDir

    java.lang.String getOutputDir()

Author: Juergen Schmiing
Gibt das Ausgabeverzeichnis fuer die class-Files zurueck.

#### parse

    void parse(Menge<java.lang.String> filenames)
        throws ParserError

Parst zusammenhÃ¤ngende JavaKlassen in verschiedenen Dateien.

Parameters:
  `filenames` - - Eine Liste von Quellcodedateien, welche gseparst werden sollen
Throws:
  `ParserError`

#### parse

    SourceFile parse(java.lang.String sourceCode)
              throws ParserError

Parst den SourceCode einer Datei.

Parameters:
  `sourceCode` - - SourceCode einer Java-Quellcodedatei
Returns:
  den aus dem sourceCode generierten Syntaxbaum
Throws:
  `ParserError`