Package de.bsvrz.ibv.uda.interpreter
Class InterpreterFactory
- java.lang.Object
-
- antlr.Parser
-
- antlr.LLkParser
-
- de.bsvrz.ibv.uda.parser.UDAParser
-
- de.bsvrz.ibv.uda.interpreter.InterpreterFactory
-
- All Implemented Interfaces:
UDATokensTokenTypes
public final class InterpreterFactory extends UDAParser
Klasse zur Umsetzung des Quelltextes eines Uda-Skripts in eine von einemUdaInterpreter
ausführbare Form.
-
-
Field Summary
-
Fields inherited from class de.bsvrz.ibv.uda.parser.UDAParser
_tokenNames, _tokenSet_0, _tokenSet_1, _tokenSet_10, _tokenSet_11, _tokenSet_12, _tokenSet_13, _tokenSet_14, _tokenSet_15, _tokenSet_16, _tokenSet_17, _tokenSet_18, _tokenSet_19, _tokenSet_2, _tokenSet_20, _tokenSet_21, _tokenSet_22, _tokenSet_23, _tokenSet_24, _tokenSet_25, _tokenSet_26, _tokenSet_27, _tokenSet_28, _tokenSet_29, _tokenSet_3, _tokenSet_30, _tokenSet_31, _tokenSet_32, _tokenSet_33, _tokenSet_34, _tokenSet_35, _tokenSet_36, _tokenSet_37, _tokenSet_38, _tokenSet_39, _tokenSet_4, _tokenSet_5, _tokenSet_6, _tokenSet_7, _tokenSet_8, _tokenSet_9
-
Fields inherited from class antlr.Parser
astFactory, inputState, returnAST, tokenNames, tokenTypeToASTClassMap, traceDepth
-
Fields inherited from interface de.bsvrz.ibv.uda.parser.UDATokensTokenTypes
Aktualisierung, Aktuell, Alle, ALLE, Als, Ampersand, Anmeldung, ATGANMELDUNG, ATTRIBUTZUGRIFF, Ausgabe, Ausnahme, Bedingung, Bei, Benutze, Bis, Dann, Debug, Definition, Dem, Den, Der, Die, Div, Dividiert, Doppelpunkt, EckigeKlammerAuf, EckigeKlammerZu, Ein, EIN, Eine, Einen, Elemente, Empfaenger, EMPFAENGER, Empfaenger2, Ende, EOF, Erfuellt, Erfuellt2, Falsch, Fehlerausgabe, Fehlerbehandlung, Fehlerpruefung, Fehlerpruefung2, Fehlerrueckgabe, Fehlerrueckgabe2, FELD, Fuer, Fuer2, Funktion, FUNKTIONSAUFRUF, GeschweifteKlammerAuf, GeschweifteKlammerZu, Gilt, Gleich, Groesser, GroesserGleich, Hoechstens, Hoechstens2, In, Initial, Ist, Iteration, Jede, Jeden, Jedes, Jeweils, KlammerAuf, KlammerZu, Kleiner, KleinerGleich, Komma, LAUFITERATOR, LISTE, Mal, MAXIMAL, Menge, MengenAenderung, MENGENAENDERUNG, MengenAenderung2, MENGENANMELDUNG, MENGENITERATOR, Millisekunde, Millisekunden, Mindestens, Minus, Minute, Minuten, Mit, Modulo, Name, Nicht, NULL_TREE_LOOKAHEAD, Oder, Ohne, Plus, Prozent, Punkt, Quantor, QUANTOR, Quelle, Rueckgabe, Rueckgabe2, RUECKGABEANWEISUNG, Schrittweite, Sekunde, Sekunden, SELEKTOR, Sender, Senke, Solange, Sonst, Stunde, Stunden, Tag, Tage, Timer, Ueber, Ueber2, Und, Undefiniert, Ungleich, Versuche, Von, Wahr, Wenn, Zahl, Zeichenkette, ZeilenEnde, ZEIT, ZUWEISUNG, Zyklisch
-
-
Method Summary
Modifier and Type Method Description static Anweisung
createAnweisung(UdaInterpreter interpreter, antlr.collections.AST ast, java.lang.String skript)
erzeugt einen vom Uda-Interpreter auswertbaren Anweisungsausdruck.static de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck
createAusdruck(UdaInterpreter interpreter, antlr.collections.AST ast, java.lang.String skript)
erzeugt einen vom Uda-Interpreter auswertbaren Ausdruck.static void
createInterpreterBaum(boolean initial, UdaInterpreter interpreter, Skript skript)
erzeugt den Interpreterbaum aus dem Quelltext des Skripts.
Ein Parser erzeugt einen AST, der in den den Interpreterbaum umgesetzt wird.void
reportError(antlr.RecognitionException ex)
.-
Methods inherited from class de.bsvrz.ibv.uda.parser.UDAParser
additionsAusdruck, aktuellerParameter, alle, anmeldungAktualisierung, anmeldungDefinition, anmeldungEmpfaenger, anmeldungInitial, anmeldungMengenAenderung, anmeldungQuelle, anmeldungsAnweisung, anmeldungSender, anmeldungSenke, anmeldungsZeile, anteil, anweisung, anweisungsZeile, anweisungsZeilen, attributOderMethodenaufruf, ausdruck, ausgabeAnweisung, ausnahmeAnweisung, basisAusdruck, bedingungsTeil, benutzeAnweisung, buildTokenTypeASTClassMap, dem, ein, empfaenger, erfuellt, erweiterbarerBasisAusdruck, erweiterterAusdruck, fehlerBehandlungsBlock, fehlerpruefung, fehlerPruefungsAnweisung, fehlerrueckgabe, feldKonstruktorAusdruck, formaleParameter, fuer, funktionsAufruf, funktionsDefinition, funktionsDefinitionsBlock, funktionsKopf, gleichheitsAusdruck, hoechstens, iterationsAnweisung, iterationsKopf, laufIteration, linksSeitigerAusdruck, linksSeitigerBasisAusdruck, listenKonstruktorAusdruck, main, mengenAenderung, mengenIteration, multiplikationsAusdruck, negationsAusdruck, oderAusdruck, quantor, quantorAusdruck, quantorKopf, rueckgabe, rueckgabeAnweisung, selektorAusdruck, skript, ueber, undAusdruck, vergleichsAusdruck, versucheAnweisung, wahrheitswert, wennAnweisung, wennAnweisungsAlternative, wennAnweisungsAlternativen, wennAnweisungsDannTeil, wennAnweisungsDefault, wennAnweisungsKurzformDannTeil, zeitAngabe, zeitEinheiten, zuweisungsAnweisung, zyklischAnweisung, zyklischKopf
-
Methods inherited from class antlr.Parser
addMessageListener, addParserListener, addParserMatchListener, addParserTokenListener, addSemanticPredicateListener, addSyntacticPredicateListener, addTraceListener, consumeUntil, consumeUntil, defaultDebuggingSetup, getAST, getASTFactory, getFilename, getInputState, getTokenName, getTokenNames, getTokenTypeToASTClassMap, isDebugMode, mark, match, match, matchNot, panic, recover, removeMessageListener, removeParserListener, removeParserMatchListener, removeParserTokenListener, removeSemanticPredicateListener, removeSyntacticPredicateListener, removeTraceListener, reportError, reportWarning, rewind, setASTFactory, setASTNodeClass, setASTNodeType, setDebugMode, setFilename, setIgnoreInvalidDebugCalls, setInputState, setTokenBuffer, traceIndent
-
-
-
-
Method Detail
-
createAnweisung
public static Anweisung createAnweisung(UdaInterpreter interpreter, antlr.collections.AST ast, java.lang.String skript)
erzeugt einen vom Uda-Interpreter auswertbaren Anweisungsausdruck.- Parameters:
interpreter
- der verwendete Interpreterast
- der Startpunkt im vom Parser erzeugten Syntaxbaumskript
- der Name des Skripts- Returns:
- den Ausdruck
-
createAusdruck
public static de.bsvrz.sys.funclib.bitctrl.interpreter.Ausdruck createAusdruck(UdaInterpreter interpreter, antlr.collections.AST ast, java.lang.String skript)
erzeugt einen vom Uda-Interpreter auswertbaren Ausdruck.- Parameters:
interpreter
- der verwendete Interpreterast
- der Startpunkt innerhalb des vom Parser erzeugten Syntaxbaumsskript
- der Name des Skripts- Returns:
- den Ausdruck
-
createInterpreterBaum
public static void createInterpreterBaum(boolean initial, UdaInterpreter interpreter, Skript skript) throws UdaInterpreterException
erzeugt den Interpreterbaum aus dem Quelltext des Skripts.
Ein Parser erzeugt einen AST, der in den den Interpreterbaum umgesetzt wird. Der Interpreterbaum setzt sich aus Ausdrücken zusammen, die vom Interpreter ausgewertet, d.h. ausgeführt werden können.- Parameters:
initial
- Kennzeichnung, ob das ursprüngliche oder ein eingebundenes Skript übersetzt wird.interpreter
- der verwendete Interpreterskript
- der Name des Skripts- Throws:
UdaInterpreterException
- der Quelltext des Skripts konnte nicht in einen gültigen Interpreterbaum übersetzt werden
-
reportError
public void reportError(antlr.RecognitionException ex)
.- Overrides:
reportError
in classantlr.Parser
- See Also:
Parser.reportError(antlr.RecognitionException)
-
-