Commit Graph

1897 Commits

Author SHA1 Message Date
JanUlrich
752faaca86 Add jar-building to pom-file. Fix ConsoleInterface 2023-01-17 19:31:15 +01:00
Andreas Stadelmeier
def76724b5 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2023-01-17 19:30:47 +01:00
JanUlrich
eb5a339f56 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2023-01-17 17:42:58 +01:00
JanUlrich
d6b25bc76e Add jar-building to pom-file. Fix ConsoleInterface 2023-01-17 17:42:32 +01:00
pl@gohorb.ba-horb.de
a2d8ab35ae Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-01-17 17:22:46 +01:00
pl@gohorb.ba-horb.de
0944cf59fb modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	new file:   src/main/java/de/dhbwstuttgart/util/BiRelation.java
	renamed:    src/main/java/de/dhbwstuttgart/typeinference/unify/model/Pair.java -> src/main/java/de/dhbwstuttgart/util/Pair.java
2023-01-17 17:22:22 +01:00
Victorious3
abe7553c37 Add missing object bounds 2023-01-17 15:57:41 +01:00
Victorious3
43e8837308 Simplify tests by adding BoundsChain 2023-01-17 12:42:20 +01:00
Victorious3
268f2b72eb Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-01-17 11:59:19 +01:00
Victorious3
d9bb0037b8 Improve genericcs tests 2023-01-17 11:58:59 +01:00
pl@gohorb.ba-horb.de
f0f3a91e27 Constraints fuer Generated Generics erzeugt und schreibt diese als Attribute methCallargTypesRetType in den Klassen TYPE, TypeStmt und JavaTXCompiler
modified:   src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/Constraint.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
2023-01-11 18:51:55 +01:00
pl@gohorb.ba-horb.de
b9c7b888c1 Changes to be committed:
deleted:    src/test/java/targetast/Fun1$$.java
2023-01-11 11:14:49 +01:00
pl@gohorb.ba-horb.de
96142339e0 deleted: src/test/java/targetast/Fun1$$.java 2023-01-10 16:41:44 +01:00
Victorious3
7aa7f94110 Add user defined generics to methods 2023-01-10 16:06:57 +01:00
Victorious3
229c6c523d Change file path to make the tests happy 2023-01-10 13:48:21 +01:00
Vic Nightfall
96ffc12ebc Merge with bigRefactoring 2023-01-04 16:07:48 +01:00
Vic Nightfall
f714589728 Remove unused imports 2023-01-04 15:47:04 +01:00
Vic Nightfall
f3e7fc0dc3 Test generics 2023-01-04 15:46:25 +01:00
Vic Nightfall
9f27d0d0fa Work on the generics tests 2022-12-06 17:44:39 +01:00
Andreas Stadelmeier
f444003aee Merge branch 'patternMatching' into bigRefactoring 2022-11-28 13:53:39 +01:00
Andreas Stadelmeier
b41680dc84 Merge with targetBytecode, Set language level to Java 19 + preview-features 2022-11-28 13:38:31 +01:00
Vic Nightfall
b63d1bcf73 Fix FunNGenerator 2022-11-27 13:22:47 +01:00
Vic Nightfall
8806d1462c Fix FunNGenerator using the wrong string 2022-11-27 12:57:47 +01:00
Vic Nightfall
dbd5311d93 Fix the build by reinstating old classes 2022-11-23 21:35:33 +01:00
luca9913
09ac2fc5cf Neue Grammatik-Regeln und daraus resultierende bugfixes 2022-11-22 21:44:13 +01:00
pl@gohorb.ba-horb.de
291fee12db new file: ../../AllgemeinTest/VectorConstAdd.jav
modified:   ../../bytecode/javFiles/VectorAdd.jav
	new file:   ../../../src/test/java/AllgemeinTest.java
wieder hergestellt.
2022-11-21 23:51:06 +01:00
JanUlrich
f8c8e2c805 Move Tests 2022-11-18 09:50:35 +01:00
Andreas Stadelmeier
00c8f41671 Change pom.xml: Clean up, Set java version to 17, Antlr4 plugin uses standard source directory. Project changes: move /test/resources to /resources 2022-11-15 16:21:09 +01:00
Vic Nightfall
84cb7d871b Move package 2022-11-14 15:55:40 +01:00
Vic Nightfall
83b735716f Convert FunNGenerator to class with static methods instead of using a singleton 2022-11-14 15:44:31 +01:00
Vic Nightfall
15e94111d4 Rework FunNGenerator to use target types 2022-11-14 15:28:00 +01:00
Vic Nightfall
9d942a7014 Start replacing the code generator 2022-11-13 19:03:54 +01:00
Vic Nightfall
aa156b793f Generate proper FunN types 2022-11-13 17:05:14 +01:00
Vic Nightfall
be1c356a9f Don't drop wildcards 2022-11-13 14:38:21 +01:00
Victorious3
4307371dee Box test 2022-11-13 13:47:24 +01:00
pl@gohorb.ba-horb.de
26bb3c9579 modified: ../../java/AllgemeinTest.java
modified:   Box_Main.jav
2022-10-10 18:11:57 +02:00
Andreas Stadelmeier
8f7becd62d Fix for Bug 230 2022-10-03 10:08:50 +02:00
Victorious3
c40fbd9399 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-10-02 18:28:00 +02:00
Victorious3
b4e1be0fb7 Fix some type conversions 2022-10-02 18:27:41 +02:00
pl@gohorb.ba-horb.de
469feb6349 modified: src/test/resources/bytecode/javFiles/Inf.jav
zwei weitere Variablen eingefuegt
2022-09-27 18:18:13 +02:00
pl@gohorb.ba-horb.de
82f5146abb Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-09-27 15:19:20 +02:00
pl@gohorb.ba-horb.de
f119bff0b6 modified: ../bytecode/javFiles/Inf.jav
modified:   ../bytecode/javFiles/SimpleCycle.jav
2022-09-27 15:19:10 +02:00
Victorious3
a660d7a295 Remove bounds with Object when more concrete bounds are added 2022-09-22 22:01:28 +02:00
Victorious3
247eb0ef79 Add tests for generic parameters 2022-09-22 18:48:50 +02:00
Victorious3
04b9af8c7b Add Box test 2022-09-22 16:50:19 +02:00
pl@gohorb.ba-horb.de
33e9b87562 Der Returntyp des Konstruktors wurde mit TypePlaceholders als Parameter bestimmt.
Korrigiert: TypePlaceholders durch GenericRefType ersetzt

	modified:   ../../../../main/java/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
Methode generateTypeOfThisClass eingefuegt. Macht aus der atuellen Klasse den zugehoerigen RefType

In getConstructors in new MethodAssumption den ofType-Parameter (Typeplaceholders) durch cl.generateTypeOfThisClass()
ersetzt. Dadurch werden GenericRefType in den Typ eingefuegt.
2022-09-18 00:19:20 +02:00
Victorious3
5503f3723c Fix Tph2 2022-08-26 17:21:23 +02:00
Victorious3
b0c1d5d96d Remove duplicate type variables 2022-08-26 16:05:59 +02:00
Victorious3
6fb329ae1a Initialize local variables to null 2022-08-26 15:13:48 +02:00
Victorious3
45b80bb6c5 Don't change the constraints anymore 2022-08-26 14:55:03 +02:00
pl@gohorb.ba-horb.de
5d5f3ee627 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode
Conflicts:
	src/test/java/targetast/TestComplete.java
2022-08-09 17:14:09 +02:00
Victorious3
edf85dca7f Fix Tph4-6 2022-08-09 12:59:23 +02:00
pl@gohorb.ba-horb.de
bca1bd622f modified: ../bytecode/javFiles/SimpleCycle.jav
Simple cycle aktiviert
2022-08-09 09:50:47 +02:00
pl@gohorb.ba-horb.de
6fc70db481 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-08-08 15:25:23 +02:00
pl@gohorb.ba-horb.de
c933160dcb modified: ../../java/targetast/TestComplete.java
Test Tph7.jav in integriert.
2022-08-08 15:24:46 +02:00
Victorious3
2af59d1e1f Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-08-08 14:51:08 +02:00
Victorious3
f36f981ca8 Lambda captures 2022-08-08 14:50:43 +02:00
pl@gohorb.ba-horb.de
d54cd5e20a modified: ../../../../pom.xml
wieder auf Java-18 umgestellt

	modified:   ../../java/targetast/TestComplete.java
Test Tph4Test eingefuegt
2022-08-08 14:45:58 +02:00
pl@gohorb.ba-horb.de
975f2cefe3 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-08-08 11:50:07 +02:00
pl@gohorb.ba-horb.de
56f68e84e4 modified: ../../java/targetast/TestComplete.java
Test Tph2Test eingefue=gt

	modified:   ../bytecode/javFiles/Tph2.jav
Zeilen auskommentiert, die bereits in anderen Tests enthalten
2022-08-08 11:09:19 +02:00
Victorious3
d87ea005b1 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-08-07 20:10:18 +02:00
Victorious3
bca02137a6 Fix method calls in matrixOp 2022-08-07 20:09:57 +02:00
pl@gohorb.ba-horb.de
092d066774 modified: ../../java/targetast/TphTest.java
Test fuer Tph7 so angepasst, dass ueberprueft wird ob die richtigen Typvariablen generiert werden
2022-08-06 22:17:49 +02:00
pl@gohorb.ba-horb.de
6d12102fbf Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2022-08-06 14:12:41 +02:00
pl@gohorb.ba-horb.de
fa5a29c682 modified: src/test/resources/bytecode/javFiles/Inf.jav
Kommentare erweitert
2022-08-06 14:10:25 +02:00
Victorious3
4e15bd4ae2 Merge remote-tracking branch 'origin/targetBytecode' into targetBytecode
# Conflicts:
#	src/test/resources/bytecode/javFiles/Tph7.jav
2022-08-05 16:21:10 +02:00
Victorious3
4e6e8c5cc7 Add Tph7 test. 2022-08-05 16:20:30 +02:00
pl@gohorb.ba-horb.de
bfc5c55e90 modified: ../../../../pom.xml
modified:   ../../java/targetast/TphTest.java
	modified:   ../bytecode/javFiles/Tph.jav
	new file:   ../bytecode/javFiles/Tph7.jav
2022-08-03 15:18:55 +02:00
Victorious3
c21104f646 Find functions in class files and primitive types 2022-08-02 18:10:52 +02:00
pl@gohorb.ba-horb.de
9fc558c21a modified: src/test/java/AllgemeinTest.java
new file:   src/test/resources/AllgemeinTest/M.jav
	new file:   src/test/resources/AllgemeinTest/Put.jav
	new file:   src/test/resources/AllgemeinTest/Test.jav
	new file:   src/test/resources/AllgemeinTest/TestSubTypless.jav
	new file:   src/test/resources/AllgemeinTest/Twice.jav
	new file:   src/test/resources/AllgemeinTest/Var.jav
	new file:   src/test/resources/AllgemeinTest/Wildcard_Andi.jav
	new file:   src/test/resources/AllgemeinTest/addList.jav
2022-07-28 09:04:25 +02:00
Victorious3
6e1786ec7c Test cases and some fixes 2022-07-13 14:38:17 +02:00
Victorious3
699155e21a Equalize type variables in covariant and contravariant position 2022-07-03 19:24:54 +02:00
Victorious3
de417d3ee6 Remove inner type variables 2022-07-03 18:10:40 +02:00
Victorious3
ef06a8de38 Actually replace instead of removing pairs 2022-07-03 15:25:35 +02:00
Victorious3
560f0c5a6f Filter out cycles and infima 2022-07-03 15:17:12 +02:00
Victorious3
d7380c6cb7 Remove duplicate testcase 2022-07-02 16:14:46 +02:00
Victorious3
b43afd40ee Decouple Sigma from Target 2022-07-02 15:57:33 +02:00
Victorious3
a8be387dd9 Add generics to the generated class file 2022-06-23 20:39:34 +02:00
Victorious3
7e259e2597 Mostly finish up populating generics 2022-06-23 18:52:30 +02:00
Victorious3
f00ee2598f Start implementing family of generics 2022-06-22 17:06:49 +02:00
Victorious3
3b439a49cd IDEA wants it that way 2022-06-17 15:16:56 +02:00
Victorious3
29112e7bd7 First implementation for overloaded functions and test case 2022-06-17 15:15:08 +02:00
Victorious3
0a1a596bb9 Add Field transform 2022-05-31 14:02:39 +02:00
Victorious3
372182aa8b Convert the AST 2022-05-29 20:06:08 +02:00
JanUlrich
1ef3f22c18 Add AST To Target AST emptyClass testcase 2022-05-24 15:42:41 +02:00
Victorious3
20f11a5bef Changes 2022-05-24 14:35:30 +02:00
Victorious3
6c584f92e9 More tests 2022-05-16 14:18:58 +02:00
Victorious3
8666bfdf17 Start testing 2022-05-15 18:45:49 +02:00
Victorious3
590a4f04ae Implement target t AST 2022-05-03 21:37:14 +02:00
Victorious3
e8cc6ade11 Start working on the code generator 2022-04-27 13:05:01 +02:00
Andreas Stadelmeier
8e80cc2985 Add TargetExpression 2022-03-30 03:17:55 +02:00
Andreas Stadelmeier
f03d3f5e64 Merge branch 'refactorToAPIs' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into refactorToAPIs 2022-03-29 19:25:13 +02:00
Andreas Stadelmeier
dfd12422a6 Set language level to Java 17. Add target AST as records 2022-03-29 19:25:01 +02:00
Etienne Zink
eebb07ec8b Verbesserung FunNGenerator:
Generics werden nicht mehr mehrfach hinzugefügt.
TPHS werden im Klassenname als LTPH angegeben, so entsteht keine Uneindeutigkeit zu Klassen mit Object (ohne TPH) im Klassenname.
2022-03-29 19:19:31 +02:00
Etienne Zink
c65102d89a Hinzufügen von OLFun2 und Änderung der Spezialisierungen von FunN, dass diese statt des TPH im Namen Object haben.
Ansonsten werden diese nicht wieder gefunden.
2022-03-29 17:00:06 +02:00
Etienne Zink
ed00aeb056 Fixed bug mit der korrekten Signatur im Bytecode der FunN Typen.
Verbesserung der BytecodeGenMethod -> Nun werden die korrekt resolveten Typen verwendet.
2022-03-29 16:20:14 +02:00
Etienne Zink
7012010462 Korrektur in TypeToDescriptor und TypeToSignature -> Ohne Angabe im Deskriptor wird automatisch angenommen es soll eine spezialisierte Signatur erstellt werden. 2022-03-29 15:58:10 +02:00
Etienne Zink
9444ee38d6 Änderung generateSuperBytecode() sodass dies nun korrekten Bytecode generiert. 2022-03-29 15:43:43 +02:00
Etienne Zink
4ed30f11f7 Änderung: Spezialisierte FunN beinhaltet TPH im Namen und dieser wird FunN als Generic hinzugefügt. 2022-03-29 15:00:52 +02:00
Etienne Zink
fcedec60e7 Hinzufügen OLFunTest. 2022-03-29 09:02:32 +02:00