From ceb12316322a3bf86c9494ee76ef0a7bbb311e1d Mon Sep 17 00:00:00 2001 From: i22035 Date: Thu, 4 Jul 2024 17:02:02 +0200 Subject: [PATCH] Fixed Renaming Errors --- readme.md | 53 ++++++++++++++++++-- src/main/java/semantic/SemanticAnalyzer.java | 8 +-- src/test/java/main/MainTest.java | 4 -- 3 files changed, 52 insertions(+), 13 deletions(-) diff --git a/readme.md b/readme.md index 8d2f771..68530c7 100644 --- a/readme.md +++ b/readme.md @@ -43,20 +43,63 @@ src/ └── resources/ test/ └── java/ -│ ├── main/ -> MainTest, E2ETests, UtilityTests -│ ├── parser/ -> Performs tests on the parser -│ └── semantic/ -> Performs tests on the semantic check -└── resources/ -> Ressources for running the Tests + │ ├── main/ -> Running E2E tests + │ ├── parser/ -> Performs tests on the parser + │ ├── semantic/ -> Performs tests on the semantic check + └── resources/ -> Ressources for running the Tests ``` ## Class-Diagramm AST ![AST Diagramm](ast.png) +## Distribution of the realisation + +### i22030 & i22035 + +Parser: +- Grammar -> (src/main/java/parser/grammar) +- Scanner +- Parser +- Abstract Syntax Tree (AST) -> (src/main/java/ast) +- AstBuilder -> (src/main/java/parser/astBuilder) + +Parser tests: +- ParserTests -> (src/test/java/parser) +- TestCases -> (src/test/resources/input/singeFeatureTests) + +Other: +- Documentation -> (README.md) +- Ast Class-Diagramm -> (ast.png) +- PowerPoint + +### i22005 +Semantic check: +- Set all types and check whether types have been used correctly +- Contexts -> (src/main/java/semantic/context) +- Exceptions Handling -> (src/main/java/semantic/exceptions) + +Semantic Tests: +- Typing and Type checking -> (src/test/java/semantic/EndToTypedAstTest) +- Exception and feature test -> (src/test/resources/input/typedAstExceptionsTests) + +### i22007 +Bytecode generation: +- Complete bytecode generation -> (src/mein/java/bytecode) + +### i22011 +Tests and execution: +- Makefile +- Running Compiler -> (src/main/main) +- Running E2E tests -> (src/test/main) +- Typing and Type checking -> (src/test/java/semantic/EndToTypedAstTest) + + + ## Used Tools - [Maven 4.0](https://maven.apache.org/index.html) - - Used for automating the build process and managing dependencies. + - Used for automating the build process and managing dependencies. - [ANTLR4 v.13.1](https://www.antlr.org/) - Used to parse the input Java code into the Abstract Syntax Tree. diff --git a/src/main/java/semantic/SemanticAnalyzer.java b/src/main/java/semantic/SemanticAnalyzer.java index 8146052..09ab26b 100644 --- a/src/main/java/semantic/SemanticAnalyzer.java +++ b/src/main/java/semantic/SemanticAnalyzer.java @@ -33,7 +33,7 @@ import com.sun.jdi.IntegerType; import semantic.context.ClassContext; import semantic.context.Context; import semantic.exceptions.*; -import typechecker.TypeCheckResult; +import semantic.TypeCheckResult; public class SemanticAnalyzer implements SemanticVisitor { @@ -480,8 +480,8 @@ public class SemanticAnalyzer implements SemanticVisitor { @Override public TypeCheckResult analyze(DotNode toCheck) { - if (toCheck.dotSubstractionExpression != null) { - var result = toCheck.dotSubstractionExpression.accept(this); + if (toCheck.dotSubtractionExpression != null) { + var result = toCheck.dotSubtractionExpression.accept(this); toCheck.setType(result.getType()); return result; } @@ -489,7 +489,7 @@ public class SemanticAnalyzer implements SemanticVisitor { } @Override - public TypeCheckResult analyze(DotSubstractionNode toCheck) { + public TypeCheckResult analyze(DotSubtractionNode toCheck) { if (toCheck.value != null) { var result = toCheck.value.accept(this); toCheck.setType(result.getType()); diff --git a/src/test/java/main/MainTest.java b/src/test/java/main/MainTest.java index 890f4cd..45f07f4 100644 --- a/src/test/java/main/MainTest.java +++ b/src/test/java/main/MainTest.java @@ -2,8 +2,6 @@ package main; import org.junit.runner.RunWith; import org.junit.runners.Suite; -import parser.ParserTest; -import parser.ScannerTest; import semantic.EndToTypedAstTest; import semantic.SemanticTest; @@ -15,8 +13,6 @@ import semantic.SemanticTest; @RunWith(Suite.class) @Suite.SuiteClasses({ InputFilesTest.class, - ScannerTest.class, - ParserTest.class, SemanticTest.class, EndToTypedAstTest.class })