Commit Graph

2294 Commits

Author SHA1 Message Date
d405b0c3a2 Merge branch 'targetBytecode' of ssh://gitea.hb.dhbw-stuttgart.de:2222/JavaTX/JavaCompilerCore into targetBytecode
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m51s
2024-04-10 09:42:47 +02:00
6c8657b7a8 Work on #308 2024-04-10 09:42:31 +02:00
pl@gohorb.ba-horb.de
bcce4cee19 modified: src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntacticSugar.java
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m21s
Im Visitor ReturnFinder wuder nicht beruecksichtigt, dass auch in einem Lambda-Ausdruck ein Reurn stehen kann, welchen die umgebenden Block nicht beendet.
2024-04-09 18:25:26 +02:00
e6cd4038e2 Fix bytecode error when calling interface functions
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m48s
2024-04-09 15:52:44 +02:00
e50f941b79 Merge branch 'targetBytecode' of ssh://gitea.hb.dhbw-stuttgart.de:2222/JavaTX/JavaCompilerCore into targetBytecode
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m33s
2024-04-09 14:59:16 +02:00
cb7d0e22cc Fix #314 2024-04-09 14:58:43 +02:00
pl@gohorb.ba-horb.de
0d5be89310 modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/Match.java
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m50s
modified:   ../src/test/java/TestComplete.java
2024-04-09 01:50:42 +02:00
0b7f07108f Fix #313
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m43s
2024-04-08 14:25:41 +02:00
6b0816c1c4 Add test for #309
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m47s
2024-04-08 14:02:57 +02:00
f66b9099f3 Fix #311
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m55s
2024-04-08 13:51:49 +02:00
da74898f9d Fix #312
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m45s
2024-04-08 13:18:27 +02:00
46a7f61234 Fix #310
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m49s
2024-04-08 11:52:52 +02:00
e59accf7ee Fix #308
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Has been cancelled
2024-04-08 11:40:46 +02:00
pl@gohorb.ba-horb.de
e37040f367 Bug 307 gefixt
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m51s
Changes to be committed:
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/test/java/TestComplete.java
2024-04-03 00:11:01 +02:00
6850a8fa21 Decouple unify from the rest of the code
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 3m22s
2024-03-28 10:35:34 +01:00
877e5ed38a Reversing alone would disturb the parameters (#298)
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 1m2s
2024-03-27 14:52:15 +01:00
82b4450857 Fix 298 for real this time?
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 1m3s
2024-03-27 14:39:43 +01:00
b70e435120 Work on issue
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 59s
2024-03-27 12:21:57 +01:00
3b14cd609f Revert "Get rid of mutable state, hopefully fix #307"
This reverts commit bc61fc2e1d.
2024-03-27 09:57:21 +01:00
8fdfbf875b Fix #298 maybe?
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m42s
2024-03-26 17:31:48 +01:00
bc61fc2e1d Get rid of mutable state, hopefully fix #307
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m57s
2024-03-26 16:54:24 +01:00
62f2e05f35 Add test case for #307
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m37s
2024-03-26 11:04:03 +01:00
606ce8b82d Implement AND/OR/XOR, fix #305
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m26s
2024-03-26 10:54:32 +01:00
c84befae51 Add Negation operator (fixes #304)
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m41s
2024-03-25 17:05:20 +01:00
7f3c1686ec Fix #303
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m37s
2024-03-25 15:10:47 +01:00
43da2ffbdc Fix #302
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m47s
2024-03-25 14:49:18 +01:00
7cb0e9dbb7 Taking the super methods parameters should only happen for the types, fix #306
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m23s
2024-03-25 13:43:30 +01:00
e07521d9b6 Fix #298
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m33s
2024-03-25 12:14:03 +01:00
c2ee12397f Work on issue
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m53s
2024-03-22 14:54:23 +01:00
e6321ff8bc Fix gtvs being strange, #301 2024-03-21 17:40:42 +01:00
786e0a7a23 Fix #300 and also call private methods correctly
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m35s
2024-03-21 11:49:16 +01:00
1c63321b30 Fix #294
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m35s
2024-03-20 14:37:15 +01:00
1f74345324 Upload test for #298
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 3m16s
2024-03-19 15:19:57 +01:00
518f58e08f Maybe null here was in fact right?
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m43s
2024-03-18 13:40:37 +01:00
0acfe6c0d4 Implement ThisCall (fix #295)
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Has been cancelled
2024-03-18 13:29:53 +01:00
c07d4d36e9 Fix wrong type conversion, see #297
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m51s
2024-03-18 12:14:03 +01:00
01e374eadd Fix #296
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 3m29s
2024-03-18 10:14:40 +01:00
a1b5c0541b Fix NPE in generics, probably because interface method don't have code
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m55s
2024-03-15 17:14:27 +01:00
66c8c307b0 Fix recursive packages
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m25s
2024-03-14 15:23:31 +01:00
ebd6a00a39 Fix the rest of the test cases
All checks were successful
Build and Test with Maven / Build-and-test-with-Maven (push) Successful in 2m50s
2024-03-14 14:38:02 +01:00
f57d89c966 Manage imports per source file instead of globally, should fix #290 2024-03-14 13:51:20 +01:00
f9188e65ca Public all the things 2024-03-14 13:50:56 +01:00
e354838491 Use wildcard constraint in foreach, fixes #291 and hopefully doesn't break anything
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m45s
2024-03-14 10:23:19 +01:00
e17f08263e Fix <?> Wildcard not working in STG, fixes #287
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m23s
2024-03-13 11:42:32 +01:00
2cb84f9e2b Ignore annotations in STG, fix #288
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m33s
2024-03-13 11:29:17 +01:00
83ae05ea4a Fix #289
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 3m13s
2024-03-13 11:21:00 +01:00
26452eb5de Fix #286
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 3m19s
2024-03-11 16:16:10 +01:00
e27eb3a3fe Fix #285
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m37s
2024-03-08 16:58:00 +01:00
73ca790711 Create folder
Some checks failed
Build and Test with Maven / Build-and-test-with-Maven (push) Failing after 2m36s
2024-03-08 15:26:40 +01:00
945b47c762 Fix #284
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 8s
2024-03-08 14:42:49 +01:00
65a71ebe0c Add test for #285 and partially fix it
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 7s
2024-03-08 14:00:52 +01:00
c92edeaf2a Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2024-03-07 10:44:37 +01:00
01e3d31f1a Add Object methods to every interface, fixes #125 2024-03-06 14:10:57 +01:00
a90e9df1e8 Fix regression #283 2024-03-05 10:26:30 +01:00
pl@gohorb.ba-horb.de
1c1f5ae29f Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2024-03-04 19:37:40 +01:00
pl@gohorb.ba-horb.de
8ab5bbd831 modified: src/test/java/AllgemeinTest.java 2024-03-04 19:37:10 +01:00
1877d7f170 Add test for #112 2024-03-04 12:19:56 +01:00
388614b220 Add testcase for LamRunnable 2024-03-04 12:00:29 +01:00
f2e43f180c Add test for issue #125 2024-03-04 11:51:28 +01:00
59585296b0 Fix single expressions not converting to blocks. Fixes #123 2024-03-04 11:30:36 +01:00
f11d4b0716 Fix for loop overflowing the stack. Fixes #122 2024-03-04 10:58:26 +01:00
584690596e Add filename to debug output, closes #126 2024-03-01 17:34:40 +01:00
9c6372c3ba Thats probably important 2024-02-28 13:22:13 +01:00
688358aa33 Add more debug help 2024-02-28 13:16:32 +01:00
a60282414c Add location information to constraints 2024-02-27 16:25:47 +01:00
75b9020cf9 Fix up Character 2024-02-26 15:02:15 +01:00
e88d4428c5 Fix constructor overloads getting picked with the wrong arity 2024-02-05 15:24:06 +01:00
dcfafe5995 Fix null literal 2024-02-05 14:46:00 +01:00
a035589647 Implement throw 2024-02-01 11:58:08 +01:00
9da763b361 Add instanceof 2024-01-31 17:27:18 +01:00
700ea125fc Throw different exception 2024-01-30 15:46:02 +01:00
f18903834e Fix super calls 2024-01-23 14:00:42 +01:00
b80cc726c8 Add ForEach loop 2024-01-19 16:29:59 +01:00
pl@gohorb.ba-horb.de
a84d1ffdd7 modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Resultmodell aktiviert
	modified:   ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
a < void und void < a => a = void.
2023-11-08 18:28:54 +01:00
pl@gohorb.ba-horb.de
a3d63a0266 modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../src/test/java/TestComplete.java
2023-11-08 18:10:56 +01:00
pl@gohorb.ba-horb.de
dcc2da85c5 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-11-07 00:13:53 +01:00
pl@gohorb.ba-horb.de
6f193b19ab modified: src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
modified:   src/test/java/TestComplete.java
2023-11-07 00:13:43 +01:00
1c55954e5c Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-11-06 12:31:27 +01:00
ec04f01a10 Allow relative paths by getting the absolute file (seriously Java) 2023-11-06 12:30:42 +01:00
pl@gohorb.ba-horb.de
44f8899157 Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-11-03 20:26:41 +01:00
pl@gohorb.ba-horb.de
d1a6dcbbac modified: core/JavaTXCompiler.java
modified:   typeinference/constraints/ConstraintSet.java
	modified:   typeinference/unify/TypeUnifyTask.java
2023-11-03 20:25:17 +01:00
pl@gohorb.ba-horb.de
15150fca9e modified: ../../../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2023-11-03 18:56:31 +01:00
pl@gohorb.ba-horb.de
fba7f0ee81 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-11-03 18:42:09 +01:00
pl@gohorb.ba-horb.de
e0da2a4c46 modified: Cycle.class
modified:   LambdaRunnable.jav
	modified:   ../../../src/test/java/TestComplete.java
2023-11-03 18:41:17 +01:00
9ad5b76542 Fix up bad error handling 2023-11-03 10:26:43 +01:00
3d2c699964 Fix up functional interface 2023-11-02 15:46:40 +01:00
f95c3c5fcf Fix up method resolution 2023-11-02 15:25:25 +01:00
4654ecacaf Some changes in how overload resolution works 2023-11-02 13:07:42 +01:00
1be27746e3 Allow Void as return type for Lambdas 2023-10-31 14:26:43 +01:00
pl@gohorb.ba-horb.de
c51190feef Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-10-27 21:19:30 +02:00
pl@gohorb.ba-horb.de
c4ce97f20c Anpassung zur Integration von Functional Interfaces und FunN$$-Typen
modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/FCGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/Record.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/ASTFactory.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/assumptions/FunNClass.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IFiniteClosure.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/test/java/targetast/ASTToTypedTargetAST.java
2023-10-27 21:17:52 +02:00
837317c84c Make System.out.println work 2023-10-27 15:28:46 +02:00
pl@gohorb.ba-horb.de
df852ef36e Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-10-27 14:33:21 +02:00
pl@gohorb.ba-horb.de
c00722823a Functional Interfaces und Funn&&-Typen integriert.
modified:   resources/bytecode/javFiles/LambdaRunnable.jav
	modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/FCGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IFiniteClosure.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IRuleSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/test/java/TestComplete.java
2023-10-27 14:29:27 +02:00
e31f1c59e1 Examples 2023-10-27 14:27:47 +02:00
5d0d7a6d94 Translate for loop 2023-10-24 17:34:06 +02:00
b372c6ac1c More work on static, references to other classes 2023-10-24 15:17:13 +02:00
124dea2e58 Static blocks (might be needed for something) 2023-10-24 12:05:19 +02:00
eaef00ff54 Static but no static blocks yet 2023-10-23 16:44:12 +02:00
892ba5fff0 Add interfaces 2023-10-19 17:02:22 +02:00
628f1631e8 Allow packages 2023-10-18 16:54:41 +02:00
f10e7e6d72 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-10-17 12:27:52 +02:00
700ecf3e5d Changes from weeks ago, needs review 2023-10-17 12:26:40 +02:00
pl@gohorb.ba-horb.de
f7c53fc6c3 modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Kommentar "In commit dfd91b5f8b eingefuegt" eingefuegt
2023-10-07 20:30:37 +02:00
pl@gohorb.ba-horb.de
9764ec6db1 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-10-07 07:24:59 +02:00
pl@gohorb.ba-horb.de
87f8b8799e modified: src/test/java/AllgemeinTest.java 2023-10-05 15:49:09 +02:00
Vic Nightfall
769f1bb677 Progress on implementing the basic case 2023-09-01 18:26:01 +02:00
pl@gohorb.ba-horb.de
5623fdc020 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-09-01 17:20:34 +02:00
pl@gohorb.ba-horb.de
dfd91b5f8b TESTEN OB DAS SINN MACHT
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/test/java/AllgemeinTest.java
2023-09-01 17:18:51 +02:00
e414da3369 Simple record patterns in method headers 2023-08-18 17:15:15 +02:00
5f1f698530 Refactor 2023-08-18 15:15:40 +02:00
729e88bc6d Add test for instanceof 2023-08-18 11:35:01 +02:00
bffc7f9f1c Remove TypePattern and replace it with FormalParameter 2023-08-17 16:25:19 +02:00
011b272af6 Fix missing constraints 2023-08-17 16:15:38 +02:00
ee359da751 Refactor Patterns 2023-08-17 15:56:16 +02:00
6025e17186 Infer String/Integer for patterns 2023-08-17 15:22:53 +02:00
93d7aca9e6 Switch on Strings 2023-08-17 14:23:19 +02:00
677c784b6d Allow single expressions in switch expression 2023-08-17 13:26:30 +02:00
e69a367c33 Add printout 2023-08-17 10:17:09 +02:00
14d0475d59 Type inference for switch 2023-08-17 09:27:24 +02:00
762d344e42 Make switches work with set types 2023-08-16 17:13:28 +02:00
be5591f7dc Rename files for macos and windows 2023-08-15 17:17:17 +02:00
7193f5a646 Workaround for eclipse 2023-08-15 16:52:54 +02:00
f46c2ad0f7 New test case 2023-08-01 14:02:19 +02:00
b0f7a264c2 Implement records 2023-07-31 15:11:35 +02:00
4f3164a48a Allow the first patterns 2023-07-28 12:05:30 +02:00
be55d661cb Add classic switch 2023-07-27 10:02:28 +02:00
3de9fde672 Add new target ast nodes and test cases for switch 2023-07-26 15:47:30 +02:00
a0582e918b Merge 2023-07-25 15:06:15 +02:00
pl@gohorb.ba-horb.de
18429d9cf9 Iteration.jav Pair ausgeklammert 2023-07-18 11:45:17 +02:00
pl@gohorb.ba-horb.de
b65df7c390 Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-07-18 11:44:43 +02:00
luca9913
f5b843ec11 Extended instanceOfTest 2023-07-17 19:52:30 +02:00
luca9913
951d741d90 Added test for Sealed classe and interface ASTs 2023-07-17 19:38:01 +02:00
luca9913
fe6c9858a2 Finalized test cases for new jav-files 2023-07-17 17:58:39 +02:00
luca9913
1df354d5f1 Modified InstanceOf to use Pattern 2023-07-17 17:49:28 +02:00
luca9913
6119bc92ed Corrected ASTPrinter for RecordPattern 2023-07-15 22:05:34 +02:00
luca9913
e8140b3160 Added method stubs in visitors for new AST nodes 2023-07-15 21:41:50 +02:00
luca9913
75789e574e Modified ASTPrinter to support new AST nodes for tests 2023-07-15 21:41:27 +02:00
luca9913
c0c46e197f Added sealed classes to AST 2023-07-14 08:52:51 +02:00
pl@gohorb.ba-horb.de
a0e6df7cfd new file: resources/AllgemeinTest/Twice2.jav
modified:   src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/test/java/AllgemeinTest.java
2023-07-13 15:25:34 +02:00
luca9913
1643412f1b Added nestedPatterns 2023-07-12 21:54:17 +02:00
luca9913
3ed6edc323 Added SwitchExpression to AST 2023-07-12 21:43:50 +02:00
luca9913
fa7a331a66 Beginning of switchExpression for AST 2023-07-11 22:15:35 +02:00
luca9913
939d402b1e Changed GatherNames to add types declared inside of other types to the JavaClassRegistry 2023-07-07 09:24:45 +02:00
luca9913
492cbe48e9 Created RecordPattern & started development with test cases 2023-07-06 22:15:40 +02:00
a17e1f473a Catch linkage error 2023-07-05 15:48:27 +02:00
luca9913
359f3e68ab Added SwitchStmt including Type & GuardedPattern to AST 2023-07-04 15:27:29 +02:00
5c62191f3b Consider constructors when creating class generics 2023-07-04 12:17:14 +02:00
b04201de42 Don't load classes that get compiled by a source file 2023-07-04 11:40:23 +02:00
d05054755c Fix bug 2023-07-03 10:13:01 +02:00