Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gertrude Gigler Geändert vor über 10 Jahren
1
Ergänzung fehlender Basistypen byte, short, long, float und double 17. Ausbaustufe
2
19.05.2014Basistypen2 Übersicht Scanner Parsergrammatik Model Referencer Printer und Sourceprinter
3
19.05.2014Basistypen3 Scanner States: Erkennung von Zahlen in folgender Form: –Ganzzahlkonstanten long und int Oktalnotation (017) Hexadezimalnotation (0xff) Dezimalnotation (12) –Fließkommazahlkonstante Standardnotation (1.23f bzw. 1.23) Exponentialnotation (1.23e-2)
4
19.05.2014Basistypen4
5
19.05.2014Basistypen5
6
19.05.2014Basistypen6 Scanner SyntaxRules: –JavaSyntaxRules um Schlüsselwörter long, short, byte, float und double ergänzt –Suffixe für die primitiven Typen als Prüfmethoden ergänzt Token: –Für die neuen Datentypen z.B. LongToken –Für die Literale z.B. LongLiteralToken
7
19.05.2014Basistypen7 Parsergrammatik Erweiterung des Parsers für die Erkennung der neuen Basistypen JavaParser: –parseBasicType() –parseConstant() ParserOfElementaryToken: –parseXXXToken() –parseXXXLiteralToken()
8
19.05.2014Basistypen8 Model Neue primitive Datentypen wurden angelegt z.B. ByteType Expressions wurden erstellt, wobei ByteLiteralExpression und ShortLiteralExpression wegen der Promotion nicht notwendig sind AbstractTypeVisitor und AbstractExpressionVisitor wurden um die neuen handle-Methoden erweitert Visio-Datei des Models angepasst
9
19.05.2014Basistypen9 Referencer DefaultBaseFunctions –Wurden um alle neuen Kombinationen ergänzt z.B. Addition zweier long-Werte –Kombinationen mit byte und short wegen Promotion zu int nicht notwendig –Bestehende Kombinationen mit char gelöscht, Promotion erfolgt jetzt auch für char Typpromotion –Bei der Suche nach passenden BaseFunctions notwendig –Hierbei werden aus ByteType, ShortType und CharType jeweils ein IntType
10
19.05.2014Basistypen10 Printer und Sourceprinter Funktionalität wurde durch die Ergänzung der fehlenden handle-Methoden angepasst Die Suffixe f bzw. d für float bzw. long werden den Literalen angestellt, um die Java-Notation zu erhalten
11
Vielen Dank für die Aufmerksamkeit! Fragen???
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.