Commit Graph

2294 Commits

Author SHA1 Message Date
luca9913
1a89920430 Created AST node TypePattern and adapted test cases in TestNewFeatures 2023-06-28 22:52:18 +02:00
luca9913
8b3b07e32c Added test case Record(.jav) in TestNewFeatures 2023-06-28 22:10:08 +02:00
luca9913
24900b8fcc Added test case for instanceof in syntaxtreegenerator 2023-06-27 20:25:31 +02:00
luca9913
2368a087c0 Added BoolExpression and instanceof to AST 2023-06-27 20:25:05 +02:00
luca9913
994a1571b7 Changed resources path in TestCodegen after merge 2023-06-27 19:14:28 +02:00
luca9913
93cf39cfe9 Merge branch 'bigRefactoring' into patternMatching 2023-06-27 18:46:57 +02:00
bdaf578f86 Fix equality 2023-06-27 15:48:15 +02:00
6079e96efa Test more thoroughly and add a new infimum deletion strategy 2023-06-27 15:01:28 +02:00
bb01e78123 Undo that change 2023-06-27 09:51:07 +02:00
luca9913
41d8e223ce Fixed wrong resources path in TestCodegen 2023-06-26 20:24:59 +02:00
e1e1f3eafc Insert missing case 2023-06-26 13:14:53 +02:00
9c1e016bb1 Merge and fix folder structure 2023-06-26 12:31:00 +02:00
luca9913
eaeb3c4106 Modified expected AST for Faculty according to Faculty.jav 2023-06-24 19:48:36 +02:00
luca9913
1fb431ab36 After merge fixes Codegen.java 2023-06-24 19:45:08 +02:00
luca9913
124313cb16 Merge remote-tracking branch 'origin/bigRefactoring' into patternMatching 2023-06-24 19:09:39 +02:00
luca9913
d48b888075 Bug fixes, TestComplete in 'syntaxtreegenerator' runs without error 2023-06-24 18:54:31 +02:00
4bcb91ce2d Refactor bounds to make the invocation smaller 2023-06-22 17:13:15 +02:00
97a1bcbbe1 Fix T1 & T2 refering to method signature instead of actual types 2023-06-22 17:13:01 +02:00
f32b1ee5b2 Fix auxiliary files not containing parent interface 2023-06-22 14:32:41 +02:00
711aa70d48 Update to java 20 and some refactoring 2023-06-22 09:34:15 +02:00
luca9913
168a499811 Set typeinfernce tests to be ignored 2023-06-21 21:38:58 +02:00
luca9913
d52fbeb1ae Moved all javFiles to test/resources/javFiles and removed unused resources 2023-06-21 21:06:14 +02:00
luca9913
ce0ef10c8d Added missing AST blueprint for 'syntaxtreegenerator' tests 2023-06-21 21:02:53 +02:00
luca9913
81e19f5315 Fixed syntaxtreegenerator to determine correct receiver of methodcall 2023-06-21 20:46:23 +02:00
luca9913
89a791b81e Fixed NotImplemented for field accesses in "dottexression" 2023-06-21 19:56:16 +02:00
luca9913
2d1caf9ded fix stash 2023-06-21 18:24:09 +02:00
luca9913
49b0494f36 Removed file to fix stashes 2023-06-21 18:21:59 +02:00
luca9913
60e2d8177b fix idTest() in syntaxtreegenerator 2023-06-21 18:18:38 +02:00
luca9913
62e7a1c871 Bug fix and test exclusion 2023-06-21 10:10:32 +02:00
luca9913
761dd48fa1 Test directory cleanup 2023-06-21 09:37:58 +02:00
4a18a81b33 Alter tests a bit 2023-06-15 16:31:50 +02:00
9eb0dd1cf5 Iteration 2023-06-15 14:13:15 +02:00
bb0ee7d517 Refactoring 2023-06-13 16:33:54 +02:00
fe2b3accb3 Fix not looking up the tph in equality 2023-06-13 10:28:20 +02:00
luca9913
78ad7bc003 Fixed bugs in StatementGenerator regarding constructor generation and field accesses 2023-06-09 17:26:55 +02:00
luca9913
f08744479a Started test driven bug fixing for SyntaxTreeGenerator 2023-06-07 22:24:16 +02:00
luca9913
bf15ff693e Created TestComplete for unit SyntaxTreeGenerator 2023-06-07 21:08:46 +02:00
luca9913
48199b5d2e Created test suite for syntaxtreegenerator including resources 2023-06-06 21:21:26 +02:00
luca9913
7556b9f590 Fixed parser bug that caused TestComplete to fail 2023-06-06 19:43:56 +02:00
f33aab9cfb Merge 2023-06-06 16:16:41 +02:00
3875de7f80 Fix local variable conversion and not loading interfaces 2023-06-06 13:46:53 +02:00
pl@gohorb.ba-horb.de
3c86eecf8b modified: ../../pom.xml
new file:   Iteration.jav
	modified:   Pair.jav
	modified:   ../../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   ../../src/test/java/AllgemeinTest.java
2023-06-05 13:14:00 +02:00
luca9913
63c5cb8390 Moved test resources to src/test and refactored tests 2023-06-05 09:28:55 +02:00
luca9913
e3edd0410a added astprinter to parsertest 2023-06-03 18:59:11 +02:00
luca9913
eb5cf1ab33 StackOverflow fix switchexpression 2023-06-03 17:54:37 +02:00
luca9913
a54938cb65 bug fix empty param list 2023-06-01 21:18:08 +02:00
luca9913
30a62a6621 bug fix VectorNotObject test 2023-06-01 20:59:16 +02:00
dce3ed8051 Some fixes for the plugin 2023-06-01 16:13:03 +02:00
8e5a20e59e Fix incorrect signature 2023-05-31 11:38:47 +02:00
337ff8b865 Fix incorrect signatures 2023-05-24 16:51:53 +02:00
1d7e755a98 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-05-24 13:53:36 +02:00
67a582b4a2 Flatten generic function types 2023-05-24 13:53:23 +02:00
pl@gohorb.ba-horb.de
034a398515 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-05-22 14:40:50 +02:00
pl@gohorb.ba-horb.de
58a72b0286 new file: resources/AllgemeinTest/StreamTest.jav
modified:   src/test/java/AllgemeinTest.java
2023-05-22 14:40:35 +02:00
677d68428d Merge branch 'fixPlugin' into targetBytecode 2023-05-16 14:52:45 +02:00
136bccab93 Fix type deployment 2023-05-16 13:31:05 +02:00
66944cf3c1 Recursively collect generics for FunN 2023-05-15 16:52:20 +02:00
a7ccd15286 Work on the plugin 2023-05-15 16:33:10 +02:00
pl@gohorb.ba-horb.de
9d9a1f6614 modified: src/test/java/AllgemeinTest.java
Twice in Allgemeintest reingenommen
2023-05-10 13:27:13 +02:00
8992260264 TestContraVariant 2023-05-09 12:18:12 +02:00
f8f76e9f7d WIP 2023-05-08 13:32:39 +02:00
25c0c9c101 Rewrite 2023-05-03 10:51:53 +02:00
b0cbac529e Use family instead of generated generics 2023-04-28 17:15:04 +02:00
8fb4f062ec Print Class 2023-04-28 16:03:11 +02:00
60a42f1be1 Update to Java 20 and refactor Generics 2023-04-28 15:44:26 +02:00
Victorious3
85a904d288 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-04-27 18:46:33 +02:00
Victorious3
904bdca2f4 Eliminate transitive children, add missing object bounds 2023-04-25 15:06:56 +02:00
Victorious3
af4db1817a Add test and fix up the generics a bit 2023-04-19 19:08:52 +02:00
Victorious3
d945947362 ASM doesn't like empty generics for some reason, don't know if valid? 2023-04-19 16:12:24 +02:00
Victorious3
a0c25a517d Use old method of creating signatures in case the classloader is null 2023-04-19 15:33:53 +02:00
Victorious3
c35577f948 Add missing functions and test the signature parser 2023-04-19 14:56:59 +02:00
Victorious3
fc7844c6a4 Merge branch 'targetBytecode' into parseSignature 2023-04-14 15:18:36 +02:00
pl@gohorb.ba-horb.de
e5ff08e0df modified: resources/bytecode/javFiles/Scalar.jav
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
? extends ty <! Ty' im erase1 korrigiert
2023-04-14 15:12:43 +02:00
Victorious3
4078239815 - Calculate veriance for new type variables in Infima & Cycles
- Remove referenced check from Infima
- Correctly identify contra & covariance for chains for tphs
2023-04-14 15:04:26 +02:00
Victorious3
39bde24df7 Start working on signature parsing 2023-04-14 11:38:41 +02:00
pl@gohorb.ba-horb.de
ed671aeb97 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/type/TypePlaceholder.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java

<. weider eingefuegt bei Return typen von Methodcalls und Return-Statements
Vergleich dementsprechend angepasst.
2023-04-05 17:48:15 +02:00
pl@gohorb.ba-horb.de
86d229cac9 modified: resources/bytecode/javFiles/Matrix.jav
modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/test/java/targetast/TestComplete.java
2023-04-04 15:54:03 +02:00
pl@gohorb.ba-horb.de
02c8dd9804 Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-04-04 13:16:41 +02:00
pl@gohorb.ba-horb.de
0908d512d9 modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java 2023-04-04 13:16:25 +02:00
Victorious3
e231cf722b Fix type variable being declared twice 2023-04-04 13:09:28 +02:00
Victorious3
aa9782edd7 Fix test case 2023-04-04 13:09:05 +02:00
pl@gohorb.ba-horb.de
e55b9938dc modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Returntyp: Equaldot durch SMALLERDOT ersetzt
2023-04-04 10:30:38 +02:00
luca9913
52b7040337 Break statement in AST eingefügt 2023-04-01 16:27:55 +02:00
luca9913
4986fd0f31 Merge branch 'bigRefactoring' into patternMatching 2023-04-01 15:41:36 +02:00
luca9913
dc8578632c Records in AST aufgenommen 2023-04-01 15:40:12 +02:00
Victorious3
f7b60214fa Change tests 2023-03-28 16:40:06 +02:00
Victorious3
1ad5540500 Fix wrong class generics being used 2023-03-28 13:28:05 +02:00
Victorious3
3963baa9ce Fix equality 2023-03-28 12:02:08 +02:00
Victorious3
b9f19cc105 Write tx signature to constant pool 2023-03-24 15:14:17 +01:00
Victorious3
cf2d612870 Fix TX Signature by adding additional prameters to every method and constructor 2023-03-24 14:51:57 +01:00
Victorious3
b55fc71811 Let generateClassFiles accept multiple arguments 2023-03-24 13:27:29 +01:00
luca9913
9a780127c0 Grammatik um recordPattern erweitert 2023-03-24 04:44:52 +01:00
luca9913
0311f5ed77 Test Case für geschachtelte Pattern erstellt 2023-03-22 18:42:13 +01:00
luca9913
b1b7c23166 Switch statement in GatherNames für verschieden Deklarations-Typen 2023-03-22 18:41:59 +01:00
Victorious3
6b767bc09b Fix using the wrong constructor 2023-03-21 15:06:17 +01:00
Victorious3
d93836d110 Fix incorrect generics for derived FunN 2023-03-21 12:12:42 +01:00
Victorious3
b5af3a42a8 Fix wrong generic parameter on FunN3336 base class 2023-03-21 10:34:34 +01:00
luca9913
1ab0f42fd1 Bug fixes für GeneralParserTest und Mehrfachaufrufe des Parsers entfernt 2023-03-20 22:07:47 +01:00
Andreas Stadelmeier
856d343ed3 Consider public and standard constructors ones 2023-03-20 19:09:47 +01:00
Andreas Stadelmeier
2c7037708b Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2023-03-20 18:26:47 +01:00
luca9913
78a898db37 Bug fixes für Tests in 'parser' 2023-03-20 03:03:37 +01:00
Andreas Stadelmeier
aeb4b18069 delete old parser files 2023-03-15 19:26:23 +01:00
Andreas Stadelmeier
79c82c122a fix for new-Statement generation. Change FieldInitialization Test 2023-03-15 19:25:35 +01:00
Andreas Stadelmeier
27ee00b069 Changed Parser Test 2023-03-15 19:07:41 +01:00
luca9913
d6c22a60bc 'Illegal fallthrough' entfernt 2023-03-15 18:44:00 +01:00
luca9913
a8012a3ea6 'Illegal fallthrough' entfernt 2023-03-15 18:41:04 +01:00
luca9913
31ee90b3ff Umwandlung von Interfaces implementiert 2023-03-15 05:14:43 +01:00
luca9913
96d19efa5d Umwandlung von Konstruktoren in eigener Methode 2023-03-12 21:50:53 +01:00
luca9913
1919e34eed Debugging komplett für test parser/AntlrTest.jav 2023-03-10 20:30:15 +01:00
luca9913
043dda660b Fehler im neuen SyntaxTreeGenerator beseitigt und TODOs eingefügt 2023-03-10 07:48:38 +01:00
Victorious3
acf4569908 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-03-08 16:28:50 +01:00
Victorious3
a77c64cea2 Add new type placeholder to referenced set 2023-03-08 16:28:34 +01:00
pl@gohorb.ba-horb.de
034faf1f66 Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-03-08 16:02:50 +01:00
pl@gohorb.ba-horb.de
88db5016bf modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
logFile auf false gesetzt
2023-03-08 16:02:24 +01:00
Victorious3
3a05912dfe Whoops 2023-03-08 15:05:53 +01:00
Victorious3
40b04a4877 Remove print statement 2023-03-08 15:03:59 +01:00
Victorious3
04b509613f Add test and fix constructors return value being used 2023-03-08 14:59:40 +01:00
pl@gohorb.ba-horb.de
cdd4cd9968 modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Tenaeren Operator fuer log-File eingefuegt
2023-03-08 14:26:08 +01:00
luca9913
8c6a614157 Merge remote-tracking branch 'origin/bigRefactoring' into patternMatching 2023-03-08 06:42:08 +01:00
luca9913
09cc88062e StatementGenerator fertiggestellt 2023-03-08 06:35:55 +01:00
pl@gohorb.ba-horb.de
62e022c2f7 modified: ../../../src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java 2023-03-07 16:36:29 +01:00
pl@gohorb.ba-horb.de
506fd0dc0e new file: ../../AllgemeinTest/Assign.jav
modified:   ../../AllgemeinTest/Pair.jav
	modified:   ../../AllgemeinTest/UseWildcardPair.jav
	modified:   ../../../src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/TypeGenerator.java
? extends Object nochmals angepasst

	modified:   ../../../src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../../src/test/java/AllgemeinTest.java
2023-03-07 16:34:34 +01:00
pl@gohorb.ba-horb.de
1c31b6d769 new file: ../../AllgemeinTest/Pair.jav
new file:   ../../AllgemeinTest/UseWildcardPair.jav
	modified:   ../../../src/test/java/AllgemeinTest.java
2023-03-07 08:51:31 +01:00
pl@gohorb.ba-horb.de
2d82dc1ae4 modified: src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/TypeGenerator.java
Object -> java.lang.Object
2023-03-01 23:31:07 +01:00
pl@gohorb.ba-horb.de
9606dc7b26 new file: resources/AllgemeinTest/CaptureConversion.jav
modified:   src/test/java/AllgemeinTest.java
Campture Conversion Test in Allgemeintest eingefuegt
2023-03-01 18:41:46 +01:00
Victorious3
d79d2d28b1 Ignore Box test 2023-03-01 16:33:59 +01:00
Victorious3
3eebfdc9d9 Fix POP2 not being called for double and long! 2023-03-01 16:33:03 +01:00
Victorious3
ffdedd4f99 Add OL tests 2023-03-01 15:55:15 +01:00
Victorious3
9500deaf3d Remove debug printout 2023-03-01 15:30:20 +01:00
Victorious3
11eb03cdf0 Split up equality 2023-03-01 14:55:13 +01:00
Victorious3
3de89a5cfa Object as default bound 2023-03-01 12:02:01 +01:00
Victorious3
c0348ed304 txGenerics 2023-03-01 11:23:00 +01:00
Victorious3
1ad4cfcb21 Let lambda functions use Object instead of generic parameters 2023-03-01 10:49:03 +01:00
Victorious3
374d2e811b Generate attribute for JavaTX 2023-03-01 10:27:19 +01:00
luca9913
d362858184 Umbau des StatementGenerators fortgeführt 2023-03-01 06:49:59 +01:00
luca9913
c118c05bb2 Umwandlung von Methodenaufrufen implementiert 2023-02-26 21:04:51 +01:00
Victorious3
68034ed434 Fix FunNGenerator 2023-02-23 18:52:29 +01:00
luca9913
aa5f79257e Antlr labels für ExpressionContext eingeführt, um StatementGenerator weiterzuentwickeln 2023-02-22 22:43:25 +01:00
Victorious3
a92172c9da Start working on a JavaTX signature attribute 2023-02-21 14:05:21 +01:00
Victorious3
24bbce8265 Fix test cases for new inputs 2023-02-21 14:04:53 +01:00
Victorious3
84a5ed2cc3 Fix inner type variables 2023-02-21 11:31:28 +01:00
Victorious3
b58b6c2288 Fixes for TPH4 2023-02-21 10:28:00 +01:00
Victorious3
99c46bf37f Fix console interface 2023-02-14 11:36:08 +01:00
luca9913
c38bf658fc Anpassung Statementexpression an Java17-Grammatik begonnen 2023-02-13 08:16:16 +01:00
luca9913
0e981ce95c convert(StatementContext) Implementierung fortgesetzt 2023-02-12 07:51:31 +01:00
Vic Nightfall
29f654279b Fix codegen a bit, and add missing constraints 2023-02-10 14:54:44 +01:00
pl@gohorb.ba-horb.de
239698c8d6 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
etwas aufgeraeumt
2023-02-08 17:39:45 +01:00
pl@gohorb.ba-horb.de
4074273ecb Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-02-08 16:53:30 +01:00
pl@gohorb.ba-horb.de
2d117e24cf modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
methodsignature so eingerichtet, dass die Constraints erst am Ende hinzugefuegt werden.
2023-02-08 16:52:23 +01:00
Victorious3
1c2e868589 Fix removing inner type variables 2023-02-07 12:22:37 +01:00
luca9913
40d0d6b63e TypeGenerator für Java17 Grammatik angepasst 2023-02-05 09:16:59 +01:00
luca9913
a77970b5e7 TypeGenerator für Rework vorbereitet 2023-02-03 07:58:06 +01:00
pl@gohorb.ba-horb.de
d39fd64f0f Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-02-02 14:50:18 +01:00
pl@gohorb.ba-horb.de
e699fc36ae modified: src/main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   src/main/java/de/dhbwstuttgart/syntaxtree/visual/OutputGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/Constraint.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/Pair.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2023-02-02 14:49:30 +01:00
luca9913
ca327375c8 Konvertierung von Methoden begonnen 2023-02-02 06:38:30 +01:00
Victorious3
64ec7989b4 Continue with eliminating inner type variables 2023-01-31 15:39:12 +01:00
Victorious3
5243b160f5 Didn't want to remove this 2023-01-31 15:00:09 +01:00
Victorious3
62fad15b6f We actually need the signature of the class 2023-01-31 14:53:02 +01:00
Victorious3
21fb477ee1 These are the defaults, actually 2023-01-31 14:25:37 +01:00
Victorious3
baec9999db Don't append new class files, overwrite them 2023-01-31 14:21:16 +01:00
Victorious3
a7720fbf20 Don't append new class files, overwrite them 2023-01-31 13:49:19 +01:00
pl@gohorb.ba-horb.de
0c9612a2ea modified: ../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java 2023-01-31 11:18:52 +01:00
Victorious3
dabe7f269c Consider nested type variables for signature (usage) 2023-01-24 16:24:24 +01:00
Victorious3
a9f69ead5c Use signature in methodcall 2023-01-24 15:11:31 +01:00
pl@gohorb.ba-horb.de
04508a85f1 Bei NewClass ReturnType hinzuefuegt
modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
2023-01-24 14:35:51 +01:00
Victorious3
9dca8ccdaa Fix parameter types in super call 2023-01-24 12:27:30 +01:00
Victorious3
8250f0cb51 Didn't mean to remove that 2023-01-24 12:17:21 +01:00
Victorious3
a26f466471 Fix 2023-01-24 12:16:34 +01:00
pl@gohorb.ba-horb.de
dc4b1c7b4f Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-01-24 12:06:16 +01:00
pl@gohorb.ba-horb.de
2448969426 In MethodCall argTypes durch signature ersetzt und ReturnType eingefuegt.
modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/statement/MethodCall.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
2023-01-24 12:05:26 +01:00
Victorious3
5e89ceeee8 Merge branch 'targetBytecode' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-01-24 11:55:55 +01:00
Victorious3
1ce180ce74 Change tests to umatch updated generics 2023-01-24 11:55:40 +01:00
pl@gohorb.ba-horb.de
2ab3becf44 Merge branch 'targetBytecode' of gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into targetBytecode 2023-01-24 11:32:05 +01:00
pl@gohorb.ba-horb.de
3b77a1271b modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java 2023-01-24 11:31:55 +01:00
luca9913
4f4ca50c75 Implementierung ConvertClass-Methode in ASTGen fortgesetzt 2023-01-24 08:14:14 +01:00
Victorious3
9d20c0564c Get rid of inner type variables for methods 2023-01-23 16:04:19 +01:00
pl@gohorb.ba-horb.de
8be7f3d790 modified: ../../../src/main/java/de/dhbwstuttgart/syntaxtree/statement/MethodCall.java 2023-01-23 15:14:39 +01:00
pl@gohorb.ba-horb.de
9e6b2e9ced modified: ../../../src/main/java/de/dhbwstuttgart/typeinference/assumptions/MethodAssumption.java
modified:   ../../../src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
2023-01-23 15:13:51 +01:00
Victorious3
69bdb4aa5b Consider environment of type variables in method call 2023-01-23 13:56:21 +01:00
pl@gohorb.ba-horb.de
8aa67594d9 modified: ../../../src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
argTypes in MethodCall werden gesetzt
2023-01-23 13:49:11 +01:00
pl@gohorb.ba-horb.de
8dfce15850 new file: ../../AllgemeinTest/VectorNotObject.jav
new file:   ../../AllgemeinTest/WildcardCaptureConversionTest.jav
	modified:   ../../../src/test/java/AllgemeinTest.java
2023-01-23 11:51:05 +01:00
luca9913
1cf23bec90 Implementierung neuer ASTGen fortgesetzt 2023-01-21 05:35:15 +01:00
luca9913
3bdc3b764d Merge remote-tracking branch 'origin/bigRefactoring' into patternMatching 2023-01-20 06:16:25 +01:00
luca9913
a13294edf4 Visitor Ansatz verworfen, STG in ASTGen neu aufsetzen 2023-01-20 06:13:38 +01:00
luca9913
a85b60b95f ASTGen auf basis von antlr visitor 2023-01-20 02:54:59 +01:00
pl@gohorb.ba-horb.de
d1fd65fad7 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Loeschungen angezeigt

	modified:   src/main/java/de/dhbwstuttgart/target/generate/ASTToTargetAST.java
Ansatz fuer Veraenderung des Algorithmus bei Generated Generics eingefuegt.

	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
Loeschungen angezeigt

	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Loeschungen angezeigt

	modified:   src/test/java/targetast/TestComplete.java
tphTest eingfuegt
2023-01-18 18:11:45 +01:00
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
luca9913
c78a148766 Alternativ-labels in grammatik & neuen ast-generator auf basis von antlr visitor 2023-01-17 06:38:00 +01:00
luca9913
cb564dc436 Beginn anpassung SyntaxTreeGenerator an neue Grammatik 2023-01-17 06:37:07 +01:00
luca9913
6d52949215 Anpassungen der Grammatikregeln übernommen 2023-01-17 06:34:39 +01:00
luca9913
b0bec83900 workaround für java 17/19 probleme & paket ergänzt 2023-01-17 06:28:19 +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
luca9913
0ee3117d6e Test für Java17 Grammatik-Konstrukte hinzugefügt 2023-01-11 17:43:08 +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
luca9913
a7dc943692 Merge remote-tracking branch 'origin/bigRefactoring' into patternMatching 2022-12-04 21:20:09 +01:00
luca9913
4b6d69d748 Antlr-Grammatik angepasst, um syntaxtree-Klassen zu matchen 2022-12-04 21:17:39 +01:00
luca9913
1145f010c6 Referenzen auf Parser-Klassen von Java8 zu Java17 umbenannt 2022-12-04 21:15:36 +01:00
luca9913
d89e414ca7 Alte Java8- durch neue Java17-Grammatik ersetzt 2022-12-03 22:54:22 +01:00
luca9913
58cd490639 rootDirectory GeneralParserTest, dep. Klasse JavaTXParser 2022-12-01 22:20: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
luca9913
df3e2b55f9 Grammatik-Regeln für "instanceof-PatternMatching" eingefügt 2022-11-24 22:33:23 +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
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