|
CNF | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object | +--grammar.Grammar
Eine Grammatik mit ihren Komponenten und diversen (nützlichen) Operationen. Das Startzeichen ist festgeschrieben auf das Symbol S. Direkte Manipulationen der Meta- und Alphabetzeichenmengen sind nicht möglich. Lediglich die Regelmenge kann manipuliert werden, die Meta- und Alphabetzeichen werden automatisch ermittelt. Dabei werden Zeichen, die lexikograpisch nach dem Zeichen Z folgen und nicht mit einer eckigen Klammer beginnen als Terminale eingeordnet, alle anderen Zeichen als Variablen.
| Field Summary | |
protected Alphabet |
A
Das Alphabet mit den Terminalen. |
protected Alphabet |
M
Das Alphabet mit den Metazeichen. |
protected Rules |
R
Die Regelmenge. |
protected java.lang.String |
S
Das Startzeichen. |
| Constructor Summary | |
Grammar()
|
|
| Method Summary | |
Alphabet |
A()
Die Alphabetzeichen. |
void |
addDiff(Alphabet a)
Fügt die Zeichen des übergebenen Alphabetes gemäss der Heuristik zu den Meta- oder den Alphabetzeichen hinzu. |
void |
addDiff(Rule r)
Fügt die Zeichen, die in der übergebenen Regeln verwendet werden gemäss der Heuristik zu den Meta- oder den Alphabetzeichen hinzu. |
void |
addToR(Rule r)
Fügt eine bereits getypte Regel hinzu. |
void |
addToR(Rules Rs)
Fügt eine Menge von Regeln hinzu. |
void |
addToR(java.lang.String all)
Fügt eine Regel hinzu, die durch einen Gesamtstring gegeben ist. |
void |
addToR(java.lang.String left,
java.lang.String right)
Fügt eine Regel hinzu, deren linke und rechte Seite jeweils als ein String übergeben wird. |
boolean |
canMake()
Ermittelt, ob der Algorithmus zur Herstellung des gewünschten Typs angewendet werden kann. |
java.lang.Object |
clone()
Gibt eine Kopie der aktuellen Grammatik zurück. |
Grammar |
cloneTo(Grammar G)
Kopiert die Regelmenge in eine andere Grammatik. |
void |
compact()
Löscht alle überflüssigen Zeichen aus den Alphabeten |
void |
delFromR(Rule r)
Löscht eine bereits getypte Regel. |
void |
delFromR(Rules rs)
Löscht eine Menge bereits getypter Regeln. |
void |
delFromR(java.lang.String all)
Löscht eine Regel, die durch einen Gesamtstring gegeben ist. |
void |
delFromR(java.lang.String left,
java.lang.String right)
Löscht eine Regel, deren linke und rechte Seite jeweils als ein String übergeben wird. |
void |
delFromRwith(java.lang.String s)
Löscht alle Regeln, die ein bestimmtes Zeichen enthalten. |
boolean |
equals(java.lang.Object obj)
Zwei Grammatiken sind gleich, wenn sie die selben Regeln haben. |
Alphabet |
M()
Die Metazeichen. |
Grammar |
make(Run run)
Stellt den gewünschten Typ her und zeigt die einzelnen Schritte unter Verwendung der step-Routine des arbeitenden Threads an. |
java.lang.String |
makeNewMetaFrom(java.lang.String m)
Setzt solange "M" vor das Zeichen, bis das resultierende Zeichen nicht in der Metazeichenmenge enthalten ist, also ein neues Metazeichen gefunden wurde. |
boolean |
ok()
Ermittelt, ob die Grammatik den gewünschten Typ hat. |
Rules |
R()
Die Regeln. |
java.lang.String |
S()
Das Startzeichen. |
void |
setR(Rules newR)
Setzt die komplette Regelmenge neu. |
void |
shortenM()
Zählt die Metazeichen ab, macht sie möglichst kurz und sortiert die Regelmenge. |
java.lang.String |
toString()
Einfache textuelle Repräsentation einer Grammatik. |
java.lang.String |
type()
Eine textuelle Repräsentation des (speziellen) Typs der Grammatik. |
| Methods inherited from class java.lang.Object |
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
protected Alphabet A
protected Alphabet M
protected Rules R
protected final java.lang.String S
| Constructor Detail |
public Grammar()
| Method Detail |
public final Alphabet A()
public final void addDiff(Alphabet a)
FilterTermspublic final void addDiff(Rule r)
FilterTermspublic final void addToR(Rule r)
public final void addToR(Rules Rs)
public final void addToR(java.lang.String all)
public final void addToR(java.lang.String left,
java.lang.String right)
public boolean canMake()
public final java.lang.Object clone()
clone in class java.lang.Objectpublic final Grammar cloneTo(Grammar G)
public final void compact()
public final void delFromR(Rule r)
public final void delFromR(Rules rs)
public final void delFromR(java.lang.String all)
public final void delFromR(java.lang.String left,
java.lang.String right)
public final void delFromRwith(java.lang.String s)
FilterRulesWithpublic final boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic final Alphabet M()
public Grammar make(Run run)
public final java.lang.String makeNewMetaFrom(java.lang.String m)
public boolean ok()
public final Rules R()
public final java.lang.String S()
public final void setR(Rules newR)
public final void shortenM()
FilterStringsLessThan,
FilterRulesLessThan,
FoldlShortenMetapublic final java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String type()
|
CNF | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||