class Declarations
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
(package private) ClassDeclaration |
currentClass
Die aktuelle Klasse.
|
(package private) java.util.LinkedList<java.util.HashMap<java.lang.String,Declaration>> |
levels
Die Ebenen mit allen Deklarationen.
|
Constructor and Description |
---|
Declarations() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
add(Declaration declaration)
Die Methode fügt eine neue Deklaration in die oberste Ebene ein.
|
java.lang.Object |
clone()
Die Method erstellt eine Kopie dieses Objekts.
|
(package private) void |
enter()
Erzeugt eine neue Deklarationsebene.
|
(package private) void |
leave()
Verwirft die zuletzt erzeugte Deklarationsebene.
|
private void |
resolve(ResolvableIdentifier identifier)
Die Methode ordnet einen Bezeichner seiner Deklaration im Programm zu.
|
(package private) void |
resolveType(ResolvableIdentifier type)
Die Methode ordnet einen Typ seiner Deklaration im Programm zu.
|
(package private) void |
resolveVarOrMethod(ResolvableIdentifier varOrMethod)
Die Methode ordnet eine Variable, ein Attribut oder einen Methodenaufruf
der zugehörigen Deklaration im Programm zu.
|
java.util.LinkedList<java.util.HashMap<java.lang.String,Declaration>> levels
ClassDeclaration currentClass
public java.lang.Object clone()
clone
in class java.lang.Object
void enter()
void leave()
void add(Declaration declaration) throws CompileException
declaration
- Die neu einzufügende Deklaration.CompileException
- Dieser Bezeichner wurde bereits in dieser Ebene verwendet.private void resolve(ResolvableIdentifier identifier) throws CompileException
identifier
- Der Bezeichner, der aufgelöst werden soll.CompileException
- Die Deklaration des Bezeichners wurde nicht gefunden.void resolveType(ResolvableIdentifier type) throws CompileException
type
- Der Typ, der aufgelöst werden soll.CompileException
- Die Deklaration des Typs wurde nicht gefunden.void resolveVarOrMethod(ResolvableIdentifier varOrMethod) throws CompileException
varOrMethod
- Die Variable, das Attribut oder der Methodenaufruf.CompileException
- Die Deklaration der Variable, des Attributs oder
des Methodenaufruf wurde nicht gefunden.