Commit Graph

2510 Commits

Author SHA1 Message Date
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
pl@gohorb.ba-horb.de
2f3d3e1bb9 new file: S2021_Etienne_Zink.pdf 2022-07-08 12:30:55 +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
Etienne Zink
d8bdcf854c Refactoring der Bytecodegenerierung und Anpassung von Kommentaren. 2022-03-29 08:56:38 +02:00
Etienne Zink
0e363cfae3 Löchen des Intermediate-Packages und Erstellung einer Utility-Klasse zur FunN Bytecodegenerierung.
Übertragung der Funktionalität zur Generierung von FunN auf FunNGenerator.
2022-03-28 22:34:07 +02:00
Etienne Zink
fedf33a006 Alle Tests der Bytecode-Generierung sind nun auf grün mit den Spezialisierungen der FunN Typen.
Bytecode muss noch manuell überprüft werden, ob überall korrekt!
2022-03-28 11:56:14 +02:00
Etienne Zink
4522aeff36 Verbesserung der Bytecodegenerierung für FunN Typen.
Immernoch in drei Tests fehlerhaft.
2022-03-28 10:47:49 +02:00
Etienne Zink
bcf56e6bdd Verbesserung der Generierung von FunN-Typen.
Lambda Expressions noch fehlerhaft.
2022-03-24 10:38:12 +01:00
Etienne Zink
15c05e5cba Verbesserung der Konvertierung und der Bytecodegenerierung für FunN Typen.
Beinhaltet noch Fehler!
2022-03-23 16:12:25 +01:00
Etienne Zink
dc9a54be3b Hinzufügen der ersten Einbeziehung der API zur Generierung der spezialisierten FunN Typen, ohne Tests. 2022-03-22 20:42:16 +01:00
Etienne Zink
21adeb7f26 Implementierung der von convert(..) in ASTToIntermediate. 2022-03-21 17:15:03 +01:00
Etienne Zink
6381d09174 Implementierung von getBytecode() in FunN und Hinzufügen entsprechender Tests. 2022-03-21 11:29:37 +01:00
Etienne Zink
918a2cc04d Implementierung in FunN von getSuperBytecode() und Hinzufügen entsprechender Test.
Umbenennung in IntermediateRefType: getTypParameter() -> getTypArgument() und getTypParameterSize() -> getTypArgumentSize().
2022-03-21 08:42:50 +01:00
Etienne Zink
ac1e0340c3 Hinzufügen von FunN zur Generierung von echten Funktionstypen.
FunN ist Subtyp von IntermediateRefType.
Hinzufügen erster FunNTests.
2022-03-20 22:25:55 +01:00
Etienne Zink
0d84e8361f Hinzufügen von IntermediateWildcard und dessen Tests.
Hinzufügen der Tests für IntermediateSuperWildcard und IntermediateExtendsWildcard.
Verbesserung von IntermediateRefType: typParameter können IntermediateType sein und nicht nur IntermediateInnerType.
2022-03-20 20:38:54 +01:00