1
0

Compare commits

..

1393 Commits

Author SHA1 Message Date
Till Schnell
26ae463e96 Improve to SC generation 2021-08-30 18:37:14 +02:00
Till Schnell
2e1e69df9a correct naming 2021-07-24 15:39:05 +02:00
Till Schnell
0e8012c132 resolved the todo 2021-06-11 23:26:25 +02:00
Till Schnell
68394565b5 correct typo 2021-06-02 11:00:52 +02:00
Till Schnell
c3b17a8f2f Add git ignore 2021-05-27 12:16:18 +02:00
JanUlrich
423cf8b9d2 Fix Object has null Constructor 2021-05-27 12:09:46 +02:00
JanUlrich
87fb9e5a33 merge 2021-05-27 11:46:32 +02:00
Till Schnell
df6debec4f Merge branch 'inferWildcards' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into inferWildcards 2021-05-26 21:20:51 +02:00
Till Schnell
59177e09ad add 2021-05-26 21:19:51 +02:00
Till Schnell
a9281a0db2 add filter for stuff in ast 2021-05-26 21:19:39 +02:00
Till Schnell
fe36b34a80 Add tests for source code gen 2021-05-26 20:59:25 +02:00
Till Schnell
d3a18887c3 ignore test output 2021-05-26 20:58:29 +02:00
Till Schnell
14821575bd Add implementation of source code manipulation 2021-05-26 20:57:14 +02:00
JanUlrich
c1519783ba Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into inferWildcards 2021-05-25 15:45:32 +02:00
JanUlrich
53bbf3c511 Merge bigRefactoring 2021-05-25 15:45:23 +02:00
pl@gohorb.ba-horb.de
48964d57ad 2
new file:   README_aktuelle_Branches
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/type/GenericRefType.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2021-05-25 15:32:11 +02:00
JanUlrich
41492e53ca Modify Testcase for Unresolved Constraint Exception 2021-05-21 10:24:43 +02:00
pl@gohorb.ba-horb.de
18d9edfeea modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
new file:   src/test/java/insertGenerics/TestVectorArg.java
	modified:   src/test/resources/bytecode/javFiles/Fac.jav
	new file:   src/test/resources/insertGenericsJav/TestVectorArg.jav
2021-05-21 09:52:22 +02:00
Till Schnell
74b9b024ee Reformat 2021-05-20 11:58:07 +02:00
Till Schnell
97483714e7 Add example for lib function 2021-05-20 11:46:50 +02:00
Till Schnell
a7b9c2a4ee Add generate BC Code Test 2021-05-10 18:10:19 +02:00
Till Schnell
fd7628cb40 Simplify generateConstraints 2021-05-10 18:02:23 +02:00
Till Schnell
76a291ab41 Fixed a Bug for a null Pointer Exception 2021-05-01 14:38:44 +02:00
Till Schnell
c5c8ffeed1 Correct gernation of oder constraints 2021-04-27 17:54:31 +02:00
Till Schnell
ba9335e2f6 Correct matcher 2021-04-27 17:54:10 +02:00
Till Schnell
c098a0a1b0 extract duplicate code to a separate method 2021-04-25 11:34:25 +02:00
Till Schnell
cfce2f55ac Add generation of wildcard constraints for generic types in source 2021-04-25 11:23:12 +02:00
Till Schnell
4009a28333 add expected type infer results. Enables gernation of bytecode 2021-04-24 14:14:19 +02:00
pl@gohorb.ba-horb.de
1b9e824b86 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-04-19 16:18:31 +02:00
pl@gohorb.ba-horb.de
b40cb49b9f In PairTPHsmallerTPH origPair eingefuegt, was das OriginalPair darstellt,
entweder vor oder waehrend der Unikation

	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	new file:   src/main/java/de/dhbwstuttgart/typeinference/result/PairNoResult.java
noetig da als oriPairs auch Paare nicht solved form vorkommen koennen

	modified:   src/main/java/de/dhbwstuttgart/typeinference/result/PairTPHsmallerTPH.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/result/ResultPairVisitor.java
2021-04-19 14:22:40 +02:00
Till Schnell
f3dc0cbeb7 Add diamond expression 2021-04-16 19:34:49 +02:00
Till Schnell
cd2f030ac6 remove unused testcase 2021-04-14 10:50:01 +02:00
Till Schnell
f548548788 Add test case for param types 2021-04-14 10:48:40 +02:00
Till Schnell
5cf41101bf Only replace refType occurs in MethodReturn, Parameter, Field and Local
Var
2021-04-14 10:18:56 +02:00
Till Schnell
e139f8c867 Add Test for Void 2021-04-14 10:18:15 +02:00
Till Schnell
5a151a965c Add new test classes 2021-04-13 11:57:10 +02:00
pl@gohorb.ba-horb.de
be9ee49878 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	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/syntaxtree/statement/Statement.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/Constraint.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
2021-04-13 10:03:48 +02:00
Till Schnell
e5f03369cc Test via assert of amount of generated constraints 2021-04-13 09:14:17 +02:00
Till Schnell
f698c967c0 Delete outdated test class 2021-04-10 11:24:02 +02:00
Till Schnell
1509e21214 Add Test for MapNested 2021-04-10 11:23:34 +02:00
Till Schnell
50c05064c7 Add Test for map 2021-04-10 11:22:38 +02:00
Till Schnell
6458a06293 Add Test for nested 2021-04-10 11:21:49 +02:00
Till Schnell
a984e455e4 Add Test for single 2021-04-10 11:20:36 +02:00
Till Schnell
19c9f648a8 Add Testclass for fields 2021-04-10 11:19:15 +02:00
Till Schnell
077bd62b92 Introduce ? extends to the map of TPH. This should prevent an editing 2021-04-10 11:09:16 +02:00
Till Schnell
de62df00e0 correct test oputput 2021-04-10 10:42:58 +02:00
Till Schnell
78e3b76dc3 make test functions static 2021-04-10 10:42:28 +02:00
Till Schnell
c627f9de60 Split the single testcase to two 2021-04-10 10:40:58 +02:00
Till Schnell
ff92807b83 Add JavaDoc 2021-04-10 10:33:46 +02:00
Till Schnell
1043b3f55f remove a test 2021-04-09 20:31:40 +02:00
Till Schnell
88440b873a extract generation and merge to a static utility function 2021-04-09 20:25:10 +02:00
Till Schnell
4ca0e1e5f6 Add a child class of the compiler to implement the wildcard infer
algorithm
2021-04-09 20:13:15 +02:00
Till Schnell
cb28405fe1 made foreach over map not entry set 2021-04-09 20:04:58 +02:00
pl@gohorb.ba-horb.de
3363037854 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
Neue Methode addTph

	modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
Methodcall-Steatements mit Void als Returntyp
2021-04-09 09:15:10 +02:00
Till Schnell
c7f91724a6 remove rawtypes 2021-04-08 18:54:16 +02:00
Till Schnell
11b63e0a5d remove raw types and add java doc 2021-04-08 18:52:33 +02:00
Till Schnell
5f7829191c Improve log of test 2021-04-08 18:45:14 +02:00
Till Schnell
044d9a1860 improve log of replacement of tph 2021-04-08 18:37:42 +02:00
Till Schnell
6fcbca1187 remove useless imports 2021-04-08 18:31:14 +02:00
Till Schnell
572f41ffd4 Add tests for different classes 2021-04-08 18:31:02 +02:00
Till Schnell
e0f7f95bed remove unused test rsrc 2021-04-08 18:17:02 +02:00
Till Schnell
78c365a7be Add testclass for single wildcard test 2021-04-08 18:16:52 +02:00
Till Schnell
bea072689b Fix bug in test class 2021-04-08 18:08:54 +02:00
Till Schnell
81697eee64 Add iteration and replacement of nested type parameters 2021-04-08 18:08:38 +02:00
Till Schnell
c474abd2bd add test for nested types 2021-04-08 18:01:52 +02:00
Till Schnell
6dd02a654b Add JavaDoc 2021-04-08 17:57:41 +02:00
Till Schnell
e5d5376ce9 remove test case of the old approche 2021-04-08 11:30:49 +02:00
Till Schnell
0cdeee9e0d add combination of constraints 2021-04-08 11:30:07 +02:00
pl@gohorb.ba-horb.de
c8d4301e5e modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
Alis Ansatz zur Bytecodeerzeugung eingesetzt

	modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGeneratorTypes/MethodAndConstraints.java
ToString ausprogramnmiert

	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
Einige bytecode-Usecases laufen noch nicht (z.B. Put.jav) Erste Ansaetze versucht.
Muss noch erweitert werden.
2021-04-08 09:56:49 +02:00
Till Schnell
98b3ad1517 add replacement of param types with tph and generate consolidated
constraints
2021-04-06 18:44:30 +02:00
Till Schnell
b59aabeea5 generate the constraints for all tph 2021-04-06 18:38:01 +02:00
Till Schnell
26953665c9 search for all generics in ast 2021-04-06 18:26:10 +02:00
Till Schnell
465f82e967 Add generation of constraints for ref type 2021-04-06 18:25:04 +02:00
Till Schnell
ce8b19acae Remove visitors for the Oracle AST approche 2021-04-06 18:24:47 +02:00
Till Schnell
7dfe546999 return the source files 2021-04-06 18:24:05 +02:00
Till Schnell
c96c56e882 add comments 2021-04-06 17:23:04 +02:00
Till Schnell
3e57a64f9c add comment 2021-04-06 17:22:27 +02:00
Till Schnell
e8539a84fd Add array constructor 2021-04-04 15:40:16 +02:00
Till Schnell
0551d25fbf Add test for JavaTX constraints generation 2021-04-04 15:39:57 +02:00
pl@gohorb.ba-horb.de
b46415e45a modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
reset Typevars-Namen wieder rausgenommen

	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/NameGenerator.java

	modified:   src/test/java/insertGenerics/TestAny.java
	modified:   src/test/java/insertGenerics/TestClassField.java
	modified:   src/test/java/insertGenerics/TestContraVariant.java
	modified:   src/test/java/insertGenerics/TestGGFinder.java
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
	modified:   src/test/java/insertGenerics/TestMutualRecursion.java
	modified:   src/test/java/insertGenerics/TestReturnVar.java
	modified:   src/test/java/insertGenerics/TestSecondLineOfClassConstraints.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics2.java
	modified:   src/test/java/insertGenerics/TestThreeArgs.java
	modified:   src/test/java/insertGenerics/TestTwoArgs.java
	modified:   src/test/java/insertGenerics/TestTwoArgs2.java
	modified:   src/test/java/insertGenerics/TestTwoCalls.java
	modified:   src/test/java/insertGenerics/TestVector.java
	modified:   src/test/java/insertGenerics/TestVoidMeth.java
Reset Typevar-Namen in @BeforeClass eingefuegt
2021-04-01 19:16:57 +02:00
pl@gohorb.ba-horb.de
bbfd8aa203 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-04-01 17:13:06 +02:00
pl@gohorb.ba-horb.de
0cb1f244bc modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
Tests insertGenerics funtionieren
	modified:   src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/NameGenerator.java
reset-Funktion eingefuegt, damit bei jedem Test die Namen der TypepLaceholdert von vorne beginnen

	modified:   src/test/java/insertGenerics/TestContraVariant.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestThreeArgs.java
2021-04-01 16:59:14 +02:00
pl@gohorb.ba-horb.de
9be64e4905 modified: src/main/java/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
	modified:   src/test/java/insertGenerics/TestContraVariant.java
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
	modified:   src/test/java/insertGenerics/TestTransitiveClosure.java
Transitiv Closure auf new umgestellt
2021-03-31 18:18:16 +02:00
pl@gohorb.ba-horb.de
d1ad6e218a modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestTwoArgs.java
2021-03-29 10:45:21 +02:00
pl@gohorb.ba-horb.de
bf8d4fe647 new file: src/test/resources/insertGenericsJav/TestContraVariant.jav
new file:   src/test/resources/insertGenericsJav/TestMutualRecursionWithField2.jav
	new file:   src/test/resources/insertGenericsJav/TestMutualRecursionWithField3.jav
2021-03-29 10:00:04 +02:00
pl@gohorb.ba-horb.de
e229093017 new file: src/test/java/insertGenerics/TestContraVariant.java
modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	new file:   src/test/java/insertGenerics/TestThreeArgs.java
2021-03-29 09:57:45 +02:00
Till Schnell
cbe2d7b0f5 extract test of unit 2021-03-27 18:06:28 +01:00
Till Schnell
59b45b5f87 Add test method 2021-03-27 18:04:28 +01:00
Till Schnell
ad7e7ec42b Add the placeholder mapping 2021-03-27 18:01:28 +01:00
Till Schnell
9d2c85d686 add get of constraints 2021-03-27 17:40:01 +01:00
Till Schnell
63b4dbcc10 correct test methods visibility 2021-03-27 17:39:42 +01:00
Till Schnell
ca816fba85 Add JavaCompiler parsing 2021-03-27 17:29:37 +01:00
pl@gohorb.ba-horb.de
66a25a56c0 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-26 20:55:25 +01:00
AluAli
af223a4d8a modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-26 20:53:24 +01:00
pl@gohorb.ba-horb.de
14cb2c8909 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-26 20:19:16 +01:00
AluAli
080eb2f6f3 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-26 20:18:45 +01:00
pl@gohorb.ba-horb.de
d8876457db Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-26 20:07:48 +01:00
AluAli
32e9ce92a6 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestTwoArgs.java
2021-03-26 19:58:38 +01:00
pl@gohorb.ba-horb.de
3ad9007336 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-26 19:27:33 +01:00
AluAli
da2a17c794 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
2021-03-26 18:33:36 +01:00
pl@gohorb.ba-horb.de
345b03b775 modified: src/test/java/insertGenerics/TestTPHsAndGenerics.java 2021-03-26 17:27:27 +01:00
pl@gohorb.ba-horb.de
ff93b0967e 2
modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
2021-03-26 16:27:24 +01:00
pl@gohorb.ba-horb.de
db149eb588 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
klein Korrekturen

	modified:   src/test/java/insertGenerics/TestTwoArgs2.java
List -> Set
2021-03-26 16:15:18 +01:00
AluAli
f5f639c0f7 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-26 15:24:15 +01:00
AluAli
a4c38b2bb0 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-26 12:30:13 +01:00
AluAli
e3625cb306 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestTwoCalls.java
2021-03-26 12:29:40 +01:00
pl@gohorb.ba-horb.de
86603ae343 modified: src/main/java/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java
equals korrigiert

	modified:   src/test/java/insertGenerics/TestGGFinder.java
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
	modified:   src/test/java/insertGenerics/TestMutualRecursion.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestTwoArgs.java
	modified:   src/test/java/insertGenerics/TestTwoCalls.java
	modified:   src/test/java/insertGenerics/TestVector.java
List -> Set vollendet
2021-03-26 10:51:59 +01:00
pl@gohorb.ba-horb.de
d276c7c044 modified: src/main/java/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/ClassConstraint.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
toString wieder korrigiert

	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/MethodConstraint.java
	modified:   src/test/java/insertGenerics/TestAny.java
List -> Set
Bei allen anderen Tests fehlt es noch
2021-03-25 19:55:16 +01:00
pl@gohorb.ba-horb.de
91c075829b Merge branch 'generateTestConstraints' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-25 18:59:34 +01:00
pl@gohorb.ba-horb.de
705d0b6a73 renamed: src/test/java/insertGenerics/AllTests.java -> src/test/java/insertGenerics/TestMutualRecursion.java
modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestVector.java
Tests angepasst an die GeneratedGenerics
2021-03-25 18:56:38 +01:00
pl@gohorb.ba-horb.de
bc378f2fe9 modified: src/test/java/insertGenerics/AllTests.java
modified:   src/test/java/insertGenerics/TestTwoCalls.java
	modified:   src/test/java/insertGenerics/TestVector.java
2021-03-25 00:41:03 +01:00
pl@gohorb.ba-horb.de
e5816bac22 modified: src/test/java/insertGenerics/TestAny.java
modified:   src/test/java/insertGenerics/TestGGFinder.java
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestTwoArgs.java
	modified:   src/test/java/insertGenerics/TestTwoArgs2.java
Tests fuer GeneratedGenerics eingefuegt
2021-03-24 11:35:15 +01:00
pl@gohorb.ba-horb.de
8c6027645f modified: src/test/java/insertGenerics/TestLocalVarLambda.java
Alternative Typvarnamen eingefuegt.
2021-03-24 10:22:57 +01:00
pl@gohorb.ba-horb.de
e147a8ce85 toString geaendert, um Tests generieren zu koennen:
modified:   src/main/java/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/ClassConstraint.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/MethodConstraint.java

geaendert, um GenerateGenerics direkt teste zu koennen, sollte ggf. wieder rueckgaenig gemacht werden
	modified:   src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java

angepasset Tests:
	modified:   src/test/java/insertGenerics/TestLocalVarLambda.java
	modified:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	modified:   src/test/java/insertGenerics/TestTwoArgs.java
2021-03-23 12:02:58 +01:00
Till Schnell
54a2dbfedc add simple test 2021-03-22 17:47:35 +01:00
JanUlrich
07c1eeeb36 Recompile parser with ANTLR v4.8 2021-03-22 14:52:54 +01:00
AluAli
d08e598649 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-19 22:02:23 +01:00
AluAli
ba8df8b376 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-19 18:27:50 +01:00
AluAli
b147430fb6 kommentierte neue Regeln 2021-03-19 15:05:40 +01:00
AluAli
661fa53937 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-19 14:42:22 +01:00
AluAli
13144d0ac9 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-19 14:23:07 +01:00
AluAli
539cacef86 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-19 08:50:04 +01:00
JanUlrich
69a557f1f2 Fehlerhaften code entfernen 2021-03-18 11:39:07 +01:00
pl@gohorb.ba-horb.de
6e0e575524 new file: src/test/java/insertGenerics/TestLocalVarLambda.java 2021-03-15 11:27:31 +01:00
AluAli
55e44d62de modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-13 14:52:38 +01:00
AluAli
54de28c3f0 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-13 13:16:47 +01:00
AluAli
8e89c9b5e8 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-13 01:26:20 +01:00
AluAli
bb5692da8e modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-12 18:35:29 +01:00
pl@gohorb.ba-horb.de
f69554c6a1 equals in in Type eingefuegt 2021-03-12 18:29:51 +01:00
pl@gohorb.ba-horb.de
fbb7d82ef4 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-12 18:22:03 +01:00
pl@gohorb.ba-horb.de
4f1aadef60 modified: src/main/java/de/dhbwstuttgart/syntaxtree/type/RefTypeOrTPHOrWildcardOrGeneric.java 2021-03-12 18:21:46 +01:00
AluAli
4acb820202 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-12 17:08:40 +01:00
pl@gohorb.ba-horb.de
6862c91b73 modified: src/main/java/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java 2021-03-12 12:30:41 +01:00
AluAli
55ee8ab61a modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-12 11:43:55 +01:00
AluAli
af9943be28 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-03-05 21:47:22 +01:00
AluAli
f208432c54 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-03-05 20:18:48 +01:00
pl@gohorb.ba-horb.de
2ca4aad07d modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
2021-03-05 10:57:42 +01:00
AluAli
b99c022b50 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-03-05 09:12:19 +01:00
AluAli
d1a796f37b Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-03-05 00:32:33 +01:00
AluAli
31d7856afa modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-03-05 00:31:36 +01:00
pl@gohorb.ba-horb.de
b711dc72e0 new file: src/test/java/insertGenerics/AllTests.java 2021-03-04 18:58:33 +01:00
AluAli
d14f1d92c9 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-02-26 11:42:31 +01:00
pl@gohorb.ba-horb.de
ebb0803a38 new file: ../../../java/insertGenerics/TestTwoCalls.java
new file:   ../../../java/insertGenerics/TestVector.java
	new file:   ../../insertGenericsJav/TestLocalVarLambda.jav
	new file:   ../../insertGenericsJav/TestMutualRecursion.jav
	new file:   ../../insertGenericsJav/TestMutualRecursionWithField.jav
	new file:   ../../insertGenericsJav/TestThreeArgs.jav
	new file:   ../../insertGenericsJav/TestTwoCalls.jav
	new file:   ../../insertGenericsJav/TestVector.jav
2021-02-25 15:59:24 +01:00
pl@gohorb.ba-horb.de
60f2e3def4 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
2021-02-25 00:13:29 +01:00
pl@gohorb.ba-horb.de
7e35e09c47 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/Method.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/SourceFile.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
AndConstraints einer Methode in Methode.java und iin MethodAndTPH.java eingefuegt
	modified:   src/test/resources/insertGenericsJav/TestAny.jav
2021-02-19 13:58:48 +01:00
pl@gohorb.ba-horb.de
ab99889c3c modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Bei Return SMALLERDOT durch EQUALSDOT ersetzt
2021-02-16 16:52:53 +01:00
pl@gohorb.ba-horb.de
bbdf220324 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/Method.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/SourceFile.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
Pairs sammeln rueckgaengig gemacht
2021-02-16 16:27:17 +01:00
pl@gohorb.ba-horb.de
f2d6dae4c7 Letzer Stand mit Pair Bildug waehrend des Typvars sammeln 2021-02-16 15:29:24 +01:00
pl@gohorb.ba-horb.de
905dfd8a27 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-02-08 00:15:25 +01:00
pl@gohorb.ba-horb.de
5fb2d57d3b modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java 2021-02-07 09:47:25 +01:00
pl@gohorb.ba-horb.de
5b7fec660d modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java 2021-02-06 09:51:42 +01:00
pl@gohorb.ba-horb.de
5980f1c7b8 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
	modified:   ../../../java/constraintSimplify/FamilyOfGenerics.java
	modified:   ../../../java/insertGenerics/TestTPHsAndGenerics.java
2021-02-05 22:37:39 +01:00
pl@gohorb.ba-horb.de
f270686b3c modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/MethodAndTPH.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/AbstractASTWalker.java
	modified:   src/test/java/constraintSimplify/FamilyOfGenerics.java
2021-02-04 23:58:49 +01:00
pl@gohorb.ba-horb.de
92bc3d626c modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
SourceFile und nameToMeth ergaenzt

	modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   ../../../../main/java/de/dhbwstuttgart/syntaxtree/SourceFile.java
	  List<Method> getAllMethods() ergaenzty

	modified:   ../../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
           variance wird uebernommen

	modified:   ../../../../main/java/de/dhbwstuttgart/syntaxtree/type/TypePlaceholder.java
	   setVariance gefuegt.

	modified:   ../../../java/insertGenerics/TestTwoArgs.java
	modified:   ../../../java/insertGenerics/TestTwoArgs2.java
	modified:   ../../insertGenericsJav/TestTwoArgs.jav
	modified:   ../../insertGenericsJav/TestTwoArgs2.jav
2021-02-03 16:55:12 +01:00
pl@gohorb.ba-horb.de
ef723e4103 modified: ../../../../main/java/de/dhbwstuttgart/syntaxtree/AbstractASTWalker.java
Zusaetzliche Typvariablen weider entfernt
2021-02-01 16:56:33 +01:00
AluAli
9f06118138 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-01-31 20:54:03 +01:00
AluAli
a0c92c2d9d Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-31 20:34:18 +01:00
pl@gohorb.ba-horb.de
c6d896fa3b modified: ../../../main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   ../../java/insertGenerics/TestGGFinder.java
	modified:   TestGGFinder.jav
2021-01-30 22:06:27 +01:00
pl@gohorb.ba-horb.de
b942e508fc Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-29 22:49:07 +01:00
pl@gohorb.ba-horb.de
f33002e998 new file: src/test/java/insertGenerics/TestTwoArgs.java
new file:   src/test/resources/insertGenericsJav/TestTwoArgs.jav
2021-01-29 22:48:20 +01:00
AluAli
2dc4331afb modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-29 20:45:54 +01:00
AluAli
ebf6f0bbe3 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-29 20:41:43 +01:00
AluAli
dc62b72f7f modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-01-29 19:36:17 +01:00
AluAli
42bb787195 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-29 18:22:39 +01:00
AluAli
cd135c3962 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-29 18:22:04 +01:00
pl@gohorb.ba-horb.de
59adfd6c59 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-29 18:13:09 +01:00
pl@gohorb.ba-horb.de
604300a07e modified: src/main/java/de/dhbwstuttgart/syntaxtree/AbstractASTWalker.java
new file:   src/test/java/insertGenerics/TestTwoArgs.java
	new file:   src/test/java/insertGenerics/TestTwoArgs2.java
	new file:   src/test/resources/insertGenericsJav/TestTwoArgs.jav
	new file:   src/test/resources/insertGenericsJav/TestTwoArgs2.jav
2021-01-29 18:12:44 +01:00
AluAli
0bc0e4c722 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
deleted:    src/test/java/insertGenerics/MethodsTest.java
	deleted:    src/test/java/insertGenerics/TryTest.java
2021-01-29 18:03:43 +01:00
pl@gohorb.ba-horb.de
ebfc3dedbe Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-29 12:29:24 +01:00
pl@gohorb.ba-horb.de
e07e5e9b42 modified: src/main/java/de/dhbwstuttgart/syntaxtree/AbstractASTWalker.java 2021-01-29 12:29:08 +01:00
AluAli
8fb7a23279 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
	modified:   src/test/java/insertGenerics/TestExample42_allInOneMethod.java
2021-01-29 12:24:16 +01:00
pl@gohorb.ba-horb.de
8706882388 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
new file:   src/test/java/insertGenerics/TestGGFinder.java
2021-01-29 10:55:04 +01:00
pl@gohorb.ba-horb.de
918d0db799 modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java 2021-01-29 09:25:10 +01:00
pl@gohorb.ba-horb.de
4b99b38b47 Merge branch 'bigRefactoringUnifyComment' into bytecodeGenericsSecond 2021-01-28 16:18:42 +01:00
pl@gohorb.ba-horb.de
1236ca2953 modified: src/main/java/de/dhbwstuttgart/syntaxtree/AbstractASTWalker.java
modified:   src/test/resources/insertGenericsJav/TestGGFinder.jav
2021-01-28 16:12:17 +01:00
AluAli
1348a7a4b6 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-01-23 00:07:05 +01:00
AluAli
3f4aa7bbd5 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
	modified:   src/test/java/insertGenerics/TestExample42_allInOneMethod.java
2021-01-22 23:49:25 +01:00
AluAli
bb900af6bf modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-01-22 15:52:14 +01:00
AluAli
cfacc6235c modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-01-22 15:13:03 +01:00
AluAli
1a135ebe5c modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2021-01-22 15:07:03 +01:00
AluAli
c15953bbac modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-18 19:15:36 +01:00
AluAli
404bbbf746 Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-18 19:11:33 +01:00
AluAli
a8f04a25cd modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-18 19:10:04 +01:00
pl@gohorb.ba-horb.de
1242252cde modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-18 13:46:06 +01:00
pl@gohorb.ba-horb.de
5e9e774d1e Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-18 13:41:44 +01:00
pl@gohorb.ba-horb.de
bd6d74c74d modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-18 13:40:20 +01:00
AluAli
3d8275c676 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-16 16:34:31 +01:00
pl@gohorb.ba-horb.de
3ef15d814d Merge branch 'bytecodeGenericsSecond' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenericsSecond 2021-01-16 09:16:25 +01:00
pl@gohorb.ba-horb.de
842b85cfd7 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-16 09:12:34 +01:00
AluAli
fc8f11ebb1 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
new file:   src/test/java/insertGenerics/TestAny.java
	new file:   src/test/java/insertGenerics/TestTPHsAndGenerics2.java
	new file:   src/test/resources/insertGenericsJav/TestAny.jav
	modified:   src/test/resources/insertGenericsJav/TestReturnVar.jav
	modified:   src/test/resources/insertGenericsJav/TestSecondLineOfClassConstraints.jav
	new file:   src/test/resources/insertGenericsJav/TestTPHsAndGenerics2.jav
2021-01-16 00:35:12 +01:00
AluAli
eb97dd810f modified: src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
new file:   src/test/java/insertGenerics/TestClassField.java
	new file:   src/test/java/insertGenerics/TestReturnVar.java
	new file:   src/test/java/insertGenerics/TestSecondLineOfClassConstraints.java
	new file:   src/test/java/insertGenerics/TestTPHsAndGenerics.java
	new file:   src/test/java/insertGenerics/TestVoidMeth.java
	new file:   src/test/resources/insertGenericsJav/TestClassField.jav
	new file:   src/test/resources/insertGenericsJav/TestReturnVar.jav
	new file:   src/test/resources/insertGenericsJav/TestSecondLineOfClassConstraints.jav
	new file:   src/test/resources/insertGenericsJav/TestTPHsAndGenerics.jav
	new file:   src/test/resources/insertGenericsJav/TestVoidMeth.jav
2021-01-15 13:18:09 +01:00
AluAli
ab850edae8 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2021-01-15 01:12:13 +01:00
pl@gohorb.ba-horb.de
95f48ffcb7 modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
ckeckA druch checkNoContradiction ersetzt
2021-01-14 15:29:06 +01:00
pl@gohorb.ba-horb.de
163f0f3047 modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
vor Loeschung von checkA
2021-01-14 14:59:20 +01:00
pl@gohorb.ba-horb.de
1cf22d2602 modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
remaingSet entfernt
fstElems in oneElems umbenannt
2021-01-14 11:27:19 +01:00
pl@gohorb.ba-horb.de
d8ac25234f modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
vor entfernung von Remaining
2021-01-14 10:38:32 +01:00
pl@gohorb.ba-horb.de
e00d76ce3b Occurs-Check mit Abbruch eingebaut
finalResult zum Attribut der Klasse gemacht
2021-01-13 19:39:01 +01:00
pl@gohorb.ba-horb.de
fec83c3a62 modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Fuer den Receiver wieder = eingefuegt.

	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Kommentierung begonnen
2021-01-12 21:27:44 +01:00
AluAli
3f5f51df5b modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2021-01-08 22:05:09 +01:00
AluAli
dce7ac8262 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
new file:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/PairMethodAndConstraint.java
	modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2021-01-08 21:43:06 +01:00
AluAli
88175f8b48 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
2021-01-08 15:44:07 +01:00
AluAli
2f37bb7313 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-12-29 01:03:55 +01:00
AluAli
a04316f629 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
	modified:   src/test/java/insertGenerics/TestExample42_allInOneMethod.java
2020-12-29 00:22:36 +01:00
AluAli
3b062de612 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
	modified:   src/test/java/insertGenerics/TestExample42_allInOneMethod.java
2020-12-28 15:37:45 +01:00
AluAli
c32ef1e31f modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestExample42.java
	new file:   src/test/java/insertGenerics/TestExample42_allInOneMethod.java
2020-12-28 00:29:08 +01:00
AluAli
5ed6a4617a modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2020-12-22 16:11:24 +01:00
AluAli
7139a1709e modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-12-22 16:08:01 +01:00
AluAli
e9bcea4b9e modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2020-12-21 14:06:47 +01:00
AluAli
d671e74fcf modified: src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java 2020-12-04 16:44:46 +01:00
AluAli
c2f0368d2e modified: src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java 2020-12-04 14:59:09 +01:00
AluAli
d06c6abb5a modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/PositionFinder.java
	modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
2020-12-04 14:25:37 +01:00
AluAli
f7101da621 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
new file:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/PairTphMethod.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/PositionFinder.java
	modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-12-04 13:17:31 +01:00
AluAli
c0c24eed3b modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-12-04 11:00:12 +01:00
AluAli
af36b43786 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2020-11-30 12:32:35 +01:00
AluAli
997d3b9bea modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-11-27 15:52:31 +01:00
AluAli
ed7cc55139 modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
2020-11-27 15:29:07 +01:00
AluAli
29a7f2e7fb modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-11-27 14:10:31 +01:00
AluAli
4ac67120a4 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-11-13 17:24:41 +01:00
AluAli
f0db6cb901 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java 2020-11-13 16:22:23 +01:00
AluAli
2e5581ab6e modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-11-13 15:29:01 +01:00
AluAli
e8ac8e3c5a modified: src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java 2020-11-13 13:50:36 +01:00
AluAli
a4bc49f5c4 modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
2020-11-13 00:43:49 +01:00
AluAli
9cf7cec37b modified: src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/ClassConstraint.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/ClassConstraint.java
	renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java
	renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/GGenerics.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/GGenerics.java
	renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/MethodConstraint.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/MethodConstraint.java
	renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/PositionFinder.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/PositionFinder.java
	renamed:    src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/preGGenerics.java -> src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/preGGenerics.java
	modified:   src/test/java/constraintSimplify/FamilyOfGenerics.java
	modified:   src/test/java/insertGenerics/FamilyOfGeneratedGenericsTest.java
	modified:   src/test/java/insertGenerics/TestExample42.java
	modified:   src/test/java/insertGenerics/TestTransitiveClosure.java
2020-11-06 18:13:21 +01:00
JanUlrich
531b1ccd22 Merge branch 'bytecodeGenerics' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenerics 2020-11-06 16:34:42 +01:00
JanUlrich
7ced6338cb Add Test case for FamilyOfGenerics 2020-11-06 16:34:32 +01:00
AluAli
0550f73ef7 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java 2020-11-06 16:33:05 +01:00
JanUlrich
b91aadf24a Merge branch 'bytecodeGenerics' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenerics 2020-11-06 15:26:25 +01:00
AluAli
70b6c35731 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
modified:   src/test/java/insertGenerics/TestExample42.java
	new file:   src/test/java/insertGenerics/TestTransitiveClosure.java
2020-11-06 15:22:36 +01:00
AluAli
e617a0911a modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/ClassConstraint.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
2020-11-06 11:51:04 +01:00
AluAli
7cf46b02b7 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java 2020-11-06 11:24:21 +01:00
JanUlrich
8cf57ba35b Merge branch 'bytecodeGenerics' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenerics 2020-11-06 10:45:50 +01:00
AluAli
486d7d9011 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java 2020-11-06 00:58:04 +01:00
AluAli
8402d18f83 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
new file:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/PositionFinder.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   src/test/java/constraintSimplify/FamilyOfGenerics.java
	new file:   src/test/java/insertGenerics/TestExample42.java
2020-11-01 14:09:27 +01:00
JanUlrich
8d25920a87 Add Hashcode methods 2020-10-30 15:44:46 +01:00
AluAli
ab9e9e16bd Merge branch 'bytecodeGenerics' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenerics 2020-10-30 10:52:39 +01:00
JanUlrich
b45964ed5f Template für FamilyOfGenerics Test 2020-10-30 10:52:03 +01:00
AluAli
0ecd3916f8 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/ClassConstraint.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
2020-10-30 09:41:09 +01:00
AluAli
c86fe95da5 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java 2020-10-29 19:43:50 +01:00
AluAli
d677d053d6 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
2020-10-29 19:40:46 +01:00
AluAli
5060cca6db modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/ClassConstraint.java
modified:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/MethodConstraint.java
	modified:   src/main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	new file:   src/test/java/insertGenerics/MethodsTest.java
	new file:   src/test/java/insertGenerics/TryTest.java
	new file:   src/test/resources/insertGenericsJav/TestGGFinder.jav
2020-10-23 10:42:24 +02:00
AluAli
7900449897 modified: src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java 2020-10-23 00:11:54 +02:00
AluAli
f6154b8f2c deleted: src/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
new file:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/ClassConstraint.java
	new file:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
	renamed:    src/de/dhbwstuttgart/bytecode/gGenericsAli/GGenerics.java -> src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/GGenerics.java
	new file:   src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/MethodConstraint.java
	renamed:    src/de/dhbwstuttgart/bytecode/gGenericsAli/preGGenerics.java -> src/main/java/de/dhbwstuttgart/bytecode/gGenericsAli/preGGenerics.java
2020-10-22 22:13:05 +02:00
pl@gohorb.ba-horb.de
1d7c894f39 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java 2020-10-16 15:55:22 +02:00
AluAli
61f35f8f8b Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecodeGenerics 2020-10-16 15:37:53 +02:00
AluAli
1e7c25805e new file: src/de/dhbwstuttgart/bytecode/gGenericsAli/FamilyOfGeneratedGenerics.java
new file:   src/de/dhbwstuttgart/bytecode/gGenericsAli/GGenerics.java
	new file:   src/de/dhbwstuttgart/bytecode/gGenericsAli/preGGenerics.java
2020-10-16 15:13:50 +02:00
pl@gohorb.ba-horb.de
5a00b70ea8 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/genericsGenerator/GeneratedGenericsFinder.java
	modified:   ../../../java/AllgemeinTest.java
	modified:   ../../bytecode/javFiles/FieldTphConsMeth.jav
2020-10-16 14:54:36 +02:00
JanUlrich
6e91e5c683 Merge addPackages, simplifyRes und bigRefactoring 2020-10-01 10:11:20 +02:00
JanUlrich
e4908557f4 Merge addPackages and simplifyRes and clear project 2020-09-30 03:45:01 +02:00
JanUlrich
ed550b1097 Aufräumen 2020-09-30 03:32:57 +02:00
JanUlrich
5fa1cf11ef Merge branch 'simplifyRes' into bigRefactoring 2020-09-25 18:48:28 +02:00
JanUlrich
941a3bed66 Add ANTLR parser generator output to gitignore 2020-09-17 10:58:44 +02:00
pl@gohorb.ba-horb.de
653901ef32 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
alten Code geloescht
2020-05-13 14:07:22 +02:00
pl@gohorb.ba-horb.de
2e03b5b10c modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
auskommentierten Code geloescht
2020-05-12 17:35:28 +02:00
pl@gohorb.ba-horb.de
670e3ed99f modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
nextSetasListRest = oup.minElements(nextSetasListRest);
	nextSetasListRest = oup.maxElements(nextSetasListRest);

eingefuegt
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
2020-05-12 17:25:04 +02:00
pl@gohorb.ba-horb.de
c8ece0a010 new file: ../../../java/bytecode/InheritTest2.java
modified:   AA.jav
	modified:   CC.jav
	new file:   Inherit2.jav
2020-05-12 10:02:41 +02:00
pl@gohorb.ba-horb.de
c27e1fa4e1 modified: ../../../java/bytecode/InheritTest.java
modified:   Inherit.jav
Funktioniert soweit
2020-05-11 17:54:37 +02:00
pl@gohorb.ba-horb.de
b3b25b7869 Merge branch 'addPackages' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into addPackages 2020-05-11 13:47:16 +02:00
pl@gohorb.ba-horb.de
9240b0d163 Changes to be committed:
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/test/java/bytecode/InheritTest.java
	modified:   src/test/resources/bytecode/javFiles/Inherit.jav
2020-05-11 13:45:19 +02:00
JanUlrich
a0a813f87c Inherit Test update 2020-05-08 11:35:21 +02:00
JanUlrich
60b182b9b1 Kleiner Hack für Inherit test 2020-05-08 11:26:07 +02:00
pl@gohorb.ba-horb.de
8e2d4e1c70 modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
new file:   ../src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingExtend.java
2020-05-08 11:04:05 +02:00
pl@gohorb.ba-horb.de
907ab2fcec modified: ../../../java/bytecode/InheritTest.java
modified:   ../../bytecode/javFiles/Inherit.jav
2020-05-08 10:19:00 +02:00
pl@gohorb.ba-horb.de
eb27003515 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/Node.java
Fehler in der Transitivaet der Finit Closure gefixt

	modified:   ../../../java/bytecode/InheritTest.java
	modified:   ../../bytecode/javFiles/AA.jav
	modified:   ../../bytecode/javFiles/CC.jav
	modified:   ../../bytecode/javFiles/Inherit.jav
Noch Probl;em in der Reflections
2020-05-07 16:29:00 +02:00
pl@gohorb.ba-horb.de
71c801c19c modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2020-05-06 19:25:19 +02:00
pl@gohorb.ba-horb.de
ba750187ba modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../src/main/java/de/dhbwstuttgart/typeinference/constraints/Constraint.java
	modified:   ../src/test/java/bytecode/InheritTest.java
	new file:   ../src/test/resources/bytecode/javFiles/AA.jav
	new file:   ../src/test/resources/bytecode/javFiles/BB.jav
	new file:   ../src/test/resources/bytecode/javFiles/CC.jav
	new file:   ../src/test/resources/bytecode/javFiles/DD.jav
	modified:   ../src/test/resources/bytecode/javFiles/Inherit.jav
Inherit funktioniert noch nicht ganz
2020-05-06 19:22:08 +02:00
pl@gohorb.ba-horb.de
ccf5df1f1e new file: ../../../java/bytecode/InheritTest.java
modified:   ../../../java/bytecode/PutTest.java
	new file:   ../../bytecode/javFiles/Inherit.jav
2020-05-05 18:43:39 +02:00
pl@gohorb.ba-horb.de
3de735ebe3 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
new file:   ../../../java/bytecode/PutTest.java
	new file:   ../../bytecode/javFiles/Put.jav
2020-05-05 18:06:05 +02:00
pl@gohorb.ba-horb.de
fd3d4e97a1 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
isInherited für ? extends wieder mit gleich gesetzt

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Variance = -1 und Oderconstraints Vererbung eingebaut
Variance = 0 min/max eingebaut
2020-05-05 17:14:52 +02:00
pl@gohorb.ba-horb.de
6deeb4105f modified: ../../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/constraints/Constraint.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Fuer Variance = 1 neue Version korrekt, konnte aber noch Fehler entbhalten
2020-05-04 17:02:15 +02:00
pl@gohorb.ba-horb.de
9d4980d9a1 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/TYPEStmt.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/model/OrderingUnifyPair.java
2020-05-01 22:55:25 +02:00
pl@gohorb.ba-horb.de
b83e2c10e3 modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Call-graph weiter umgesetzt, aber noch Fehler in MatrixOP
2020-04-27 22:17:37 +02:00
pl@gohorb.ba-horb.de
4f10e789d4 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/Method.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/ASTFactory.java
	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/assumptions/MethodAssumption.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/typeAlgo/TYPEStmt.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IRuleSet.java
	modified:   src/test/java/AllgemeinTest.java
 Erster Ansatz Call-Graph zu beruecksichtigen
2020-04-24 23:05:42 +02:00
pl@gohorb.ba-horb.de
8b9f0d6376 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
log-Files abgeschaltet
	modified:   src/test/java/AllgemeinTest.java
File ergaenzt
2020-04-20 14:29:15 +02:00
pl@gohorb.ba-horb.de
723eca8658 modified: src/test/java/typeinference/JavaTXCompilerTest.java
modified:   src/test/resources/javFiles/IfTest.jav
	modified:   src/test/resources/javFiles/ListenerOverload.jav
	modified:   src/test/resources/javFiles/fc.jav
2020-04-14 18:28:16 +02:00
pl@gohorb.ba-horb.de
071f4cd9ca modified: src/test/java/typeinference/JavaTXCompilerTest.java
modified:   src/test/java/typeinference/Meth_GenTest.java
	modified:   src/test/java/typeinference/UnifyTest.java
Tests angepasst
2020-04-14 16:47:25 +02:00
pl@gohorb.ba-horb.de
cdc6a3f2dd Merge branch 'simplifyRes' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into simplifyRes 2020-04-13 16:23:09 +02:00
pl@gohorb.ba-horb.de
cc6156695d modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
INSTANCE auf sich selber geloescht
2020-04-13 16:22:10 +02:00
pl@gohorb.ba-horb.de
1b6af9ab7e modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typedeployment/TypeInsertFactory.java
	modified:   src/main/java/de/dhbwstuttgart/typedeployment/TypeInsertPlacer.java
Bug 180 - Andere Einsetzung als im Bytecode geloest
2020-04-13 16:08:42 +02:00
michael
0861f74ce7 Bug 171: Beim Typeinsert werden Marker jetzt richtig verschoben. 2020-04-02 22:20:31 +02:00
pl@gohorb.ba-horb.de
3f919be1bf new file: ../../../java/AllgemeinTest.java
new file:   ../../../java/bytecode/mathStrucMatrixOPTest.java.txt
	new file:   ../../../java/bytecode/mathStrucVectorAddTest.java.txt
	new file:   ../../../java/packages/mathStrucMatrixOPTest.java.txt
	new file:   ../../AllgemeinTest/FCTest1.jav
	new file:   ../../AllgemeinTest/FCTest2.jav
	new file:   ../../AllgemeinTest/FCTest3.jav
	new file:   ../../AllgemeinTest/GenTest.jav
	new file:   ../../AllgemeinTest/Generics.jav
	new file:   ../../AllgemeinTest/OverloadingMain.jav
	new file:   ../../AllgemeinTest/Overloading_Generics.jav
	new file:   ../../AllgemeinTest/OverrideMain.jav
	new file:   ../../AllgemeinTest/OverrideMainRet.jav
	new file:   ../../AllgemeinTest/Pair.java
2020-03-30 16:17:52 +02:00
pl@gohorb.ba-horb.de
97bdfe1d3a modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
wenn nicht wildcardable dann receiver ? extends geloescht
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
kleiner Fehler in compare
2020-03-30 13:28:13 +02:00
pl@gohorb.ba-horb.de
7c7dbf3769 modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Das fehlerveruraschende Paar wird auch zu abhSubst hingefuegt.
2020-03-29 11:05:52 +02:00
pl@gohorb.ba-horb.de
577faa88af modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Reihenfolge geaendert, so dass bei Variance 1 (x <. theta) vorne und bei Variance -1 (theta <. x) vorne
2020-03-28 00:16:43 +01:00
pl@gohorb.ba-horb.de
8bdb7e7b13 modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.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/model/OrderingUnifyPair.java
noch Fehler bei mathStruc<Integer> und Matrix laeuft sehr lange vll. terminiert es nicht.
2020-03-26 17:23:56 +01:00
pl@gohorb.ba-horb.de
eca187da79 modified: src/main/java/de/dhbwstuttgart/syntaxtree/visual/OutputGenerator.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/OrderingUnifyPair.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
2020-03-26 12:44:56 +01:00
michael
a11dc1ab22 Newer version of antlr. 2020-03-21 16:56:34 +01:00
pl@gohorb.ba-horb.de
850af6a6ae modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../src/main/java/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
	modified:   ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Vererbung korrigiert
2020-03-19 18:36:20 +01:00
pl@gohorb.ba-horb.de
ed1bb44089 modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java

variance = 2 umgesetzt auf variance = 1, variance = -1, variance = 0
2020-03-19 17:03:54 +01:00
pl@gohorb.ba-horb.de
592de5310e modified: ../src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../src/main/java/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
	modified:   ../src/main/java/de/dhbwstuttgart/syntaxtree/SourceFile.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/UnifyPair.java
2020-03-18 17:36:10 +01:00
pl@gohorb.ba-horb.de
e4e3704c7b modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Umbau TYPEStmt Methods begonnen
2020-03-17 14:06:21 +01:00
pl@gohorb.ba-horb.de
21bc3e5193 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Reigenfolge der der nextSets angepasst
2020-03-13 15:57:27 +01:00
pl@gohorb.ba-horb.de
44368f2a2a modified: ../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../src/main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
weitere Logausgaben bei a <. theta'
2020-03-13 14:04:57 +01:00
pl@gohorb.ba-horb.de
aa94ce8ad9 modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Fehler korrigiert in compare
2020-03-12 10:18:48 +01:00
pl@gohorb.ba-horb.de
d63c27579c modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Typen der Methoden der Oder-Constraiunts benutzen wieder rueckgaenig gemacht

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
wieder alle grArg im a <. theta' benutzen
	modified:   ../../bytecode/javFiles/MatrixOP.jav
2020-03-09 18:30:36 +01:00
pl@gohorb.ba-horb.de
b38340fc60 modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
toString veraendert
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/Match.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Fall A <. theta' veraendert.

	modified:   ../../bytecode/javFiles/MatrixOP.jav
2020-03-09 14:06:41 +01:00
pl@gohorb.ba-horb.de
df0d02cdea Revert " modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java"
This reverts commit 47ec1dca5a.
2020-03-06 13:57:01 +01:00
pl@gohorb.ba-horb.de
6afee86066 new file: PluginBau.docx 2020-03-03 15:42:07 +01:00
pl@gohorb.ba-horb.de
900a487d8a modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Aufruf von isCanceled an verschiedenen Stellen ergaenzt, so dass jetzt alle Prozesse angehalten werden sollten
2020-03-03 14:52:11 +01:00
michael
e07df035ea Check for null list. Crash fix. 2020-03-03 10:27:13 +01:00
pl@gohorb.ba-horb.de
47ec1dca5a modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyTaskModel.java
	new file:   src/main/java/de/dhbwstuttgart/typeinference/unify/controlCancel.java

controlCancel.java kann durch IProgressMonitor aus Eclipse implementiert werden.
So lässt sich das Cancel-Problem des Eclipse-Plugins loesen.
2020-02-29 22:22:37 +01:00
pl@gohorb.ba-horb.de
e913bfa768 modified: ../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Im Bytecode werden MethpdCaltypen bereits beim TYPEen angelegt.
2020-02-07 18:17:58 +01:00
pl@gohorb.ba-horb.de
98997d686f modified: ../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Lokale Variablen eingefuegt

Wildcards korrigiert

logFiule off

	modified:   ../../../main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
	modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/Constructor.java
	modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/statement/MethodCall.java
	modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/statement/NewClass.java
	modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/statement/SuperCall.java
	modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/statement/ThisCall.java
Typeargumente von Receiver und Argumenten in Methodcall eingefuegt.
2020-02-07 17:46:11 +01:00
pl@gohorb.ba-horb.de
5c97d80eb0 modified: src/main/java/de/dhbwstuttgart/syntaxtree/type/TypePlaceholder.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
2020-02-06 18:35:33 +01:00
pl@gohorb.ba-horb.de
23384f413d modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
variance von Pairs geloescht.
2020-02-06 15:27:51 +01:00
pl@gohorb.ba-horb.de
a5662cdd9a modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Nachtraegliches Einfuegen von Variance in OderConstraints auskommentiert.

	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
Variance im konvertieren eingefuegt

	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/type/TypePlaceholder.java
Variace eingefuegt

	modified:   src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
In OderConstraints Variance bei der Erstellung eingefuegt
2020-02-06 11:39:27 +01:00
pl@gohorb.ba-horb.de
28400c8bde modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Variance aller Argumente in Oderconstraints auf 1 gesetzt muss nochmals ueberarbeitet werden

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Returntypen von Operatoren sind \doteq gestezt

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Bei Variance = 2 parallel abgearbeitet geloescht, dass nicht nochmals bearbeitet werden.
2020-02-06 08:51:30 +01:00
pl@gohorb.ba-horb.de
b68004a214 modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Weiter Ausgave der abstrakten Syntax auf die Console
Fehler bei der Auswahl der Varianz behoben.
2020-01-31 10:03:33 +01:00
pl@gohorb.ba-horb.de
8d72b58fcc modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Methode unbenannt in unbox
2020-01-21 19:48:31 +01:00
pl@gohorb.ba-horb.de
e581050a61 modified: ../../../java/packages/LoadDefaultPackageClassesTest.java
modified:   ../../../java/packages/OLOneFileTest.java
2020-01-21 18:22:40 +01:00
pl@gohorb.ba-horb.de
1ec7a78b14 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
basetype und RefType Fehler korrigiert
Methode basetypeComp eingefuegt.
2020-01-21 18:04:56 +01:00
pl@gohorb.ba-horb.de
8ec1c5148b new file: OLTest.txt
new file:   UseOLMain.java
Test für die ComandLine-Version
2020-01-21 14:34:09 +01:00
pl@gohorb.ba-horb.de
bf80361c1f new file: ../../../java/packages/OLOneFileTest.java
new file:   OLOneFile.jav
2020-01-21 14:12:48 +01:00
pl@gohorb.ba-horb.de
a9d6e08a20 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java 2020-01-21 14:10:38 +01:00
pl@gohorb.ba-horb.de
d55e6b3b75 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
fehlerhafter Aufruf getMethod korrigiert.

	modified:   ../../../java/packages/OLTest.java
	modified:   OLMain.jav
	new file:   OLextends.jav
	renamed:    OL.jav -> de/test/OL.jav
OL-Beispiel mit doppelter Vererbung eingefuegt.
2020-01-21 12:27:41 +01:00
JanUlrich
a6287b1551 Work with File instead of Strings when specifying output als classpath 2020-01-17 16:06:51 +01:00
pl@gohorb.ba-horb.de
5500180c6b modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2020-01-15 20:47:39 +01:00
JanUlrich
0c1ca3d200 Fehler beheben und DirecotryClassLoader anfügen 2020-01-12 22:49:51 +01:00
JanUlrich
f3d6fcb417 add -classpath to ConsoleInterface. Fix bug 2020-01-11 20:19:23 +01:00
JanUlrich
d1138540de Make jar with dependencies executable 2020-01-10 16:53:14 +01:00
pl@gohorb.ba-horb.de
647c9e6c21 modified: ../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
.replace("/", ".")); anegfuegt, damit auch bei packages superklassen gefunden erden.
2020-01-08 14:47:03 +01:00
pl@gohorb.ba-horb.de
6779f10b08 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Bug "." wird in replaceAll nicht ersetzt, deshalb "/" durch "." und nicht "." durch "/" ersetzt.

	modified:   ../../../java/packages/OLTest.java
	modified:   ../../../java/packages/mathStrucVectorTest.java
	renamed:    de/test/OL.jav -> OL.jav
	renamed:    de/test/OLMain.jav -> OLMain.jav
OL ins default-Package verschoben
2020-01-07 18:37:43 +01:00
pl@gohorb.ba-horb.de
ac3f8ece0e Merge branch 'addPackages' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into addPackages 2020-01-07 11:20:31 +01:00
JanUlrich
f63346649b Fix loading packages from same package 2020-01-06 22:04:29 +01:00
JanUlrich
abdff6c8d2 Fixed bug 2020-01-03 01:12:58 +01:00
JanUlrich
691d31df5e Die getRegistry Methode der CompilationEnvironment Klasse beachtet jetzt auch alle .class Files, welche sich im gleichen Ordner befinden 2020-01-03 01:08:00 +01:00
JanUlrich
2e421cccaa Merge branch 'addPackages' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into addPackages 2019-12-30 19:20:46 +01:00
pl@gohorb.ba-horb.de
bd0b2e6058 new file: ../../../../../../../../java/packages/OLTest.java
new file:   ../../../OL.jav
	new file:   ../../../OLMain.jav
2019-12-30 10:45:32 +01:00
pl@gohorb.ba-horb.de
0c9c8ef321 modified: ../../../../../../../../../main/java/de/dhbwstuttgart/syntaxtree/factory/ASTFactory.java
Bug 182 fixed

	modified:   ../../../mathStrucVector.jav
	modified:   ../../../vectorAdd.jav
	kleine Aenderungen
2019-12-29 19:42:40 +01:00
JanUlrich
4b4087ae24 Trying to add Names that are not imported to availableClasses (unfinished) 2019-12-27 18:51:04 +01:00
JanUlrich
19989bfe11 Add Console Interface parameters, output directory and classpath 2019-12-26 19:43:00 +01:00
JanUlrich
f59a7d221e Fix bug 2019-12-26 15:22:40 +01:00
pl@gohorb.ba-horb.de
c1c12fa33c new file: mathStrucVectorTest.java
new file:   ../../resources/javFiles/packageTest/de/test/mathStruc.jav
	new file:   ../../resources/javFiles/packageTest/de/test/mathStrucVector.jav
	new file:   ../../resources/javFiles/packageTest/de/test/vectorAdd.jav
2019-12-23 16:34:07 +01:00
pl@gohorb.ba-horb.de
7fd03d505e Merge branch 'addPackages' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into addPackages 2019-12-23 11:25:36 +01:00
pl@gohorb.ba-horb.de
4391adfb0f modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
modified:   src/test/resources/bytecode/javFiles/OL.jav
2019-12-23 11:25:07 +01:00
JanUlrich
d0b6dbcd30 Tests anfügen und Bugs fixen 2019-12-22 23:23:10 +01:00
JanUlrich
306af907c5 Nicht mit mehreren Eingabedateien testen 2019-12-22 22:32:40 +01:00
JanUlrich
75eaee6644 Abgabeprotokoll 2019-12-22 17:59:40 +01:00
JanUlrich
0378c17e7d ClassLoader austauschen gegen den Classloader, welcher in JavaCompilerCore erstellt wird 2019-12-22 14:27:54 +01:00
JanUlrich
3e67da6e34 merge 2019-12-16 00:56:54 +01:00
JanUlrich
1d16b9f2b9 Documentation 2019-12-16 00:55:04 +01:00
JanUlrich
afd2c21ca8 Add classPath option to JavaTXCompiler and parse with URLClassLoader 2019-12-16 00:54:00 +01:00
JanUlrich
74622550c2 Add Logfiles Directory, but ignore all files inside it 2019-12-15 21:58:29 +01:00
JanUlrich
bb75fca0d7 Add ImportTest 2019-12-15 14:57:12 +01:00
JanUlrich
c82abcaae5 Generate Package names in .class files 2019-12-15 14:55:49 +01:00
JanUlrich
a3b4ea9b1c [Bytecde] Generate new directory if given output path doesnt exist yet 2019-12-14 17:50:23 +01:00
JanUlrich
af5b23e31a Use JavaClassName instead of Strings 2019-12-14 16:30:14 +01:00
pl@gohorb.ba-horb.de
084b54d295 modified: ../src/main/java/de/dhbwstuttgart/syntaxtree/visual/OutputGenerator.java
modified:   ../src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
einige Korrekturen
2019-12-09 15:54:22 +01:00
michael
e305c3cb55 [MINOR]: Optimized imports. 2019-12-09 13:52:37 +01:00
michael
835f0755da Merge branch 'simplifyRes' of uhl@gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into simplifyRes 2019-12-06 20:22:52 +01:00
michael
14b127390e [MINOR]: Umlaute in Kommentaren korrigiert. 2019-12-06 20:22:33 +01:00
pl@gohorb.ba-horb.de
0c1337f84b Merge branch 'simplifyRes' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into simplifyRes 2019-12-06 13:09:55 +01:00
pl@gohorb.ba-horb.de
5c1015b51e modified: src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
-      fieldType = TypePlaceholder.fresh(fieldDeclarationContext.getStart());
+      fieldType = TypePlaceholder.fresh(fieldDeclarationContext.variableDeclaratorList().getStart()); //PL 2019-12-06: variableDeclaratorList() eingefuegt, um als Token nicht die Modifier zu bekommen
2019-12-06 12:57:07 +01:00
michael
c52da7951a Bug 176 - Argumente mit Typvariabelen werden die Generics einschließlich
Bounds immer bei den Argumenten eingefügt
2019-12-05 21:51:53 +01:00
michael
6dc15acba4 Build for JDK 1.8 2019-12-05 21:50:11 +01:00
michael
6cbabee65a Merge remote-tracking branch 'origin/bigRefactoring' into simplifyRes 2019-12-02 20:15:33 +01:00
michael
c18daad047 Korrektur der Ersetzung. 2019-12-02 15:32:18 +01:00
Michael Uhl
1eaeca1db5 Refactoring in pom.xml 2019-11-27 21:40:35 +01:00
JanUlrich
09a6aec65d Erste Tests und die Möglichkeit generateBytecode null als Pfad zu übergeben 2019-11-24 17:52:02 +01:00
JanUlrich
766e71bb3a Beginn mit Werksvertrag: Package Support 2019-11-19 21:53:53 +01:00
JanUlrich
802d7726d4 Merge branch 'bigRefactoring' into addPackages 2019-11-19 21:51:14 +01:00
pl@gohorb.ba-horb.de
c68d773486 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Threadsteuerung veranendert, so dass möglichst veile Threads gleichzeitig laufen.
Müsste noch verbessert werden können.
2019-11-18 14:37:59 +01:00
Michael Uhl
c0f5fd1e0a Merge branch 'simplifyRes' of uhl@gohorb.ba-horb.de:/bahome/projekt/git/JavaCompilerCore into simplifyRes 2019-11-14 14:07:04 +01:00
Michael Uhl
52b3498dfb Vor Fertigstellung Ersetzung Generics. 2019-11-14 14:04:09 +01:00
Michael Uhl
7343ea1701 Vor Fertigstellung Ersetzung Generics. 2019-11-13 10:14:07 +01:00
pl@gohorb.ba-horb.de
00bbd5279f modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
log-File-Ausgabe etwas ergaenzt

	modified:   src/main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
Fehler korrigiert, dass alle Fieldinitializer bei mehreren Klassen additiv hinzugefuegt werden

	modified:   src/main/java/de/dhbwstuttgart/syntaxtree/statement/This.java
toString veranedert

	modified:   src/test/resources/bytecode/javFiles/mathStruc.jav
leichte Korrektur

	new file:   src/test/java/bytecode/mathStrucIntegerTest.java
	new file:   src/test/resources/bytecode/javFiles/mathStrucInteger.jav
mathStruc auf Integer angewandt

	new file:   src/test/resources/bytecode/javFiles/mathStrucMatrixOP.jav
mathStruc auf MatrixOP angewandt, laeuft noch nicht durch, des halb Test noch nicht eingecheckt
2019-10-24 17:47:51 +02:00
pl@gohorb.ba-horb.de
6c783a18c7 new file: ../../../../../PlugInBau.txt
modified:   ../../bytecode/javFiles/Faculty.jav
	modified:   ../../bytecode/javFiles/OL.jav
	modified:   ../../bytecode/javFiles/Y.jav
	modified:   ../../bytecode/javFiles/mathStruc.jav
2019-10-22 16:44:38 +02:00
Fayez Abu Alia
8c195601d5 Fixed signature problem for FunN 2019-10-12 11:32:56 +02:00
pl@gohorb.ba-horb.de
37f8f2e1e0 modified: ../../bytecode/javFiles/Y.jav
Anwendung von Y eingefuegt.
2019-09-19 13:57:49 +02:00
Fayez Abu Alia
0903efda0d Fixed bug 115 2019-09-19 13:00:35 +02:00
Michael Uhl
6e9eae38ca Compile fix. 2019-09-17 09:46:47 +02:00
Michael Uhl
0138e4fe2d Merge branch 'bytecode2' into simplifyRes 2019-09-17 09:41:08 +02:00
Michael Uhl
9741b5e14e Merge remote-tracking branch 'origin/bytecode2' into simplifyRes
Conflicts:
	src/main/java/de/dhbwstuttgart/bytecode/simplifyRes/GenericGenratorResultForSourceFile.java
	src/main/java/de/dhbwstuttgart/bytecode/simplifyRes/GenericsGeneratorResultForClass.java
2019-09-17 09:36:56 +02:00
Fayez Abu Alia
c2030123d5 Fixed bugs 163 and 169 2019-09-17 09:33:18 +02:00
Michael Uhl
25fb7a2e28 Plugin: Additional generic insert points. 2019-09-16 11:52:34 +02:00
Fayez Abu Alia
d1637b8eb9 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-08-29 11:50:23 +02:00
Fayez Abu Alia
9abda637a1 Generic generator algorithm - fixed bug 2019-08-29 10:49:18 +02:00
pl@gohorb.ba-horb.de
82c0837d1f mathStruc.jav hinzugefügt 2019-08-23 15:06:54 +02:00
Fayez Abu Alia
a41e9804a0 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-07-31 13:18:07 +02:00
Fayez Abu Alia
25c685c705 Merged with simplifyRes and cleaned up code 2019-07-31 13:16:14 +02:00
Fayez Abu Alia
3ecb202a90 Generic generator algorithm v1 2019-07-31 11:55:24 +02:00
Fayez Abu Alia
efdb58e67c Added throw Exception to method getSimplifyResultsByName 2019-07-31 10:33:43 +02:00
Fayez Abu Alia
eed8f32cb7 Merge branch 'simplifyRes' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into simplifyRes 2019-07-31 10:27:43 +02:00
Fayez Abu Alia
87d0a46ba5 Generic generator algorithm v0.1 2019-07-31 10:24:58 +02:00
Michael Uhl
5b75250fcf Merge branch 'bigRefactoring' into simplifyRes
# Conflicts:
#	src/main/java/de/dhbwstuttgart/bytecode/utilities/SimplifyResult.java
#	src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
2019-07-29 16:21:25 +02:00
Michael Uhl
7f29b39195 Generic Method inserts. 2019-07-26 10:12:53 +02:00
Fayez Abu Alia
7a4bc32974 Generic generator algorithm v0.1 2019-07-25 22:24:06 +02:00
Fayez Abu Alia
dfddc44f29 Separated the algorithm into two parts. Part 1 is the simplification of
the constraints and part 2 is generation of generics.
2019-07-12 19:50:46 +02:00
Fayez Abu Alia
347d86a379 Genericsgenerator step 2 and 3 2019-07-11 15:52:38 +02:00
Fayez Abu Alia
d77f2176f2 Generics generator step 1 2019-07-10 15:26:16 +02:00
Fayez Abu Alia
4f39eccecb Removed an old getter method 2019-07-05 13:45:24 +02:00
Fayez Abu Alia
669e7f111f Separated the generation of bytecode and the calculation of simplify
results from each other
2019-07-05 13:29:34 +02:00
pl@gohorb.ba-horb.de
32d12677bf Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-06-28 11:41:47 +02:00
pl@gohorb.ba-horb.de
92b2f5c9cc modified: src/test/resources/bytecode/javFiles/Faculty.jav
} eingefuegt
2019-06-28 11:41:19 +02:00
Fayez Abu Alia
c1e6526b43 Removed unnecessary tests 2019-06-26 12:18:49 +02:00
Fayez Abu Alia
0194e30206 Fixed Bug 150. 2019-06-26 12:16:47 +02:00
Fayez Abu Alia
3c36c61077 Fixed Bugs 159, 162 and 163 2019-06-13 14:01:32 +02:00
Fayez Abu Alia
857d63322e Fixed Bug 152 Faculty Probleme 2019-06-07 10:28:48 +02:00
Fayez Abu Alia
b801e144c3 Merged with bigRefactoring. Added method to generate signature to
FunN-Interfaces. Adapted jav-Files.
2019-06-06 12:15:51 +02:00
Martin Plümicke
f6669f8c13 new file: ../../../java/bytecode/VectorAddTest.java 2019-06-05 10:28:51 +02:00
Martin Plümicke
2b7aef5e87 modified: ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Pfad fuer logFile nach JavaCompilerCore/logFiles verlegt.

	modified:   ../../bytecode/javFiles/OL.jav
	modified:   ../../bytecode/javFiles/VectorAdd.jav
2019-06-05 10:21:25 +02:00
Michael Uhl
0233426979 Merge remote-tracking branch 'origin/bigRefactoring' into bigRefactoring 2019-05-14 21:54:41 +02:00
Michael Uhl
3d0d11adb7 Code aufgeräumt. 2019-05-14 21:43:32 +02:00
Martin Plümicke
212144db86 renamed: test/java/bytecode/FunOLTest.java -> test/java/bytecode/OLFunTest.java
new file:   test/resources/bytecode/javFiles/OLFun.jav
2019-05-14 20:30:32 +02:00
Martin Plümicke
bd0517ae29 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
log-File in anderen Pfad

	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
substitutions gekapselt
2019-05-14 19:54:51 +02:00
Martin Plümicke
f210dd3c25 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
try der Nullpointer-Exception erweitert.
2019-05-13 11:11:47 +02:00
Martin Plümicke
4602e95f09 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2019-05-12 20:00:03 +02:00
Martin Plümicke
1ef228a045 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
public volatile UnifyTaskModel usedTasks = new UnifyTaskModel();
auf publich gesetzt
2019-05-12 19:54:30 +02:00
Martin Plümicke
c3c0a11572 Debugabfrage entfernt, die Exception ausgeloest hat
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyTaskModel.java
Methoden synchronized gemacht
2019-05-12 19:15:26 +02:00
Martin Plümicke
d14406e474 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../resources/bytecode/javFiles/MatrixOP.jav
2019-05-10 21:23:28 +02:00
Martin Plümicke
a149b0c391 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/UnifyTaskModel.java

Eigenen Cancel-Mechanismus implementiert
2019-05-10 21:02:24 +02:00
pl@gohorb.ba-horb.de
bfbce81409 Abbruch aller Threads eingebaut
modified:   src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	new file:   src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyTaskModel.java
2019-05-10 16:30:55 +02:00
Martin Plümicke
985704c0b0 modified: src/main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Wen kein Import für die Addition vorhanden ist, wird Fehler ausgegeben
2019-05-08 08:58:19 +02:00
Michael Uhl
1f20fecfee ResultPair durchgeschleift. 2019-05-07 10:38:25 +02:00
Michael Uhl
4b8b0ec362 ConcurrentModificationException umgangen. 2019-05-05 22:33:16 +02:00
Michael Uhl
e48f2b2fd5 Merge remote-tracking branch 'origin/bigRefactoring' into bigRefactoring
# Conflicts:
#	src/main/java/de/dhbwstuttgart/bytecode/BytecodeGen.java
2019-04-27 16:33:20 +02:00
Michael Uhl
11bee80969 Bytecode-Generierung generiert jetzt wieder Bytecode für alle möglichen Typen. 2019-04-27 16:29:38 +02:00
Martin Plümicke
448c489a49 modified: src/main/java/de/dhbwstuttgart/typeinference/result/ResultSet.java
modified:   src/test/resources/bytecode/javFiles/Lambda.jav
	modified:   src/test/resources/bytecode/javFiles/MatrixOP.jav
	modified:   src/test/resources/bytecode/javFiles/OL.jav
2019-04-27 15:44:21 +02:00
pl@gohorb.ba-horb.de
1e1eb2a2f2 geändert: src/main/java/de/dhbwstuttgart/typeinference/result/ResultSet.java 2019-04-27 14:51:25 +02:00
pl@gohorb.ba-horb.de
4a7c124fd6 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2019-04-27 09:51:22 +02:00
pl@gohorb.ba-horb.de
7d01c866a9 modified: ../src/test/resources/bytecode/javFiles/Id.jav
modified:   ../src/test/resources/bytecode/javFiles/Matrix.jav
	modified:   ../src/test/resources/bytecode/javFiles/MatrixOP.jav
	modified:   ../src/test/resources/bytecode/javFiles/OL.jav
2019-04-26 14:12:46 +02:00
Fayez Abu Alia
73f412d22d Klassendatei fuer FunN beim Methodaufruf wird erzeugt, wenn der Receiver
den Typ FunN besitzt.
Die Loesung vom Duplicate Field Problem wird angepasst.
2019-04-26 11:56:58 +02:00
Fayez Abu Alia
9ffc74467b Wenn ein Attribut mehrere Loesungen bekommt, wird die Bytecodeerzeugung
abgebrochen und ensprechende Exception geworfen.
2019-04-26 10:27:15 +02:00
Fayez Abu Alia
5950fcc0a9 Neue Klasse MethodCallHelper und Exceptions definiert, die fuer die
Uebersetzung von MethodCalls verwendet werden
2019-04-24 15:43:00 +02:00
Martin Plümicke
d2fb17ad4e Merge branch 'bcGenerics' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bcGenerics 2019-04-21 22:32:20 +02:00
Martin Plümicke
d9f084cd0f modified: ../../bytecode/javFiles/Faculty.jav
neue Imports hinzugefuegt
2019-04-21 22:31:55 +02:00
Michael Uhl
481986e8ab Kein Compileraufruf bei Type-Insert
- ResultPairMap wird wieder geleeert.
2019-04-20 17:22:10 +02:00
Michael Uhl
23c37a8cc2 Richtiges Einsetzen ohne Speichern. 2019-04-19 20:49:28 +02:00
Fayez Abu Alia
6a519ff6dc Ein Feld wird nur einmal in Bytecode uebersetzt. genIns in ResultSet
wird angepasst.
2019-04-18 13:17:50 +02:00
Fayez Abu Alia
5b527ec8ab Merge branch 'bcGenerics' of ssh://abualia@gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bcGenerics 2019-04-18 10:50:02 +02:00
Fayez Abu Alia
709041f024 Adapted TypedID jav-file 2019-04-18 10:48:59 +02:00
Michael Uhl
905d9e25a2 [PLUGIN]: Filter type insert points after insertion. 2019-04-18 09:48:56 +02:00
Martin Plümicke
e086ff187e modified: ../../../../main/java/de/dhbwstuttgart/typeinference/result/ResolvedType.java
Attribut additionalGenerics auskommentiert.
2019-04-12 10:41:42 +02:00
Martin Plümicke
588212389a Die Bestimmung der Constraints aus dem ResolvedType herausgenommen und im ResultSet integriert.
Damit kommen immer die gleichen Constraints raus. Diese werden ohnehin in der Bytecodegenerierung
nochmals ausgewertet.

	modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java
Zugriff auf Constraints ueber ResultSet eingefuehrt

	modified:   ../../../../main/java/de/dhbwstuttgart/bytecode/signature/Signature.java
Zugriff auf Constraints ueber ResultSet eingefuehrt

	modified:   ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/result/GenericInsertPair.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/result/PairTPHequalRefTypeOrWildcardType.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/result/PairTPHsmallerTPH.java
toString veraendert

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/result/ResultSet.java
Attribut genIns eingefuehrt, indem alle GenericInsertPairs gespeichert werden, die Form (TPH a <. TPH b)
im Attribut results haben

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../bytecode/javFiles/Id.jav
	modified:   ../../bytecode/javFiles/MatrixOP.jav
2019-04-12 10:28:39 +02:00
Martin Plümicke
1454281628 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bcGenerics 2019-04-11 11:57:30 +02:00
Fayez Abu Alia
602216d9e2 Generics beruecksichtigt 2019-04-11 11:26:54 +02:00
Martin Plümicke
e53c29f582 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Typeinference-Exception eingefuegt, wenn kein korrekter Typ inferierbar ist.

	modified:   ../../resources/bytecode/javFiles/Id.jav
2019-04-06 00:53:35 +02:00
Martin Plümicke
656c77d16b Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2019-04-05 12:52:28 +02:00
Fayez Abu Alia
9d16855ce2 Bug in Matrix gefixt 2019-04-05 12:38:29 +02:00
Fayez Abu Alia
9d2fdf9692 Merge branch 'bytecode2' of ssh://abualia@gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-04-05 12:06:22 +02:00
Fayez Abu Alia
5c5b1ea2b1 IdTest funktioniert 2019-04-05 12:05:07 +02:00
Martin Plümicke
2e2227b701 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-04-05 12:00:30 +02:00
Martin Plümicke
16baa5eaa8 modified: ../../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java

Konstruktur fuer ReferenceType mit zwei Argumenten versehen, um Generice unterscheiden zu können.
2019-04-05 11:59:34 +02:00
Fayez Abu Alia
588b9ef83a Merge branch 'bytecode2' of ssh://abualia@gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-04-05 10:44:52 +02:00
Fayez Abu Alia
ee932892c6 subString durch contains ersetzt 2019-04-05 10:43:09 +02:00
Martin Plümicke
547ad9601a Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-04-04 14:08:31 +02:00
Michael Uhl
6c94404f27 [MINOR]: Optimized imports. 2019-03-31 11:45:49 +02:00
Michael Uhl
2b5b677682 Für Eclipse-Plugin: Vorläufige Lösung zum Einsetzen von Generics nur an Klassen ausgeschaltet. 2019-03-31 11:39:57 +02:00
Martin Plümicke
1edc023ed9 modified: ../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java
Generische Typvariablen im Unify durch Tag im ReferenceType eingefuehrt
2019-03-28 17:44:42 +01:00
Martin Plümicke
df0f26c021 :w:wq 2019-03-28 16:55:48 +01:00
Martin Plümicke
0f1526daa2 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
deleted:    .gitignore
2019-03-28 15:44:03 +01:00
Michael Uhl
53d1f20a40 Merge remote-tracking branch 'origin/bytecode2' into bytecode2 2019-03-28 14:56:47 +01:00
Michael Uhl
ec4defd087 Getter and setter for token. 2019-03-28 14:56:36 +01:00
Fayez Abu Alia
6a2a8313e6 Generics werden in Signature richtig dargestellt und die passende
Deskriptoren werden richtig erzeugt
2019-03-28 14:07:04 +01:00
Fayez Abu Alia
d4a59517d3 Wenn die Klasse keine Generics besitzt und Methoden besitzen Generics
wird eine new SimplifyResult Instanz erzeugt, da sonst eine
NullException aufgelöst wird
2019-03-21 12:23:50 +01:00
Fayez Abu Alia
f4b5124fd3 Merge branch 'bytecode2' of ssh://abualia@gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-03-21 12:06:01 +01:00
Fayez Abu Alia
c921330b55 Methode getSimplifyList definiert, die eine Liste von Ergebnisse des
Simplify-Alg zurueckliefert
2019-03-21 12:03:13 +01:00
Martin Plümicke
4ba4292db4 Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2019-03-20 16:30:21 +01:00
Martin Plümicke
57b5a51895 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java 2019-03-20 16:24:55 +01:00
Martin Plümicke
986ce8e6e0 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2019-03-20 14:35:50 +01:00
Martin Plümicke
8a6646bd7c modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java 2019-03-20 13:00:08 +01:00
Martin Plümicke
01a548215a Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2019-03-20 12:53:35 +01:00
Martin Plümicke
66cd1e7012 modified: ../../bytecode/javFiles/MatrixOP.jav 2019-03-20 12:45:17 +01:00
Martin Plümicke
850fe39426 modified: ../../../main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/TypeGenerator.java
Typen mit Argumenten korrgiert
2019-03-19 16:31:04 +01:00
Martin Plümicke
212aeaa3a0 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2019-03-18 16:14:13 +01:00
Michael Uhl
7cb2eed36e Logger comes from plugin now. 2019-03-18 09:33:22 +01:00
Martin Plümicke
82f330eab5 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../resources/bytecode/javFiles/Matrix.jav
2019-03-17 17:44:09 +01:00
Michael Uhl
f25ba4d13e Merge remote-tracking branch 'origin/bytecode2' into bytecode2 2019-03-15 10:53:10 +01:00
Michael Uhl
4d4be5420b Anpassung asynchroner Aufruf des Plugins
========================================

UnifyResultListener muss übergeben werden, da sonst Ergebnisse gemeldet werden (notify), ohne dass das Plugin als UnifyResultListener registriert wurde.
2019-03-15 10:52:31 +01:00
Martin Plümicke
a01779d6df modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
auskommentierter Code der nach checkA verschoben wurde geloescht
2019-03-14 00:27:21 +01:00
Martin Plümicke
44ed1d8e8d modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Die Ueberpruefung von a bzw. nSaL in Methode checkA ausgelagert und für die Faelle a <. th und ty <. a implementiert.
2019-03-14 00:20:19 +01:00
Martin Plümicke
75adbaf579 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2019-03-07 13:45:03 +01:00
Martin Plümicke
411629279d modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Kommentar eingefuegt
2019-03-07 13:44:29 +01:00
Martin Plümicke
47783083b0 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
Conflicts:
	src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java

 It looks like you may be committing a merge.
 If this is not correct, please remove the file
	.git/MERGE_HEAD
 and try again.
2019-03-07 13:42:26 +01:00
Martin Plümicke
94c32609c6 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
disableCondWildcards wird aufgerufen

	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
/**
	 * wenn in einem  Paar bestehend aus 2 Typvariablen eine nicht wildcardtable ist,
	 * so beide auf nicht wildcardtable setzen
	 */
	public void disableCondWildcards()
eingefuegt
2019-03-07 13:37:08 +01:00
Martin Plümicke
6175fb3ee3 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java 2019-03-07 09:17:05 +01:00
Martin Plümicke
2bd6147517 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Noch einige Fehler
2019-03-07 09:14:41 +01:00
Martin Plümicke
728b729f08 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
in calculatePairSets werden andere Constraints fuer die gleiche Variable betrachtet
Sollte aber nach computeCartesianRecursive verschoben werden.
2019-03-05 00:24:11 +01:00
Martin Plümicke
27c6351aed modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Anfang Paare zusammenfassen
2019-03-01 16:52:59 +01:00
Martin Plümicke
fc14cf9893 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
subst-Anwendung gleich am Anfang von unify eingefuehrt
2019-02-28 18:29:08 +01:00
Martin Plümicke
b46e0b855c modified: ../../resources/bytecode/javFiles/MatrixOP.jav 2019-02-28 15:38:30 +01:00
Martin Plümicke
88ec8823fd modified: ../../../main/java/de/dhbwstuttgart/parser/SyntaxTreeGenerator/TypeGenerator.java
modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	deleted:    ../../../main/java/de/dhbwstuttgart/syntaxtree/type/FunN.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/assumptions/FunNClass.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/assumptions/MethodAssumption.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FunNType.java
Es wird jetzt FunN-Type FunN$$ geparst
Der Typ FunN wurde entfernt
Der Name des Typs FunNType wurde um $$ am Ende ergänzt
2019-02-27 16:04:55 +01:00
Fayez Abu Alia
c77a2b3354 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-02-25 19:20:43 +01:00
Fayez Abu Alia
8a5dbb28ac Bug gefixt: genericList als Paramater uebergeben 2019-02-25 19:20:11 +01:00
Michael Uhl
86768153c0 Merge remote-tracking branch 'origin/bytecode2' into bytecode2 2019-02-24 15:06:49 +01:00
Michael Uhl
5722f0285b Skip tests in maven build. 2019-02-24 15:06:34 +01:00
Fayez Abu Alia
6c19a9f78c Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-02-21 13:35:07 +01:00
Fayez Abu Alia
3e186334a2 Simpify Algo korrigiert so dass die lokalen Variablen der Methode beruecksichtigt werden 2019-02-21 13:34:36 +01:00
Martin Plümicke
fcad60996c modified: de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java 2019-02-20 17:53:45 +01:00
Martin Plümicke
9c648546e4 modified: de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	modified:   de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
FileWriter durch Writer ersetzt
2019-02-20 17:36:07 +01:00
Martin Plümicke
8e4b39b05e modified: ../../test/resources/bytecode/javFiles/Inf.jav 2019-02-20 16:03:56 +01:00
Martin Plümicke
926d911d21 modified: ../bytecode/MatrixTest.java 2019-02-20 15:08:06 +01:00
Fayez Abu Alia
d010c843df Bug in MatrixTest gefixt. Die richtige Descriptor von MethodCalls wird erzeugt 2019-02-20 12:15:55 +01:00
Martin Plümicke
72705ac868 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
close log-Files
TypeUnifyTask in TypeUnify2Task bei Abarbeitung oderconstraints umgetauscht
2019-02-20 09:40:06 +01:00
Martin Plümicke
362e797b10 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2019-02-19 17:51:11 +01:00
Martin Plümicke
1f12aaec82 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Einen Fall ? extends/super a <.? a ergaenzt bei dem compare falsches Ergbnis geliefret hat
2019-02-18 22:36:06 +01:00
Martin Plümicke
08d69ce6e3 modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultModel.java

zurueckumwandlung von den Unifytypen in UnifyResultModel verlegt.
2019-02-17 08:51:23 +01:00
Martin Plümicke
396efb52de modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IRuleSet.java
subst-Anwendung auf oderconstraints eingebaut
2019-02-15 00:00:41 +01:00
Fayez Abu Alia
67469bbb84 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-02-14 11:44:37 +01:00
Fayez Abu Alia
d2581b02ab modified: src/main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Bug in generate BC fuer if(Boolean) gefixt

	modified:   src/main/java/de/dhbwstuttgart/bytecode/signature/Signature.java

	new file:   src/main/java/de/dhbwstuttgart/bytecode/utilities/ConstraintsFinder.java
	Fasst alle Constraints mit der gleichen Linke-Seite in einer Liste zusammen

	new file:   src/main/java/de/dhbwstuttgart/bytecode/utilities/NameReplacer.java
	Ersetzt die gleiche Type Variables durch einen neuen eindeutigen Namen

	modified:   src/main/java/de/dhbwstuttgart/bytecode/utilities/Simplify.java
	Algorithmus angepasst

	modified:   src/test/java/bytecode/FieldTphMMethTest.java
	Test funktioniert
	new file:   src/test/java/bytecode/InfTest.java
	Infimum Test funktioniert

	new file:   src/test/java/bytecode/simplifyalgo/FinderTest.java
	Tests fuer die HilfsMethoden
2019-02-14 11:37:15 +01:00
Martin Plümicke
db91e73750 modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
aParDef wird auch ausgewertet

	modified:   src/test/resources/bytecode/javFiles/MatrixOP.jav
2019-02-06 18:15:39 +01:00
Martin Plümicke
e52181a0c7 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../resources/bytecode/javFiles/Matrix.jav
2019-02-04 23:32:52 +01:00
Michael Uhl
28c6f78715 Merge branch 'unify-test' into bytecode2 2019-02-02 15:50:34 +01:00
Michael Uhl
2eaebbf0f8 FileWriter -> Writer. 2019-02-01 22:56:30 +01:00
Michael Uhl
1e5e9f8cd4 Merge remote-tracking branch 'origin/bytecode2' into bytecode2 2019-02-01 22:15:28 +01:00
Martin Plümicke
33f2bf3d21 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultListenerImpl.java
Asynchrone Variante soweit ok
2019-01-31 15:08:36 +01:00
Martin Plümicke
aa0b157374 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	new file:   src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultListenerImpl.java
	modified:   src/test/resources/bytecode/javFiles/MatrixOP.jav
Erster Ansatz asyncrone Threads
2019-01-30 09:11:33 +01:00
Pluemicke Martin
aaae762ca8 Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
solved
2019-01-29 15:02:59 +01:00
Martin Plümicke
9e1d58f4b1 modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.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
Threads soweit fertig
2019-01-29 14:51:19 +01:00
Pluemicke Martin
7f239d11ee Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2019-01-29 14:48:54 +01:00
Pluemicke Martin
ca7c76a99a geändert: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
geändert:       src/main/java/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
	geändert:       src/main/java/de/dhbwstuttgart/typeinference/constraints/Pair.java
	geändert:       src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	geändert:       src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify2Task.java
	geändert:       src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	geändert:       src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultModel.java
2019-01-29 14:47:20 +01:00
Martin Plümicke
26634bb038 modified: src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultModel.java 2019-01-25 22:26:38 +01:00
Martin Plümicke
9dcb1f76ca modified: src/main/java/de/dhbwstuttgart/typeinference/unify/UnifyResultModel.java 2019-01-25 22:22:16 +01:00
Martin Plümicke
e0da6b3d31 Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2019-01-25 22:21:04 +01:00
Martin Plümicke
3c0beabc1b modified: src/main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
reduce2 nochmals angepasst

	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
- Fehler behoben
- In den Thread nur noch Element von nextSet verschieben, die auf alle Faele berechnet werdne muessen
2019-01-25 22:19:32 +01:00
Michael Uhl
e83d59d97d Observer Pattern für ResultSet. 2019-01-24 11:16:26 +01:00
Michael Uhl
3ad51f952e Observer Pattern für ResultSet. 2019-01-23 22:28:07 +01:00
Michael Uhl
449a11f433 Observer für TypeResults. 2019-01-23 22:25:30 +01:00
Michael Uhl
9805f956c0 Merge remote-tracking branch 'origin/bytecode2' into bytecode2
# Conflicts:
#	pom.xml
2019-01-23 22:05:59 +01:00
Michael Uhl
0a4a625198 Removed "tycho-p2-repository-plugin". 2019-01-23 22:04:25 +01:00
Martin Plümicke
25487469c7 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/RuleSet.java
reduceEq-Regel korrigiert

	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Threads soweit fertig
2019-01-23 01:31:25 +01:00
Martin Plümicke
188ea1f7f8 modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
einige Aenderungen, die parallele Verarbeitung ermoeglicht
2019-01-20 21:49:22 +01:00
Martin Plümicke
cf951043ef modified: src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2019-01-18 00:54:43 +01:00
Fayez Abu Alia
fd72ed340d Test Erzeugung Type-Variablen fuer Klassen 2019-01-17 11:26:09 +01:00
Martin Plümicke
38d4481756 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Es muss noch geklaert werden, wann ein neuer Thread generiert werden darf.

	modified:   ../../resources/bytecode/javFiles/MatrixOP.jav
2019-01-16 22:57:24 +01:00
Pluemicke Martin
01891c9513 neue Datei: TypeUnify2Task.java 2019-01-16 20:25:54 +01:00
Martin Plümicke
aae2e5244b modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Erster Ansatz Parallelisierung
2019-01-16 17:39:01 +01:00
Fayez Abu Alia
d6961b0d0b Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2019-01-16 14:42:07 +01:00
Fayez Abu Alia
d4d668b662 Simplify fuer Klassen Type Variablen 2019-01-16 14:41:33 +01:00
Martin Plümicke
8c517e7f4a new file: ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/hashKeyType.java
modified:   ../../resources/bytecode/javFiles/VectorSuper.jav
2019-01-16 10:27:15 +01:00
Martin Plümicke
b3622df2fd modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2019-01-15 22:45:58 +01:00
Martin Plümicke
fa42a69374 modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
- Hastables fuer greater und smaller eingefuehrt
- ? extends/super a <. a = -1 hinzugefuegt
2019-01-15 15:58:39 +01:00
Martin Plümicke
eb43a616e2 new file: ../../../java/bytecode/VectorSuperTest.java
new file:   VectorSuper.jav
2019-01-13 19:22:48 +01:00
Martin Plümicke
faccdf5896 Ordnung fuer Variablen unterschieden, ob sie innere Typen sind oder nicht
modified:   ../../core/JavaTXCompiler.java
	modified:   UnifyTypeFactory.java
Bestimmung welche Typevariablen innere Typen sind

	modified:   ../../typeinference/unify/TypeUnifyTask.java
	modified:   ../../typeinference/unify/model/OrderingUnifyPair.java
Ordnungsfunktion geaendert

	modified:   ../../typeinference/unify/model/PlaceholderType.java
	modified:   ../../typeinference/unify/model/UnifyPair.java
2019-01-13 00:42:33 +01:00
Martin Plümicke
6de1c50542 modified: ../../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
Auswahl des Tphs bei der Abfrage, ob ein größerer oder kleinerer Typ des vorherigen bestimmt wurde
korrigiert
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
innerType eingeführt
	modified:   ../../bytecode/javFiles/MatrixOP.jav
	deleted:    ../Field.java
	deleted:    ../Import.java
	deleted:    ../Lam1.java
	deleted:    ../LamRun.java
	deleted:    ../MethFieldVar.java
	deleted:    ../Subclass.java
	deleted:    ../SuperTest.java
	deleted:    ../Superclass.java
	deleted:    ../TestMyTest.java
	deleted:    ../testF.java
	deleted:    ../testTets.java
	deleted:    ../testTetsF.java
2019-01-12 18:19:16 +01:00
Martin Plümicke
58d757398d modified: ../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
zurueck zum alten Zustand
2019-01-11 23:00:27 +01:00
Martin Plümicke
755fd5c821 modified: ../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	deleted:    ../javFiles/AddLong.jav
	deleted:    ../javFiles/EmptyClass.jav
	deleted:    ../javFiles/EmptyMethod.jav
	deleted:    ../javFiles/Expressions.jav
	deleted:    ../javFiles/FC_Matrix.jav
	deleted:    ../javFiles/Faculty.jav
	deleted:    ../javFiles/FacultyIf.jav
	deleted:    ../javFiles/FacultyTyped.jav
	deleted:    ../javFiles/Fields.jav
	deleted:    ../javFiles/Generics.jav
	deleted:    ../javFiles/IfTest.jav
	deleted:    ../javFiles/Import.jav
	deleted:    ../javFiles/Lambda.jav
	deleted:    ../javFiles/Lambda2.jav
	deleted:    ../javFiles/Lambda3.jav
	deleted:    ../javFiles/LambdaField.jav
	deleted:    ../javFiles/LambdaRunnable.jav
	deleted:    ../javFiles/ListenerOverload.jav
	deleted:    ../javFiles/Matrix.jav
	deleted:    ../javFiles/Meth_Gen.jav
	deleted:    ../javFiles/MethodCallGenerics.jav
	deleted:    ../javFiles/Methods.jav
	deleted:    ../javFiles/MethodsEasy.jav
	deleted:    ../javFiles/Op1.jav
	deleted:    ../javFiles/Package.jav
	deleted:    ../javFiles/Sorting.jav
	deleted:    ../javFiles/Subclass.jav
	deleted:    ../javFiles/Superclass.jav
	deleted:    ../javFiles/Vector.jav
	deleted:    ../javFiles/fc.jav
	deleted:    ../javFiles/mathStruc.jav
	deleted:    ../javFiles/test.jav
	deleted:    ../javFiles/test1.jav
2019-01-11 22:52:39 +01:00
Martin Plümicke
c1e4f14fa4 Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2019-01-11 19:27:19 +01:00
Martin Plümicke
7d514d617c modified: ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Nur log-Ausgaben hinzugefuegt
2019-01-11 19:24:23 +01:00
Martin Plümicke
4490de575c Merge branch 'bytecode2' into unify-test 2019-01-11 15:16:29 +01:00
Martin Plümicke
752b68d447 new file: ../../java/bytecode/Tph6Test.java 2019-01-11 14:50:19 +01:00
Martin Plümicke
edd263ac15 bytecodeJavFiles in bytecode/javFiles geanedert
Please enter the commit message for your changes. Lines starting
2019-01-11 14:45:12 +01:00
Martin Plümicke
d0a261f55c modified: ../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../../main/java/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Set<UnifyType> fBounded = new HashSet<>(pair.getfBounded()); //PL 2019-01-09 new HashSet eingefuegt

	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/interfaces/IFiniteClosure.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   ../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
	modified:   ../../resources/bytecode/javFiles/Matrix.jav
2019-01-09 00:40:24 +01:00
Martin Plümicke
72a84323de modified: ../../../../main/java/de/dhbwstuttgart/typeinference/unify/Match.java
modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
im Fall 1 die Substitutionen der Typeplaceholders der Muster entfernt

	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
	modified:   ../../../../main/java/de/dhbwstuttgart/typeinference/unify/model/WildcardType.java
	modified:   ../../bytecode/javFiles/MatrixOP.jav
	modified:   ../../bytecode/javFiles/Merge.jav
2019-01-04 01:19:31 +01:00
Fayez Abu Alia
9e0a6151fd Bug in der Implemintierung von Simplify Algorithmus gefixt 2019-01-03 21:05:36 +01:00
Martin Plümicke
013539e7e8 modified: ../../../../main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
Throwable wieder in Exception zurückgewandelt

	modified:   ../../../../main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Log-Files um Name des jeweiligen Jav-Files ergaenzt

	modified:   ../../javFiles/Faculty.jav
2018-12-30 19:02:40 +01:00
Fayez Abu Alia
e07b189ba4 MatrixOP funktioniert (mit JUnit wird class file erzeugt) und dann mit TestBytecode.java getestet 2018-12-29 21:49:01 +01:00
Martin Plümicke
531b484c53 modified: src/main/java/de/dhbwstuttgart/core/JavaTXCompiler.java
Pfad des log-Files angepasst
Error-Ausgabe in der log-File Exception eingefuegt.
2018-12-29 10:20:19 +01:00
Martin Plümicke
cbe77d3722 modified: src/main/java/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
In Zeile 833 catch Exception durch catch Throwable ersetzt, da der UnsupportedClassVersionError geworfen wurde

	modified:   src/test/java/bytecode/FacTest.java
	modified:   src/test/java/bytecode/FacultyTest.java
	modified:   src/test/java/bytecode/FieldTest.java
	modified:   src/test/java/bytecode/FieldTph.java
	modified:   src/test/java/bytecode/FieldTph2Test.java
	modified:   src/test/java/bytecode/FunOLTest.java
	modified:   src/test/java/bytecode/GenTest.java
	modified:   src/test/java/bytecode/GreaterEqualTest.java
	modified:   src/test/java/bytecode/GreaterThanTest.java
	modified:   src/test/java/bytecode/LambdaCapturetest.java
	modified:   src/test/java/bytecode/LambdaTest.java
	modified:   src/test/java/bytecode/LambdaVoidTest.java
	modified:   src/test/java/bytecode/LessEqualTest.java
	modified:   src/test/java/bytecode/LessThanTest.java
	modified:   src/test/java/bytecode/MatrixOpTest.java
	modified:   src/test/java/bytecode/MergeTest.java
	modified:   src/test/java/bytecode/OLTest.java
	modified:   src/test/java/bytecode/OpTest.java
	modified:   src/test/java/bytecode/OverloadingSortingTest.java
	modified:   src/test/java/bytecode/OverloadingTest.java
	modified:   src/test/java/bytecode/PlusTest.java
	modified:   src/test/java/bytecode/PostIncTest.java
	modified:   src/test/java/bytecode/PreIncTest.java
	modified:   src/test/java/bytecode/RelOpsTest.java
	modified:   src/test/java/bytecode/SortingTest.java
	modified:   src/test/java/bytecode/SubMatTest.java
	modified:   src/test/java/bytecode/Tph2Test.java
	modified:   src/test/java/bytecode/Tph3Test.java
	modified:   src/test/java/bytecode/Tph5Test.java
	modified:   src/test/java/bytecode/TphTest.java
	modified:   src/test/java/bytecode/WhileTest.java
	modified:   src/test/java/bytecode/YTest.java
Pfade angepasst
2018-12-28 23:39:59 +01:00
Martin Plümicke
20abd181b6 modified: ../../pom.xml
modified:   ../../src/main/java/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Abfrage, ob OderConstraints empty sind, bei der Unify-Abbruchbedingungen eingefuegt

	modified:   ../../src/test/java/bytecode/BinaryTest.java
	modified:   ../../src/test/java/bytecode/MatrixTest.java
	modified:   ../../src/test/java/bytecode/applyLambdaTest.java
Pfadanpassungen
2018-12-28 19:37:45 +01:00
Michael Uhl
90c0cd431f Removed compiler plugin with target 9, 2018-12-25 16:02:31 +01:00
Martin Plümicke
f8d3263d24 Pfadumstellung 2018-12-21 15:27:29 +01:00
Martin Plümicke
ffa30e50c3 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-12-21 12:19:38 +01:00
Fayez Abu Alia
5798c47d62 Tests funktionieren 2018-12-20 15:19:51 +01:00
Fayez Abu Alia
f21959fef8 Neue Umstellung 2018-12-20 12:26:37 +01:00
Fayez Abu Alia
85fcef8289 commit 2018-12-20 10:25:55 +01:00
Fayez Abu Alia
5a3145281e Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-12-19 14:21:27 +01:00
Fayez Abu Alia
5624af609c Simplify fuer TPH Method < TPH Field angepasst 2018-12-19 14:18:50 +01:00
Martin Plümicke
a4eaaa748e Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-12-19 14:09:48 +01:00
Martin Plümicke
83b9f7edb8 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2
Conflicts:
	src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java

 It looks like you may be committing a merge.
 If this is not correct, please remove the file
	.git/MERGE_HEAD
 and try again.

 Please enter the commit message for your changes. Lines starting
 with '#' will be ignored, and an empty message aborts the commit.

 Committer: Martin Plümicke <pl@macmini_pl.verw.ba-horb.de>

 On branch bytecode2
 Your branch and 'origin/bytecode2' have diverged,
 and have 1 and 2 different commits each, respectively.
   (use "git pull" to merge the remote branch into yours)

 All conflicts fixed but you are still merging.

 Changes to be committed:
	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2018-12-19 14:08:42 +01:00
Fayez Abu Alia
b71efd65a0 Tphs einer Methode, die groesser als Tphs der Felder, werden als Class-Generics definiert 2018-12-19 13:20:09 +01:00
Fayez Abu Alia
e380c77ce6 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-12-19 10:13:27 +01:00
Fayez Abu Alia
794412a402 Tph von Felder werden als Class-Generics definiert werden 2018-12-19 10:12:45 +01:00
Martin Plümicke
f256714223 modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Returntype der Binary korrigiert.
2018-12-18 16:18:36 +01:00
Martin Plümicke
1931c61392 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Loesung Fehler rausgemacht
2018-12-14 17:46:09 +01:00
Martin Plümicke
c1a4617085 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Loeschen von Ueberzaehlugen Elementen eingefuegt.
2018-12-14 16:51:02 +01:00
Martin Plümicke
a733f373a7 modified: ../../../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-12-14 12:09:12 +01:00
Martin Plümicke
9dbfbe9e6a modified: ../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
2018-12-14 09:31:58 +01:00
Martin Plümicke
6b33fdc5fb Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-12-12 16:50:38 +01:00
Martin Plümicke
2f9d44d0b0 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
im Max den Fall a <.? ? extends a beruecksichtigt
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
; in der Schleife generate fresh Type Var entfernt
2018-12-12 16:49:16 +01:00
Fayez Abu Alia
3bf45888e5 Simplify gefixt 2018-12-12 13:03:53 +01:00
Fayez Abu Alia
dab0dc180c Aenderung in Signature-Wildcars rueckgaengig gemacht 2018-12-06 11:08:03 +01:00
Martin Plümicke
2d73b4e47f modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
Argumente von Konstruktore auch mit Varaincen und not wildcardable versehen
2018-12-06 10:43:46 +01:00
Martin Plümicke
54325d5168 modified: ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
new Arraylist erzeugt beim setzen der Initializer in den Pseudoconstruktor
2018-12-04 15:30:04 +01:00
Fayez Abu Alia
af6537841c modified: src/de/dhbwstuttgart/bytecode/BytecodeGen.java
modified:   src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
	modified:   src/de/dhbwstuttgart/bytecode/signature/Signature.java
	modified:   src/de/dhbwstuttgart/bytecode/utilities/KindOfLambda.java
	modified:   src/de/dhbwstuttgart/bytecode/utilities/Simplify.java
	modified:   src/de/dhbwstuttgart/syntaxtree/Constructor.java
	modified:   test/bytecode/MatrixOpTest.java
	modified:   test/bytecode/YTest.java
	modified:   test/bytecode/javFiles/OL.jav
2018-12-04 15:01:50 +01:00
Martin Plümicke
964b73e8c4 modified: ../../src/de/dhbwstuttgart/syntaxtree/Constructor.java
In der abstrakten Syntax Einbau vom super-Konstruktor Aufrufen in den Konstruktoren entfernt.
Dies muss nun beim Bytecode jeweils eingefügt werden
2018-12-03 15:06:56 +01:00
Martin Plümicke
c7c9f65ecf Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-11-26 11:00:58 +01:00
Martin Plümicke
416d68bcb0 Aenderugen siehe http://bugzilla.ba-horb.de/show_bug.cgi?id=124
modified:   ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
Zusäztlich Ein Fehler in der Trennung von Konstruktoren und Methoden gefixt.

	modified:   ../../src/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
	modified:   ../../src/de/dhbwstuttgart/syntaxtree/Constructor.java
	modified:   ../../src/de/dhbwstuttgart/syntaxtree/factory/ASTFactory.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/assumptions/FunNClass.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
	modified:   ../../test/bytecode/MatrixOpTest.java
2018-11-26 10:59:06 +01:00
Fayez Abu Alia
5c74c69b9e Bytecode fuer Lambdas in denen Variablen von lexical scope verwendet werden 2018-11-23 14:30:15 +01:00
Martin Plümicke
4da4966b86 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-11-21 23:17:17 +01:00
Fayez Abu Alia
7bfc222037 Bug in Simplify-Algo gefixt 2018-11-21 11:58:58 +01:00
Fayez Abu Alia
a269ee9690 TPHExtractor verbessert, Transivitat-Algortmus ergaenzt und JUnit Tests dazu geschrieben. FacultyTest funktioniert 2018-11-15 20:52:27 +01:00
Martin Plümicke
134496129a Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
Conflicts:
	src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
2018-11-15 16:04:16 +01:00
Fayez Abu Alia
d4b6073760 Faculty funktioniert rihtig 2018-11-14 16:19:25 +01:00
Fayez Abu Alia
2275153590 bug gefixt methodCall in MatrixOP 2018-11-14 13:26:37 +01:00
Fayez Abu Alia
95043455fa Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-11-14 13:02:53 +01:00
Fayez Abu Alia
2ef7bae78a e.printStackTrace in MethodCall entfernt 2018-11-14 12:51:41 +01:00
Fayez Abu Alia
0ceae1ebb7 Bug 122 gefixt. MatrixTest und OLTest funktionieren 2018-11-14 12:11:03 +01:00
Martin Plümicke
07c679a598 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Variance =2 eingefuehrt, wenn Variancen einer Menge unterschiedlich sind (Oer-Constraints)
	modified:   ../bytecode/MatrixOpTest.java
wieder zum Ausfuehren eingeschaltet
2018-11-13 16:08:07 +01:00
Martin Plümicke
74ad081e78 modified: JavaTXCompiler.java
wieder das aus uniy-test hinkopiert
2018-11-13 14:28:33 +01:00
Martin Plümicke
af93ea4750 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-11-13 11:01:23 +01:00
Martin Plümicke
e72310278d modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Oder-Constraints als Subsitutions zu den Substitutions der UnifyPairs hinzugefuegt.
2018-11-12 17:57:51 +01:00
Martin Plümicke
3ce60eec8d modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Rekursionstife dokumentieten eingefuegt.
2018-11-12 11:55:37 +01:00
Fayez Abu Alia
d27e0af57c Rekursiver Aufruf von Atrributen funktioniert 2018-11-08 13:02:33 +01:00
Martin Plümicke
0a9e325f54 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
2018-11-07 17:49:12 +01:00
Fayez Abu Alia
ea65a87336 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-11-07 15:30:04 +01:00
Fayez Abu Alia
623705d38a (Transivitaet) Algorithmus funktioniert 2018-11-07 15:29:37 +01:00
Martin Plümicke
72fa0978c2 modified: JavaTXCompiler.java
Kleinigkeit entfernt, dass varianceInheritance die gesamte variance-Vererbung macht.
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
2018-11-07 13:46:03 +01:00
Martin Plümicke
fc3331d810 modified: src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
OderConstraints in Unify integriert
2018-11-06 23:35:57 +01:00
Martin Plümicke
d08708878f modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
Variance distribut korrigiert
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Fehler im computeCartesianRecursiveOderConstraints beseitigt

	modified:   ../bytecode/javFiles/Matrix.jav
2018-11-05 23:28:08 +01:00
Martin Plümicke
d5d49ad30e Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
modified:   ../../src/de/dhbwstuttgart/bytecode/BytecodeGen.java
	modified:   ../../src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
	new file:   ../../src/de/dhbwstuttgart/bytecode/constraint/EqualConstraint.java
	new file:   ../../src/de/dhbwstuttgart/bytecode/constraint/ExtendsConstraint.java
	new file:   ../../src/de/dhbwstuttgart/bytecode/constraint/TPHConstraint.java
	modified:   ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
	modified:   ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	new file:   ../bytecode/FieldTest.java
	modified:   ../bytecode/MatrixOpTest.java
	modified:   ../bytecode/OverloadingSortingTest.java
	new file:   ../bytecode/YTest.java
	new file:   ../bytecode/javFiles/Field.jav
	modified:   ../bytecode/javFiles/Matrix.jav
	modified:   ../bytecode/javFiles/Sorting.jav
	modified:   ../bytecode/javFiles/Tph.jav
	new file:   ../bytecode/javFiles/Y.jav
2018-11-05 14:39:06 +01:00
Martin Plümicke
35696efd1c modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Alle Basistype bei Literalen hinzugefuegt.
2018-11-05 14:33:44 +01:00
Martin Plümicke
f0ba7c03b5 modified: ../../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Bei Int-Literal werden imports beruecksichtigt
2018-11-05 12:01:16 +01:00
Fayez Abu Alia
e6387dca6b Bug 116 gefixt 2018-11-04 12:49:11 +01:00
Martin Plümicke
5ddc9201f7 new file: ../YTest.java
new file:   Y.jav
2018-11-04 12:06:09 +01:00
Martin Plümicke
26477b60fb modified: ../bytecode/javFiles/Matrix.jav
Typannotationen wieder entfernt
2018-11-04 11:55:45 +01:00
Martin Plümicke
9bf273ac1a modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Unterscheidung zwischen FUNN-Receiver und anderem Receiver wieder geloescht
(war nur auskmmentiert)

	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
Fehler in der Reduce-FUNN-Rege beseitigt
2018-11-04 11:33:32 +01:00
Martin Plümicke
4ef360e41e modified: ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
modified:   ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
FieldVars eingefuegt, dass sie genauso wie localsvars immer die gleiche Typvariable in der abstrakten Syntax bekommen
2018-11-02 22:53:34 +01:00
Martin Plümicke
5849cd6f39 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-10-31 17:00:34 +01:00
Martin Plümicke
27b73f55e7 modified: ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
log-Ausgaben eingefuegt
2018-10-31 16:59:53 +01:00
Fayez Abu Alia
a02e5a16a8 Transivitaet-Algo version 1 2018-10-31 16:07:37 +01:00
Fayez Abu Alia
788ddb2bcc modified: src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
modified:   test/bytecode/javFiles/Field.jav
Field-Test funktioniert
2018-10-25 12:41:26 +02:00
Fayez Abu Alia
de08e5830d Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-10-25 12:27:28 +02:00
Fayez Abu Alia
7a1ed7ce6f Neuer Transivitaet-Algorithmus Step 1 und Step 2 2018-10-25 12:26:56 +02:00
Martin Plümicke
d4c17053d7 modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
public void visit(AssignToField assignLeftSide) {
        //Hier ist kein Code nötig. Es werden keine extra Constraints generiert
    	//HIER muss Code rein PL 2018-10-24
    	assignLeftSide.field.accept(this); eingefuegt
    }
2018-10-24 15:36:20 +02:00
Martin Plümicke
e6d8b92ffa modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
kleine Fehler
2018-10-24 14:05:20 +02:00
Martin Plümicke
d7e59ecdc7 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Erste Version mit Recursiv oder

	modified:   ../bytecode/javFiles/Matrix.jav
2018-10-20 17:42:44 +02:00
Martin Plümicke
141194c983 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
erste version mit computeCartesianRecursiveOderConstraints aktiviert
Fehler bei durchschnitt leer wird Element geloescht.
2018-10-19 17:36:23 +02:00
Martin Plümicke
6dce7058a0 modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
typeInference <-> typeInferenceOld
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
compute <-> computeOld
2018-10-19 16:24:00 +02:00
Martin Plümicke
225f380735 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
letzte Version bevor computeCartesianRecursiveOderConstraints aktiviert wird
2018-10-19 16:09:59 +02:00
Martin Plümicke
6a87f443e4 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2018-10-19 13:08:37 +02:00
Martin Plümicke
6ce9f4415e modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/constraints/ConstraintSet.java
2018-10-18 23:47:38 +02:00
Fayez Abu Alia
e3f2e4d793 Alle Tests funktionieren 2018-10-18 19:53:41 +02:00
Fayez Abu Alia
3fb95600a0 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-10-17 14:30:45 +02:00
Fayez Abu Alia
94b93c39df modified: src/de/dhbwstuttgart/bytecode/BytecodeGen.java
modified:   src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
	new file:   test/bytecode/FieldTest.java
	modified:   test/bytecode/MatrixOpTest.java
	new file:   test/bytecode/javFiles/Field.jav
	modified:   test/bytecode/javFiles/Sorting.jav
Boxing-Problem bei methodCall geloest und Tests funktionieren
2018-10-17 14:29:12 +02:00
Martin Plümicke
60be47c0f1 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-10-17 07:31:58 +02:00
Martin Plümicke
693b47b619 modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/result/ResultSet.java
	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Pair.java
2018-10-12 23:44:48 +02:00
Martin Plümicke
99bf02606b modified: src/de/dhbwstuttgart/typeinference/result/ResultPair.java
toString() eingefuegt

	modified:   src/de/dhbwstuttgart/typeinference/result/ResultSet.java
toString() eingefuegt

	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
int-Lieterals können auch double-Literals sein.

	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
kleien Ausgabeerweiterung
2018-10-12 13:17:59 +02:00
Martin Plümicke
2869f07a58 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-10-11 16:58:06 +02:00
Pluemicke Martin
2be9055608 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
aufgeraeumt
2018-10-11 16:31:02 +02:00
Fayez Abu Alia
0d83ee8505 modified: src/de/dhbwstuttgart/bytecode/signature/Signature.java
Zyklen werden abgefangen.
2018-10-11 16:01:26 +02:00
Fayez Abu Alia
f325b04ee2 Bugs 111 und 114 gefixt. Unboxing wird aufgerufen wenn es noetig ist 2018-10-11 14:17:54 +02:00
Martin Plümicke
56dd759762 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Nur bei leerem Durchscnit filtern geloescht.
2018-10-11 13:09:18 +02:00
Martin Plümicke
1b7bded3c3 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
1. Version läuft aber nicht schnell
2018-10-11 12:40:20 +02:00
Martin Plümicke
bda7dcb5c1 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-10-11 09:47:55 +02:00
Martin Plümicke
241c7f37d9 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
weitere Element rausfiltern angefangen

	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Methode: getGroundBasePair eingefuegt
2018-10-11 00:45:59 +02:00
Martin Plümicke
54b4ad97f6 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-10-10 14:41:35 +02:00
Martin Plümicke
674233e2f9 modified: ../../src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/StatementGenerator.java
Trennung von Integer und Double in private Expression convert(Java8Parser.LiteralContext literal) eingefuegt

	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Typisierung von Literals eingefuegt

	modified:   ../../test/bytecode/javFiles/MatrixOP.jav
Name Matrix durch MatrixOP ersetzt
2018-10-05 00:23:04 +02:00
Fayez Abu Alia
b56f18c16e Unboxing fuer methodcall wird nicht gemacht wenn es sich in Returnstatement befindet. SimplifyPairs fuer Paramtrisierte Typen wird einmal vor die Signatureerzeugung ausgefuehrt und nicht separat. getAllPairs in Signature gefixt. 2018-10-04 12:54:03 +02:00
Martin Plümicke
8e220b81d5 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
bei der der Rueckgabe von subst wurde noch Optional beruecksichtigt
2018-09-27 17:17:36 +02:00
Martin Plümicke
8a43839c28 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Gleichungen a <.? b werden durch a =. b ersetzt und subst angewandt.

	deleted:    ../../test/bytecode/VectorAddTest.java
	modified:   ../../test/bytecode/javFiles/Matrix.jav
	modified:   ../../test/bytecode/javFiles/Sorting.jav
2018-09-27 15:59:57 +02:00
JanUlrich
0594fc7381 aufräumen 2018-09-26 16:46:55 +02:00
Fayez Abu Alia
77a952c997 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-09-26 16:31:36 +02:00
Fayez Abu Alia
3c7b1451d4 MatrixTest funktioniert 2018-09-26 16:25:52 +02:00
JanUlrich
ceba60cccb Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-09-26 16:21:22 +02:00
JanUlrich
88e2366eab ListenerOverload Test 2018-09-26 16:21:10 +02:00
Martin Plümicke
334b56234f Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2
Conflicts:
	test/bytecode/javFiles/VectorAdd.jav
2018-09-26 15:45:23 +02:00
Martin Plümicke
4ace3b6f92 new file: ../../test/bytecode/javFiles/VectorAdd.jav 2018-09-26 15:44:36 +02:00
Martin Plümicke
355df5fab7 new file: ../../test/bytecode/FunOLTest.java
new file:   ../../test/bytecode/javFiles/FunOL.jav
	new file:   ../../test/bytecode/vectorAddTest.java
2018-09-26 15:43:27 +02:00
Martin Plümicke
85d5485595 modified: ../../test/bytecode/javFiles/Sorting.jav
sort hinzugefuegt
2018-09-26 15:40:51 +02:00
Fayez Abu Alia
d3d1d658b8 Bug 112 gefixt 2018-09-26 15:37:00 +02:00
Fayez Abu Alia
2add9f518c Richtiger Bytecode fuer If-Statements wird erzeugt.
modified:   test/bytecode/FacultyTest.java
FacultyTest geaendert.

	new file:   test/bytecode/VectorAddTest.java
VectorAddTest hinzugefuegt.
2018-09-26 13:46:34 +02:00
Martin Plümicke
f46d26e53f Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-09-19 22:22:36 +02:00
Martin Plümicke
315b6172a0 modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/FCGenerator.java

Die Anzahl der mehrfachen Lösungen bei sorting.jav reduziert
2018-09-19 22:21:07 +02:00
Fayez Abu Alia
ea3ff69047 Faculty.jav geaendert 2018-09-19 16:00:55 +02:00
Fayez Abu Alia
44edc7e9cb Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-09-19 15:55:17 +02:00
Fayez Abu Alia
673c249b68 modified: src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
new file:   src/de/dhbwstuttgart/bytecode/IfStatement.java
Bytecode für If statement wir erzeugt aber noch nicht vollständig.
	modified:   test/bytecode/javFiles/Faculty.jav
Test angepasst.
2018-09-19 15:52:29 +02:00
JanUlrich
d165260be0 Beginnen mit Parser Dokumentation 2018-09-19 14:37:40 +02:00
Fayez Abu Alia
aeb8bb92ed Bug 108 gefixt 2018-09-19 13:05:00 +02:00
Martin Plümicke
5768783828 modified: ../../test/bytecode/javFiles/Matrix.jav
Argumenttype von mul wieder entfernt.
2018-09-13 12:07:02 +02:00
Martin Plümicke
acc7d95060 modified: ../../test/bytecode/javFiles/Matrix.jav
mul hat Argumenttype der nicht funktioniert.
2018-09-13 12:04:50 +02:00
Martin Plümicke
50027a9da0 modified: ../../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
Variance für Attribute/Fields eingefuegt

	new file:   ../FacultyTest.java
	new file:   ../MatrixOpTest.java
	new file:   ../SortingTest.java
	new file:   MatrixOP.jav
	modified:   Sorting.jav
2018-09-11 21:59:20 +02:00
Martin Plümicke
236afea4f9 modified: ../../test/bytecode/javFiles/Faculty.jav
Typannotation entfernt
2018-09-10 13:14:36 +02:00
JanUlrich
b8741d881b Sorting Test für Bytecoded generierung 2018-09-10 02:36:53 +02:00
JanUlrich
16ca123780 Testfall anfügen 2018-09-09 18:53:43 +02:00
JanUlrich
654f347450 Fehler in Test Lambda beheben 2018-09-07 04:35:58 +02:00
JanUlrich
c72204428f == Operator anfügen 2018-09-07 01:41:26 +02:00
JanUlrich
1e037a0019 Fehler im Parsen von Typen mit Package Namen behoben 2018-09-07 00:39:31 +02:00
JanUlrich
8759a9cc5d IfStmt Constraints erstellen 2018-08-30 00:02:17 +02:00
JanUlrich
0ee5a6791d FunN falsch benannt 2018-08-29 21:48:15 +02:00
JanUlrich
1a8115bf07 Field Initialisierungen anfügen 2018-08-29 02:43:32 +02:00
Martin Plümicke
72e128d3f3 modified: test/javFiles/Fields.jav
Typdeklaration von Filed test2 entfernt

	modified:   test/typeinference/JavaTXCompilerTest.java
Unittest LambdaFiled.java reingenommen
2018-08-28 10:11:46 +02:00
JanUlrich
b70e261b23 Var Keyword in Java8.g4 Grammatik verlagern 2018-08-24 19:33:55 +02:00
JanUlrich
df95c244bf add Fields Test. Felder können ohne Typ oder mit var-Keyword initialisiert werden 2018-08-24 18:25:34 +02:00
JanUlrich
1061f355ff Felder aktivieren 2018-08-20 18:22:21 +02:00
JanUlrich
4ca671631d Merge branch 'bigRefactoring' into bytecode2 2018-08-20 14:17:09 +02:00
JanUlrich
7ee06254f0 Resolve fixen 2018-08-19 19:43:29 +02:00
JanUlrich
a823ef2b16 Generics Resolve fixen 2018-08-19 19:42:31 +02:00
Fayez Abu Alia
9281786db4 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-13 18:29:30 +02:00
Fayez Abu Alia
77d397fc53 modified: src/de/dhbwstuttgart/bytecode/BytecodeGen.java
modified:   src/de/dhbwstuttgart/bytecode/signature/Signature.java
	modified:   src/de/dhbwstuttgart/bytecode/signature/TypeToSignature.java
	modified:   test/bytecode/javFiles/Merge.jav
	modified:   test/bytecode/javFiles/OL.jav
	modified:   test/bytecode/javFiles/Tph.jav
	modified:   test/bytecode/javFiles/Tph3.jav
	new file:   test/bytecode/javFiles/WC.jav
2018-08-13 18:28:41 +02:00
Martin Plümicke
5f89188d00 new file: ../../test/bytecode/Tph5Test.java
new file:   ../../test/bytecode/javFiles/Tph5.jav
erzeugt Typfehler zur Laufzeit mit
mport java.util.Vector;

public class Tph5Use {
	public static  void main(String[] args) {
		Tph5 tph5 = new Tph5();
		Integer i = tph5.<Integer, Integer, Integer, Integer>m(1,2,3);
		String s = tph5.<String, String, Integer, Integer>m("xx",2,3);
	}
}
2018-08-13 18:19:02 +02:00
Martin Plümicke
6bdd347298 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2
Conflicts:
	test/bytecode/javFiles/Lambda.jav
2018-08-09 15:34:57 +02:00
Martin Plümicke
9b131c48b0 modified: test/bytecode/LambdaTest.java
modified:   test/bytecode/javFiles/Lambda.jav
aufgeraeumt

	new file:   test/bytecode/LambdaVoidTest.java
	new file:   test/bytecode/javFiles/LambdaVoid.jav
FunVoidN-Tests
2018-08-09 15:32:48 +02:00
Martin Plümicke
5e14acfa12 modified: ../../test/bytecode/javFiles/Merge.jav
modified:   ../../test/bytecode/javFiles/OL.jav
2018-08-08 18:12:24 +02:00
Martin Plümicke
7d9976e638 modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/GenericsResolverSameName.java
superwildcard durch extendswildcard ausgetauscht.
2018-08-08 15:32:42 +02:00
Fayez Abu Alia
2bbb6e0b6b Bug in Signature gefixt. Merge Test tut. 2018-08-08 14:33:31 +02:00
Martin Plümicke
6d34ae89ae modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
logging für TypeUnify aus commit d6364040 wiederhergestellt
2018-08-07 17:38:40 +02:00
JanUlrich
9492c43e70 Merge mit bigRefactoring 2018-08-06 16:43:24 +02:00
JanUlrich
f18083ba06 Merge 2018-08-06 16:41:38 +02:00
JanUlrich
b9aee4da77 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-06 16:40:08 +02:00
JanUlrich
70972a5cbf Fehler mit GenericRefTypes in Wildcards beheben 2018-08-06 16:39:49 +02:00
Fayez Abu Alia
f99d4dae5a DUP Befehl fuer UnaryExpr 2018-08-06 16:14:09 +02:00
Fayez Abu Alia
dc535ad9b7 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-06 14:47:26 +02:00
Fayez Abu Alia
dd8b4f322e BinaryTest funktioniert 2018-08-06 14:46:54 +02:00
JanUlrich
af894ebfe4 Fehler mit Wildcards in ASTFactory beheben 2018-08-06 14:03:09 +02:00
JanUlrich
cc676f32c5 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-06 14:01:53 +02:00
JanUlrich
272948f70d Fehler mit Wildcards in ASTFactory beheben 2018-08-06 14:01:31 +02:00
Fayez Abu Alia
5d0603f423 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-06 13:53:19 +02:00
Martin Plümicke
3e9e222d73 Merge branch 'plugin' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2
test/bytecode/javFiles/Lambda.jav
	test/bytecode/javFiles/OL.jav
2018-08-06 13:45:20 +02:00
Fayez Abu Alia
d6364040fa merge 2018-08-06 13:34:34 +02:00
Fayez Abu Alia
52c445435d MergeTest 2018-08-06 13:25:41 +02:00
Martin Plümicke
6264d928b2 modified: test/bytecode/javFiles/Merge.jav
modified:   test/bytecode/javFiles/OL.jav
2018-08-06 13:14:08 +02:00
Martin Plümicke
89387d2718 new file: ../../test/bytecode/MergeTest.java
new file:   ../../test/bytecode/javFiles/Merge.jav
2018-08-06 10:03:03 +02:00
Fayez Abu Alia
0443f1e528 Lambda Test angepasst 2018-08-03 14:02:09 +02:00
Fayez Abu Alia
34969e66ba bug in Signature gefixt 2018-08-03 13:48:45 +02:00
Fayez Abu Alia
dcbcf873e4 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-08-01 14:04:06 +02:00
Fayez Abu Alia
deb632050a LDC2_W fuer Long verwendet. Tests bereinigt. 2018-08-01 14:03:23 +02:00
JanUlrich
acf8c108e8 Diamantoperator 2018-07-26 16:25:54 +02:00
JanUlrich
968dc06edc Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-07-26 15:16:28 +02:00
JanUlrich
47808c4e6f Diamantoperator 2018-07-26 14:57:13 +02:00
Fayez Abu Alia
5029cca0f1 Transivitaet Berechnung bei TPHs korrigiert 2018-07-26 14:37:11 +02:00
JanUlrich
79eb3135d6 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-07-26 14:04:12 +02:00
Fayez Abu Alia
adf675e595 Bug 98 gefixt, kleine Aenderung in Signature Klasse und Tph4 Test eingefuegt 2018-07-25 16:45:59 +02:00
Fayez Abu Alia
f3e60e50ef Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-07-25 11:01:33 +02:00
Fayez Abu Alia
30f75f2f17 LambdaTest 2018-07-25 11:01:03 +02:00
Martin Plümicke
4e5c75673d new file: ../../test/bytecode/Tph3Test.java
new file:   ../../test/bytecode/javFiles/Tph3.jav
Test mit wechselseitiger Rekursion
2018-07-19 13:57:01 +02:00
Martin Plümicke
2421dd0222 modified: ../../test/bytecode/LambdaTest.java
jetzt korrekt
	modified:   ../../test/bytecode/Tph2Test.java
jetzt korrekt
	modified:   ../../test/bytecode/TphTest.java
jetzt korrekt
	modified:   ../../test/bytecode/applyLambdaTest.java
jetzt korrekt
	modified:   ../../test/bytecode/javFiles/Tph.jav
Rueckgabewert veraendert
2018-07-19 13:54:31 +02:00
Fayez Abu Alia
14be882b7b LambdaTest Funktioniert. 2018-07-18 22:49:21 +02:00
Martin Plümicke
448d3e04f8 modified: ../../test/bytecode/LambdaTest.java 2018-07-18 17:56:20 +02:00
Martin Plümicke
fe99db81b3 modified: ../../test/bytecode/LambdaTest.java
Lambda-Ausruck wird ausgewertet. Funktioniert nicht, vermutich, weil Lambda-Methode apply private
2018-07-18 17:54:44 +02:00
Martin Plümicke
c3ca4777bb modified: ../../test/bytecode/LambdaTest.java
noch unvllstaendig

	modified:   ../../test/bytecode/MatrixTest.java
Test korrekt
	modified:   ../../test/bytecode/javFiles/Matrix.jav
import byte entfernt, so dass Laufzeit passt
2018-07-18 17:01:01 +02:00
Martin Plümicke
16b7db9218 modified: test/bytecode/MatrixTest.java
Test einfeguegt nicht getestet
	modified:   test/bytecode/OLTest.java
Test eingefuegt
	modified:   test/bytecode/javFiles/OL.jav
- Main in OLMain umbenannt
- Klassen publich gemacht
2018-07-18 15:34:49 +02:00
Fayez Abu Alia
2d5f03a3e0 Bugs 89 und 90 2018-07-18 13:51:05 +02:00
Martin Plümicke
fd64b84072 modified: TYPEStmt.java
Bei der Addition + Abfragen eingefuegt, ob die Subtypen von Number jeweils import sind. Nur dann werden Annahmen erstellt.

	modified:   ../../../../../test/bytecode/javFiles/Matrix.jav
	modified:   ../../../../../test/bytecode/javFiles/OL.jav
2018-07-17 17:38:00 +02:00
Martin Plümicke
2a5c727400 new file: applyLambdaTest.java
modified:   javFiles/Lambda.jav
	new file:   javFiles/applyLambda.jav
An das JavaTXExamples angepasst
2018-07-14 09:28:13 +02:00
Martin Plümicke
3fedbcc4a0 modified: target/JavaTXcompiler-0.1-jar-with-dependencies.jar 2018-07-13 11:49:43 +02:00
Martin Plümicke
4f84e60246 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-07-12 16:17:07 +02:00
Fayez Abu Alia
d373b3dbf8 merge 2018-07-10 22:26:52 +02:00
Fayez Abu Alia
7c3ca93c0b Bug 88 gefixt.
new file:   src/de/dhbwstuttgart/bytecode/ArgumentVisitor.java
Visitor für Argumente des Method Call einer Methode aus Standard-Bibliothek und dient dazu,
wenn die Argument eine primitive Typ besitzt dann wird unboxing gemacht.
Signatur von Konstruktoren angepasst.
2018-07-10 22:15:26 +02:00
Martin Plümicke
72a4c64c5c modified: ../../test/bytecode/javFiles/Matrix.jav
Konstruktoren eingefuegt
2018-07-06 10:37:59 +02:00
Martin Plümicke
72c2e19def Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin
src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	test/bytecode/javFiles/Lambda.jav
	test/typeinference/UnifyTest.java

	modified:   src/de/dhbwstuttgart/.DS_Store
	modified:   src/de/dhbwstuttgart/bytecode/BytecodeGen.java
	modified:   src/de/dhbwstuttgart/bytecode/BytecodeGenMethod.java
	modified:   src/de/dhbwstuttgart/bytecode/descriptor/DescriptorToString.java
	modified:   src/de/dhbwstuttgart/bytecode/signature/Signature.java
	modified:   src/de/dhbwstuttgart/bytecode/signature/TypeToSignature.java
	modified:   src/de/dhbwstuttgart/bytecode/utilities/MethodFromMethodCall.java
	modified:   src/de/dhbwstuttgart/syntaxtree/type/FunN.java
	modified:   src/de/dhbwstuttgart/typeinference/assumptions/FunNClass.java
	modified:   src/de/dhbwstuttgart/typeinference/assumptions/MethodAssumption.java
	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
	modified:   target/JavaTXcompiler-0.1-jar-with-dependencies.jar
	modified:   test/bytecode/javFiles/Lambda.jav
	modified:   test/bytecode/javFiles/Matrix.jav
	modified:   test/javFiles/Lambda.jav
	modified:   test/javFiles/Matrix.jav
	modified:   test/javFiles/Vector.jav
	modified:   test/typeinference/UnifyTest.java
2018-07-05 00:54:40 +02:00
Fayez Abu Alia
bd0bfed2cb Matrix Test läuft. Code muss noch aufgeräumt werden 2018-07-04 22:18:16 +02:00
JanUlrich
80b4f631ed Verzeichnis test/logfiles anfügen 2018-07-04 12:36:59 +02:00
Martin Plümicke
cee86a6b61 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-07-04 12:07:21 +02:00
Martin Plümicke
f1f34a6733 modified: test/javFiles/Matrix.jav 2018-07-04 12:07:11 +02:00
Martin Plümicke
1a2454e00b modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Kommentare zur Max Min optimierung rasugenommen
2018-07-04 11:47:02 +02:00
Martin Plümicke
bc1a796e28 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-07-03 11:54:24 +02:00
Fayez Abu Alia
9f53d1fdc2 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-07-03 11:20:33 +02:00
Fayez Abu Alia
69706ee1d2 Bug 82 gefixt und getestet. Descriptor von MethodCall von Interface korrigiert. 2018-07-03 11:15:58 +02:00
Martin Plümicke
b8e229cf3f modified: ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
	modified:   ../javFiles/Matrix.jav
2018-07-02 17:24:16 +02:00
Martin Plümicke
e0c5afcd6d modified: test/bytecode/javFiles/Lambda.jav
modified:   test/javFiles/Vector.jav
	modified:   test/typeinference/UnifyTest.java
2018-07-02 11:11:29 +02:00
JanUlrich
9123e222f4 Vector TEst anfügen 2018-06-28 16:47:05 +02:00
Fayez Abu Alia
29bd9a3f4f remove logFile 2018-06-27 15:39:04 +02:00
Fayez Abu Alia
7926c25c7d Soviel wie möglich unnötige TPHs aus Signaturen von Paramtrisierten Typen entfernt 2018-06-27 15:20:35 +02:00
Fayez Abu Alia
b4c604e2b1 Bug in der Methode simplifyPairs gefixt.
Bug 82 gefixt.
TPHs in paramtrisierten Typen als TypeVariablen in Signature hinzugefügt.
Lambda.jav funktioniert.
2018-06-27 14:49:22 +02:00
Martin Plümicke
d8bb4d6188 modified: test/bytecode/javFiles/Lambda.jav
Lambda auf apply angepasst
2018-06-23 10:54:14 +02:00
Martin Plümicke
0ecaf36648 modified: src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Bei Literal die Zuweisung des Typs eingefuegt aber wieder auskommentiert,
weil es im Moment nur double Literals gibt.
	modified:   test/javFiles/Lambda.jav
2018-06-23 10:42:46 +02:00
Martin Plümicke
2eb7a63480 modified: src/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
FunN$$ eingefuegt

	modified:   src/de/dhbwstuttgart/syntaxtree/type/FunN.java
	modified:   src/de/dhbwstuttgart/typeinference/assumptions/FunNClass.java
	modified:   src/de/dhbwstuttgart/typeinference/assumptions/MethodAssumption.java
	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Methodcall einige Bugs sowohl beim apply als uch bei allen anderen gefixt.

	modified:   test/javFiles/Lambda.jav
2018-06-23 01:05:13 +02:00
Martin Plümicke
1991bbbcd3 modified: src/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
FunN-Types werden nach RefTypes mit FunN$$ nach Unifikation zurueckkonvertiert.

	modified:   target/JavaTXcompiler-0.1-jar-with-dependencies.jar
	modified:   test/bytecode/javFiles/Faculty.jav
	modified:   test/bytecode/javFiles/Lambda.jav
	modified:   test/bytecode/javFiles/OL.jav
	modified:   test/javFiles/Lambda.jav
2018-06-21 09:51:05 +02:00
Martin Plümicke
b5bc9fa01a modified: target/JavaTXcompiler-0.1-jar-with-dependencies.jar 2018-06-20 20:27:19 +02:00
Martin Plümicke
a92521f04a Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-06-20 20:06:37 +02:00
Martin Plümicke
895b5a972e new file: doc/PluginBau.pdf
modified:   src/de/dhbwstuttgart/typedeployment/TypeInsert.java
	modified:   src/de/dhbwstuttgart/typedeployment/TypeInsertPoint.java
equals Methoden eingefuegt um Marker nur einmal im Plugin zu haben

	modified:   target/JavaTXcompiler-0.1-jar-with-dependencies.jar
	modified:   test/bytecode/javFiles/OL.jav
	modified:   test/typeinference/UnifyTest.java
2018-06-20 19:52:58 +02:00
Fayez Abu Alia
11649b39d3 generateBCForFun() um Parameter path erweitert. 2018-06-20 18:15:44 +02:00
Fayez Abu Alia
303cfa5409 log entfernt 2018-06-20 18:08:25 +02:00
Fayez Abu Alia
660ef68f7e generateBytecode() um Parameter path erweitert. Alle Tests angepasst 2018-06-20 18:07:17 +02:00
Fayez Abu Alia
23eab0c9a4 TPHs, die nicht in ParameterListe der Methode vorkommen, werden in Signature geschrieben 2018-06-19 14:56:22 +02:00
Fayez Abu Alia
162ca3eb27 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-06-19 13:32:24 +02:00
Fayez Abu Alia
6d70464a1c TPH X < TPH Y <...< TPH Z vereinfacht => TPH X < TPH Z und Signature-Erzeugung wird angepasst 2018-06-19 13:31:39 +02:00
Martin Plümicke
1437788f5a Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-06-18 11:50:55 +02:00
Martin Plümicke
04d3ac84e7 jeweils apply eingefuegt, was nicht funktioniert
modified:   ../../test/typeinference/UnifyTest.java
Matrix auskommentiert und Lambda einkommentiert
2018-06-15 16:19:12 +02:00
Fayez Abu Alia
2db5ecc260 logFile deleted 2018-06-13 15:51:59 +02:00
Fayez Abu Alia
b325e205a1 Bugs gefixt. Bytecode-Erzeugung für MethodCall ergänzt. Bytecode für Matrix-Test (Funktioniert noch nicht ganzErzeugung Signatures und Descriptors verbessert 2018-06-13 15:50:05 +02:00
Fayez Abu Alia
ff2bca5ce5 Alle TPHS einer Methode und pairs (TPH < SuperTPH) werden gesammelt,
gemeinsamme TPHs werden bestimmt, die Klassenkopf als Type-Variables
	definiert werden sollen.
	Erzeugung von Signature angepasst.
2018-06-12 11:41:59 +02:00
Martin Plümicke
c08d4b8457 Merge branch 'plugin' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-06-08 14:39:51 +02:00
Martin Plümicke
d2d02e26f0 modified: target/JavaTXcompiler-0.1-jar-with-dependencies.jar 2018-06-08 14:35:22 +02:00
Martin Plümicke
e0d5699ae7 deleted: Installation/install.html 2018-06-01 17:13:05 +02:00
Martin Plümicke
3f2558d21e new file: Website/Installation/install.html
new file:   Website/JavaTXExamples.zip
	new file:   Website/index.html
	new file:   Website/install/Restart.png
	new file:   Website/install/availableSoftware1.png
	new file:   Website/install/availableSoftware2.png
	new file:   Website/install/instal.html
	new file:   Website/install/install.html
	new file:   Website/install/installAnyway.png
	new file:   Website/install/installationDetails.png
	new file:   Website/install/licenseAgreement.png
	new file:   Website/install/newsoftware.png
	new file:   Website/install/selectInstallation.png
	new file:   Website/newJavaTXProject/addLibrary2.png
	new file:   Website/newJavaTXProject/buildPath1.png
	new file:   Website/newJavaTXProject/buildPath2.png
	new file:   Website/newJavaTXProject/buildPath3.png
	new file:   Website/newJavaTXProject/buildPath4.png
	new file:   Website/newJavaTXProject/newJavFile.png
	new file:   Website/newJavaTXProject/newJavFolder1.png
	new file:   Website/newJavaTXProject/newJavFolder2.png
	new file:   Website/newJavaTXProject/newJavaTXProject.html
	new file:   Website/newJavaTXProject/newJavaTXProject.png
	new file:   Website/usePlugin/usePlugin.html
	new file:   Website/usePlugin/usePlugin1.png
	new file:   Website/usePlugin/usePlugin2.png
	modified:   test/bytecode/javFiles/OL.jav
2018-06-01 16:57:35 +02:00
Martin Plümicke
814aef082d modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
log-File schreiben entfernt
2018-05-30 18:35:57 +02:00
Martin Plümicke
5a0e53485c modified: src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Unary-Expression SMALLERNEQDOT eingefuegt
	modified:   test/bytecode/javFiles/Fac.jav
2018-05-30 17:23:55 +02:00
JanUlrich
1ca7fba835 Generics fix 2018-05-30 16:10:20 +02:00
JanUlrich
98eb1827b8 Fix Generics parsing 2018-05-30 15:57:51 +02:00
JanUlrich
ee1fa17aba Implement convert(ClassOrInterfaceType) 2018-05-30 15:29:59 +02:00
Fayez Abu Alia
66078360da Alle TPH der Methode werden in eine Liste gespeichert.
Bug gefixt => FacTest liefert richtiges Ergebnis.
Deskriptoren von Methoden, in denen TPHs auftauchen, werden erzeugt.
Signaturen von von Methoden, in denen TPHs auftauchen, werden erzeugt.
Test, RückagbeTypen der Methoden = TPH und ParameterTypen = TPH.
2018-05-30 15:27:21 +02:00
Martin Plümicke
bb26112a9b modified: ../../../target/JavaTXcompiler-0.1-jar-with-dependencies.jar
modified:   Fac.jav
	modified:   Faculty.jav
	modified:   OL.jav
	modified:   While.jav
	modified:   ../../javFiles/AddLong.jav
2018-05-30 00:27:20 +02:00
JanUlrich
26f24db0a3 Kleiner Fix am ASTWalker 2018-05-28 17:08:20 +02:00
Martin Plümicke
97d893e66b Merge branch 'plugin' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin
merge
2018-05-28 16:36:46 +02:00
Martin Plümicke
57fb90afaf modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
LogFile  optional gemacht
2018-05-28 16:35:47 +02:00
JanUlrich
63ac79f02c Hotfix für Typparsen Problem 2018-05-28 16:21:52 +02:00
JanUlrich
07fa62d11d merge Keine Ahnung mit was ... 2018-05-28 16:21:43 +02:00
JanUlrich
c7042d185f Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-05-28 16:18:49 +02:00
JanUlrich
7e3fca2da9 Hotfix für Typparsen Problem 2018-05-28 16:18:33 +02:00
Martin Plümicke
66587a8f71 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
SMALERNEQDOT in Regel a <!=. Theta korrigiert
SMALERNEQDOT in Regel Theta <!=. a geloescht
2018-05-28 16:07:29 +02:00
JanUlrich
ad42282485 Test 2018-05-28 15:55:14 +02:00
Martin Plümicke
581e5e574e Merge branch 'bytecode2' into plugin 2018-05-25 14:41:22 +02:00
Martin Plümicke
ae14dfd947 modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
2018-05-25 14:39:54 +02:00
Martin Plümicke
9d53d9d5d1 modified: src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
kleiner Fehler korrigiert
	modified:   test/javFiles/Matrix.jav
2018-05-25 11:16:02 +02:00
Fayez Abu Alia
58f5e17ab5 FacTest.java 2018-05-25 10:01:44 +02:00
Fayez Abu Alia
6fce2760c5 While.jav 2018-05-25 09:53:30 +02:00
Martin Plümicke
1de897fb1f modified: src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
System.out.println geloescht
2018-05-24 17:59:51 +02:00
Martin Plümicke
87dede5d5f modified: ../../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
F-Bounded Problematik durche neues greater ggf. geloest.
Es werden Falle ausgeschlossen. Diese Faelle muessen noch ergaenzt werden.
2018-05-24 17:45:10 +02:00
Fayez Abu Alia
f085f9f499 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-05-24 16:44:28 +02:00
Fayez Abu Alia
a40d2b991f kleine Änderung 2018-05-24 16:44:05 +02:00
Martin Plümicke
704415ae3b Merge branch 'unifyOptimierung' into plugin
fixed	test/javFiles/Matrix.jav
2018-05-24 16:43:31 +02:00
Martin Plümicke
65531ac12e modified: ../../src/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
modified:   ../../src/de/dhbwstuttgart/typeinference/constraints/Pair.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/PairOperator.java
Einführung eines neuen Operators SMALLERNEQDOT um Ungleichungen a <!=. Number für die Relationsoperatoren einfuehren zu koennen.

	modified:   ../../test/javFiles/Matrix.jav
2018-05-24 16:20:57 +02:00
Martin Plümicke
34e632b872 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
Reduce ausgetauscht bei ArgPara und Returntype
	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
isUndefinedPair korrigiert.
	modified:   ../../test/bytecode/LambdaTest.java
	modified:   ../../test/bytecode/javFiles/Plus.jav
	modified:   ../../test/bytecode/javFiles/RelOps.jav
2018-05-24 14:11:04 +02:00
Martin Plümicke
3470215bae Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-05-24 10:48:57 +02:00
Martin Plümicke
f5398fa8e9 deleted: ../../test/logFiles/log 2018-05-24 10:34:50 +02:00
Martin Plümicke
f617ad8946 modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Relationen auf verschiedene Numeric-Typen umgestellt
im equals Null abgefragt
2018-05-24 10:28:22 +02:00
Martin Plümicke
876ec6a4f6 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unifyOptimierung
Conflicts:
	src/de/dhbwstuttgart/core/JavaTXCompiler.java
solved
2018-05-24 09:41:15 +02:00
Martin Plümicke
26d9b1215f modified: ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/interfaces/IFiniteClosure.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/ExtendsType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/FunNType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/SuperType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
	modified:   ../../test/javFiles/Matrix.jav
F-Bounded angefangen
2018-05-24 09:17:31 +02:00
Fayez Abu Alia
0f29bc038a Bugs gefixt. Tests für relationalen Operatoren(GreaterEqualTest, ...) laufen.
Für Typplaceholder werden Generics verwendet.

Neue Tests angefügt.
2018-05-23 15:38:41 +02:00
Martin Plümicke
a5ed5a2a46 Merge branch 'unifyOptimierung' into plugin 2018-05-22 17:29:44 +02:00
Martin Plümicke
c597b0430a modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
cardProd als Variable eingfuegt
	modified:   ../../src/de/dhbwstuttgart/syntaxtree/ClassOrInterface.java
toString() eingfuegt
	modified:   ../../src/de/dhbwstuttgart/syntaxtree/GenericDeclarationList.java
toString() eingfuegt
	modified:   ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
BinaryOp <. statt =.
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Bei nicht importierten (result []) undefinPair gesetzt
	modified:   ../javFiles/Matrix.jav
falsche importe rausgenommen
2018-05-22 17:10:07 +02:00
Martin Plümicke
06a0cb8eaf modified: TypeUnifyTask.java
noAllErasedElements eingefuegt
2018-05-19 10:13:08 +02:00
Martin Plümicke
b5a601d798 modified: TypeUnifyTask.java
Varianceweitergabe in den verschiedenen Cases eingefuegt
Erste Zaehlungen eingefuegt
2018-05-19 09:50:57 +02:00
Martin Plümicke
7ea6777906 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../javFiles/Lambda.jav
	modified:   ../typeinference/UnifyTest.java
2018-05-18 13:12:49 +02:00
Martin Plümicke
6b1896f58c modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   src/de/dhbwstuttgart/typeinference/unify/distributeVariance.java
greaterFUNN und smallFUNN fuer generierte TPHs Variance gesetzt
	modified:   test/javFiles/Lambda.jav
vom bytecode ruebergeholt
2018-05-18 09:55:45 +02:00
Martin Plümicke
d81c06cdd9 modified: ../../src/de/dhbwstuttgart/typeinference/unify/distributeVariance.java
Implementierung fuer FuNN eingefuegt
	deleted:    ../../src/de/dhbwstuttgart/typeinference/unify/inheritVariance.java

wahrscheinlich bei FuNN-Regeln Variance setzen.
2018-05-18 00:03:07 +02:00
Martin Plümicke
8baff8f376 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
Variancenvererbung eingefuegt
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Variancenvererbung geloescht
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   ../../test/typeinference/UnifyTest.java
2018-05-17 22:51:41 +02:00
Martin Plümicke
bc2cab8c95 modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/syntaxtree/factory/UnifyTypeFactory.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   test/javFiles/Lambda.jav
	modified:   test/javFiles/Lambda3.jav
2018-05-17 18:07:21 +02:00
JanUlrich
dca5d21c23 JavaCompilerCoreWithDependencies upload 2018-05-17 12:47:01 +02:00
Martin Plümicke
51a2acdbaf modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   test/typeinference/UnifyTest.java
2018-05-17 11:42:03 +02:00
832623a738 ClassOrInterface muss im Modifier INTERFACE haben, wenn isInterface gesetzt ist 2018-05-16 15:37:46 +02:00
Fayez Abu Alia
dcc36f082f code aufräumen 2018-05-16 13:37:31 +02:00
Fayez Abu Alia
9575afd0b4 Fun umbenannt und Argumente umgedreht 2018-05-15 10:33:30 +02:00
Martin Plümicke
5c797a44a1 modified: ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
disableWildcardtable in den FUNN-Regeln eingefuegt.
2018-05-10 09:07:33 +02:00
Martin Plümicke
87dbcfdad4 Merge branch 'unifyOptimierung' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unifyOptimierung
Merge
2018-05-09 18:10:17 +02:00
Martin Plümicke
8048af2106 modified: ../../test/javFiles/Lambda2.jav
modified:   ../../test/typeinference/UnifyTest.java
2018-05-09 18:10:08 +02:00
Martin Plümicke
e4243b612c modified: src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
Operatoren neue getypte
Returnargument bei FUNN nach hinten verschoben
	modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
Returnargument bei FUNN nach hinten verschoben
Wildcards in Argumenten von als Undefined Pairs (funktioniert noch nicht)
Methode wrongWildcard eingefuegt
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Methode doubleWildcard ind wrongWildcard umbenannt
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
Methode doubleWildcard ind wrongWildcard umbenannt
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/WildcardType.java
Methode doubleWildcard ind wrongWildcard umbenannt
2018-05-09 18:05:06 +02:00
Martin Plümicke
da4c59f2cf modified: ../../src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
modified:   ../../test/typeinference/UnifyTest.java
2018-05-09 16:24:28 +02:00
Martin Plümicke
1c22fc7d57 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unifyOptimierung
merge bytecode2
2018-05-09 13:29:11 +02:00
Martin Plümicke
0b7aea21d9 modified: ../../test/bytecode/LambdaTest.java
modified:   ../../test/bytecode/javFiles/Lambda2.jav
2018-05-08 18:52:43 +02:00
Fayez Abu Alia
521a1cbf3b Bug 77 gefixt 2018-05-08 17:42:58 +02:00
Martin Plümicke
22ca2cbd4a modified: BytecodeGenMethod.java 2018-05-08 11:28:24 +02:00
Fayez Abu Alia
49ea4ee283 Pfad der erzeugten klassendateien angepasst 2018-05-08 10:19:13 +02:00
Martin Plümicke
225dc16a89 modified: test/typeinference/UnifyTest.java 2018-05-08 09:23:20 +02:00
Martin Plümicke
4738add4fc modified: ../../../../../test/javFiles/Matrix.jav
modified:   ../../../../../test/typeinference/UnifyTest.java
2018-05-07 15:31:31 +02:00
35d5fb2f03 Fehler in ASTFactory mit Generischen FEldern beheben 2018-05-07 15:12:07 +02:00
c8728bab10 Testfall fix 2018-05-07 12:51:29 +02:00
JanUlrich
bc99dc4c8b Merge branch 'plugin' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-05-02 21:30:11 +02:00
JanUlrich
2bbf9eac36 target/repository anlegen 2018-05-02 21:08:32 +02:00
Fayez Abu Alia
a785c85d42 tests 2018-05-02 20:54:07 +02:00
Martin Plümicke
ec2b501e63 new file: test/javFiles/LambdaField.jav
modified:   test/typeinference/UnifyTest.java
Lambda-Ausdruck als Attribute/field eingefuegt
2018-04-26 15:10:23 +02:00
Martin Plümicke
8be4f94edf modified: test/javFiles/Matrix.jav
In Matrix.jav Binary-Operation eingefuegt.

	new file:   test/javFiles/Meth_Gen.jav
	new file:   test/typeinference/Meth_GenTest.java
Test zu Constraints ueber eine Methode hinaus
2018-04-25 23:32:12 +02:00
Fayez Abu Alia
1b6cae1be0 GenTest angefügt 2018-04-25 16:44:27 +02:00
JanUlrich
41774b3faf Merge mit bytecode 2018-04-25 16:13:23 +02:00
Martin Plümicke
62d44eb15c modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Undefined Pairs auf oberster Ebene wird zu new HashTable<>() in compute
	new file:   ../../src/de/dhbwstuttgart/typeinference/unify/inheritVariance.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Unterscheidung zw. <. <? ein compere eingefuegt
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
Attribut wildcardable eingefuegt
2018-04-24 00:53:33 +02:00
Martin Plümicke
5f8c73f176 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
In compare wird die Gleichung a =. Theta neu gefiltert
2018-04-22 00:56:49 +02:00
Martin Plümicke
0ae777b4ac modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
varianceInheritance nach TypeUnifyTask.java verschoben
Kommentar eingefuegt

TODO:
1. compare-Funktinen nochmals ueberpruefen
2. Undef-Pairs in JavaTXiCompiler.java abfangen
3. ? extends bei allen Argumenttypen und Returntypen rauslassen
2018-04-20 23:52:12 +02:00
Martin Plümicke
087170bdbf modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
Variance wieder auskommentiert
	modified:   test/javFiles/Matrix.jav
import String
2018-04-20 13:16:49 +02:00
Martin Plümicke
93d0caaefb modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Varianceberechnung geaendert
2018-04-20 09:36:29 +02:00
Martin Plümicke
1f031149d3 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
Varianceweitergabe eingefuegt
2018-04-20 01:08:35 +02:00
Martin Plümicke
fc870fd706 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-04-18 19:44:00 +02:00
4450f5c0cd Merge 2018-04-18 15:08:37 +02:00
JanUlrich
92693c2c15 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-04-18 14:08:25 +02:00
JanUlrich
50a1f979a0 Fehler beim Parsen beheben 2018-04-18 14:08:12 +02:00
Fayez Abu Alia
478a2df3dc Statische Methoden Test 2018-04-18 11:51:10 +02:00
Martin Plümicke
59243d9f94 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-04-17 16:31:13 +02:00
Martin Plümicke
82b08c5aae modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Wildcard Ordnung veraendert
2018-04-17 14:25:52 +02:00
Martin Plümicke
615983bf37 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
resuat add in cartesion angepasst
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java

equals in UnfyPair auf UndefinedPairs angepasst
2018-04-13 18:13:31 +02:00
JanUlrich
f40c82af4a Matrix Test anpassen 2018-04-12 20:06:37 +02:00
Martin Plümicke
21bc2a67a1 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-04-11 16:58:38 +02:00
Fayez Abu Alia
52a96d7253 OL Test eingefügt 2018-04-11 13:55:32 +02:00
Martin Plümicke
fef4d27d21 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-04-11 11:10:08 +02:00
Martin Plümicke
603c4c9c46 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
logging ergaenzt

	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
getSubstitution() durch getAllSubstitutions() ersetzt
2018-04-06 20:01:14 +02:00
Martin Plümicke
baee0024e9 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Zu beginn von unify werden doppelte wildcard konstruktionen entfernt
Variableneumbenennung bei smaller in Fall 1 weider entfernt

	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/interfaces/IMatch.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/interfaces/IUnify.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/ExtendsType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
In computeGreater unify durch match ersetzt

	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java

	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/WildcardType.java
Abfrage ob eine doppelte wildcard konstruktion vorhanden ist eingefuegt
2018-04-05 18:09:24 +02:00
Martin Plümicke
1baaf79f8c modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
UndefPairs werden zurueckgegegeben und die naechsten gefiltert

protected boolean isUndefinedPairSet(Set<UnifyPair> s) hat Fehler
2018-04-04 21:47:07 +02:00
Martin Plümicke
52f480147e modified: src/de/dhbwstuttgart/typeinference/unify/MartelliMontanariUnify.java
modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java

Subsitution auf UnifyPair umgestellt
2018-04-04 01:14:30 +02:00
Martin Plümicke
9717c54d53 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Mehrfacher Aufruf von computeCartesianRecursive entfernt
2018-04-03 14:16:38 +02:00
Martin Plümicke
c271c689de modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
abhaengige Substitutionen auch bei Faellen 1 - 8 eingefuegt
2018-04-03 10:29:58 +02:00
Martin Plümicke
24c27303dd modified: src/de/dhbwstuttgart/typeinference/unify/MartelliMontanariUnify.java
modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Substututions die eine UnifyPair erzeugen eingefuegt
UnifyCase1-8 weitermachen
2018-04-01 22:04:10 +02:00
Martin Plümicke
117106a7b3 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
? ext theta bei smaller eingefuegt

	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
basiPair und Subsitution nur noch gefuegt, wen wirk etwas eingesetzt wurde

	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
unifier umbenannt in substitution
getBasePair und getSubsitutuon eingefuegt
2018-04-01 17:07:58 +02:00
Martin Plümicke
5680f913ef modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
new file:   src/de/dhbwstuttgart/typeinference/unify/distributeVariance.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	new file:   src/de/dhbwstuttgart/typeinference/unify/visitUnifyTypeVisitor.java
2018-03-28 17:42:25 +02:00
22ff521d08 Aufräumen 2018-03-28 15:35:04 +02:00
Fayez Abu Alia
32ab198f9e Bugfix für duplicate methods 2018-03-28 14:57:36 +02:00
Martin Plümicke
fae26a8f26 modified: src/de/dhbwstuttgart/typeinference/unify/freshPlaceholder.java
modified:   src/de/dhbwstuttgart/typeinference/unify/interfaces/UnifyTypeVisitor.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/ExtendsType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/FunNType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/SuperType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java

Visitors verallgemeinert
2018-03-28 12:06:23 +02:00
Fayez Abu Alia
bb5a4e8580 Bug 72 gefixt 2018-03-28 11:31:32 +02:00
JanUlrich
000c16b907 Gencoy ASP Generator implementieren 2018-03-27 23:56:12 +02:00
JanUlrich
87a2ed8117 APS GeneratorTest.simple anfügen 2018-03-27 14:25:54 +02:00
Fayez Abu Alia
a0de7a4467 Test, bei dem Bug 72 auftritt 2018-03-24 20:28:26 +01:00
JanUlrich
3e829eee54 Tests anpassen 2018-03-23 17:45:41 +01:00
JanUlrich
7ff3f22db5 Fehler in FCGenerator beheben 2018-03-23 17:20:35 +01:00
JanUlrich
4886976752 Fehler in FCGenerator beheben 2018-03-23 17:20:15 +01:00
JanUlrich
daf684deef ASP Factory für Algorithmus von Herr Gencay 2018-03-23 16:54:32 +01:00
Martin Plümicke
0b680f831d modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
2018-03-22 20:40:22 +01:00
JanUlrich
41c87e3085 Merge branch 'bigRefactoring' into sat 2018-03-22 13:50:30 +01:00
JanUlrich
bcee5e5209 Fehler im Parsen von Package beheben 2018-03-22 11:41:59 +01:00
Martin Plümicke
95e9b2dbda modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Variance auf PlacehloderType uebertragen
2018-03-22 11:26:29 +01:00
JanUlrich
72f27fab7a Fehler in ASTFactory Generierung von Superinterfaces beheben 2018-03-22 11:17:51 +01:00
JanUlrich
06bb978cf6 Testfall erweitern 2018-03-21 18:08:33 +01:00
Pluemicke Martin
dbe05bb718 modified: src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/FCGenerator.java
Feher rausgemacht

TODO: Varianven werden nicht uebertragen wahrscheinlich subst
2018-03-21 17:37:34 +01:00
JanUlrich
9a735e86dd GenericFC Test anfügen 2018-03-21 17:26:43 +01:00
JanUlrich
240d57a8ba Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-03-21 17:26:23 +01:00
dd18c7c40e Test anfügen 2018-03-21 17:24:12 +01:00
JanUlrich
45ccfb58e3 Test commit 2018-03-21 17:10:40 +01:00
Pluemicke Martin
4ac99b61bf Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-03-21 17:07:14 +01:00
Pluemicke Martin
f107c8d1f7 modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
Variancebestimmung fuer Argument- und Returntypen der Methoden eingefuegt.
2018-03-21 17:03:32 +01:00
161c1a1b53 Test anfügen 2018-03-21 15:15:31 +01:00
6b1a4eddfc Java 9 zu Java 8 ändern. Sollte ausreichen 2018-03-21 14:40:47 +01:00
JanUlrich
ae7a63fbca Tests fix 2018-03-21 14:22:30 +01:00
79810be94f FC Generator berücksichtig interfaces 2018-03-21 14:21:50 +01:00
Fayez Abu Alia
8870bc326c Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-03-21 13:47:19 +01:00
Fayez Abu Alia
e1c6369bcb Bytecode für Post-/Preincrement und Post-/Predecrement 2018-03-21 13:08:39 +01:00
Pluemicke Martin
46255efb70 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-03-21 11:29:01 +01:00
JanUlrich
fb77f9192f Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-03-21 11:28:35 +01:00
JanUlrich
a71e56ea97 Fix 2018-03-21 11:28:21 +01:00
Pluemicke Martin
5dfa6769b2 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test 2018-03-21 11:16:45 +01:00
JanUlrich
77be216ee5 Fix 2018-03-21 11:15:59 +01:00
Pluemicke Martin
100db9baac Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
Fehler by atElement
2018-03-21 11:13:20 +01:00
JanUlrich
e1f579664a Fix Generics in MethodCall 2018-03-21 11:12:06 +01:00
JanUlrich
7a9c0a1e69 LambdaRunnableTest fix 2018-03-21 11:09:29 +01:00
JanUlrich
7e5aa852d7 Fehler fix 2018-03-21 10:35:46 +01:00
Martin Plümicke
5d39863cc6 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Maximumsbildung auf maximale Elemente soweit fertig
Argument von mul funktion nicht, liefret nur Vec<TypPl>
2018-03-20 22:30:57 +01:00
Martin Plümicke
01dd4e57e6 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Letzte Version bevor MatchUnifyTask
2018-03-20 10:14:01 +01:00
Martin Plümicke
6faffdf90c modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java 2018-03-19 17:43:27 +01:00
Martin Plümicke
f4bc057aff modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
LogAusgabe FC

	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
fresh TV in unifyCase1 auf alle cs ausgedehnt
	modified:   test/javFiles/Matrix.jav
2018-03-19 15:25:40 +01:00
Martin Plümicke
78db0f0177 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Errorrueckgabe auskommentiert
	new file:   src/de/dhbwstuttgart/typeinference/unify/interfaces/UnifyTypeVisitor.java
eingecheckt vorher vergessen
	modified:   test/javFiles/Matrix.jav
add und mul aktiviert
2018-03-19 09:38:37 +01:00
Fayez Abu Alia
3233ccd845 Overloading funktioniert. Erzeugt Bytecode für Postincrement (für Integers). 2018-03-18 16:08:52 +01:00
Martin Plümicke
b0b1426e20 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
new file:   src/de/dhbwstuttgart/typeinference/unify/freshPlaceholder.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/ExtendsType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/FunNType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/SuperType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
freshtypevraiable Vistor soweit fertig noch nicht getestet
2018-03-18 15:11:45 +01:00
Martin Plümicke
103c7e4b14 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/ExtendsType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/FunNType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/PlaceholderType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/ReferenceType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/SuperType.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/TypeParams.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyType.java
visitor freshPlaceholder implements UnifyTypeVisitor
2018-03-17 15:01:03 +01:00
Martin Plümicke
3638edfa73 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   test/javFiles/Matrix.jav
Fehler entdeckt, in unifyCase1 fuer die Typen aus FC keine fresh TV getsetzt werden.
2018-03-16 14:10:40 +01:00
Martin Plümicke
bd98bed5ca Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
Merge
2018-03-15 20:50:59 +01:00
Martin Plümicke
6299086297 modified: typeinference/unify/TypeUnifyTask.java
modified:   typeinference/unify/model/UnifyPair.java
2018-03-15 20:47:16 +01:00
Martin Plümicke
de5b43d72b modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java

Links der substitierten Pare eingefuegt.
2018-03-15 17:00:26 +01:00
Martin Plümicke
7e6dee8e1d modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../javFiles/Matrix.jav
2018-03-14 17:48:04 +01:00
Fayez Abu Alia
dafcd2f125 Bytecode für While-Schleifen 2018-03-14 15:51:38 +01:00
JanUlrich
6a5ababa51 ANTLR Parsetreewalker für ASP Result implementieren 2018-03-14 14:32:36 +01:00
Martin Plümicke
273ddb92d7 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
	modified:   ../javFiles/Matrix.jav
2018-03-14 13:56:28 +01:00
JanUlrich
4a2b901465 aufräumen 2018-03-13 14:53:27 +01:00
Martin Plümicke
dea3da3b69 Merge branch 'bigRefactoring' into unify-test
Fehelr mit elementAt geloest
2018-03-13 10:41:57 +01:00
Martin Plümicke
13c70148a8 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
	modified:   ../javFiles/Matrix.jav
mul1 und add ergaenzt.
Fehler bei elementAt: Liefert Object als Returntyp
2018-03-13 08:46:25 +01:00
JanUlrich
bb5945898a Bug in ASTFactory beseitigen 2018-03-13 01:57:21 +01:00
JanUlrich
123f94aea7 ANTLR Parser für ASP Statements implementieren 2018-03-13 00:24:40 +01:00
JanUlrich
dff72b0c97 ResultSetOutputGenerator 2018-03-12 00:38:02 +01:00
Martin Plümicke
1667b394f2 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
Variancen gesetzt
2018-03-11 20:39:38 +01:00
Martin Plümicke
95943b1627 modified: src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
compare(Matrix, Vector<gen_ab>, ? extends Vector<? extends Integer>> <.? gen_ab
   eingefuegt.
2018-03-10 12:32:07 +01:00
Martin Plümicke
0315a1f144 modified: ../../src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnify.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
compare(Matrix, Vector<gen_ab>, ? extends Vector<? extends Integer>> <.? gen_ab
funktioniert nicht
2018-03-10 01:04:19 +01:00
Fayez Abu Alia
52a5fd7904 erzeugt Bytecode für relationale Operatoren. Getestet. 2018-03-09 21:57:39 +01:00
Martin Plümicke
b5b5b5d9c9 modified: ../../src/de/dhbwstuttgart/typeinference/constraints/Pair.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/UnifyPair.java
Varinace in UnfyPair eingefuegt und Abfrage in computeCartesianRecursive eingefuegt
Pruefen, ob Varianve bei Subst und andrene erhalten bleibt.
2018-03-09 01:23:02 +01:00
JanUlrich
83aaff140c Aufräumen 2018-03-08 01:44:40 +01:00
JanUlrich
3deaceec01 UnifyWithoutWildcards Test läuft durch 2018-03-08 01:41:38 +01:00
Martin Plümicke
9862df9e63 modified: ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java

Minimum funktion soweit
2018-03-08 01:12:17 +01:00
JanUlrich
9f2702276f Fehler beheben 2018-03-08 00:03:26 +01:00
JanUlrich
87cf674352 Fehler in FCGenerator beheben 2018-03-07 23:07:53 +01:00
JanUlrich
dfd6a1f532 erge branch 'bigRefactoring' into sat 2018-03-07 23:04:16 +01:00
JanUlrich
e8388e2748 Aufräumen 2018-03-07 22:42:05 +01:00
JanUlrich
095f9a7956 Tests an neue ASPFactory anpassen 2018-03-07 22:41:00 +01:00
JanUlrich
c4aec8379e Erste Version von ASPFactory implementieren 2018-03-07 21:52:46 +01:00
Martin Plümicke
ccc16fd22b modified: ../../src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   ../../src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/interfaces/IRuleSet.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   ../../src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java

1. Version mit compare von UnifyPairs
2018-03-07 13:09:47 +01:00
Fayez Abu Alia
54cf24926e Bytecode arithmetische Operatoren unterschiedlischer Typen vollständig und getestet 2018-03-07 12:26:30 +01:00
Fayez Abu Alia
94d39ee21a Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-03-07 11:49:16 +01:00
JanUlrich
725b071d28 Problem mit BinaryExpr gefixt 2018-03-07 08:47:43 +01:00
JanUlrich
284af1246b Nicht lauffähig. ASPFactory neu implementieren 2018-03-07 07:41:46 +01:00
Fayez Abu Alia
f453343f1c Bytecode für arithmetische Operatoren mit Parametern unterschiedlicher Typen. Testfälle bereinigt und aufgeräumt. 2018-03-06 19:14:27 +01:00
Martin Plümicke
bb016e6417 modified: src/de/dhbwstuttgart/typeinference/unify/interfaces/IFiniteClosure.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
2018-03-05 20:04:10 +01:00
Martin Plümicke
831bf1fe17 modified: src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
weitere Fälle in die Ordnung eingebaut
2018-03-04 22:58:31 +01:00
Martin Plümicke
cba489f279 modified: src/de/dhbwstuttgart/typeinference/unify/model/OrderingUnifyPair.java
eine Variable korrigiert
TODO eingefuegt
compare muss fuer ale moeglichen Faelle aus calculatePairSets erstellt werden
2018-03-03 01:07:25 +01:00
Martin Plümicke
9f3439a15e x 2018-03-02 14:12:06 +01:00
Martin Plümicke
356b8a7a34 modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
Eq for Unify vereinfachen noch nicht fertig
2018-03-01 18:00:38 +01:00
JanUlrich
ab37e1a607 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-03-01 15:03:48 +01:00
JanUlrich
18545cff9a GenericRefType umgestalten. Unnötige Backreferenzen entfernen 2018-03-01 13:25:03 +01:00
JanUlrich
9840281d83 Test für ASP anfügen 2018-03-01 12:31:56 +01:00
Martin Plümicke
6256bdfe2e modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
In Unfy:
- Bildung des kartesischen Produkts auf secondlevel-Ebene entfernt

In computeCartesianRecursive:
- Vereinigung der Ergebnisse ueber die Schleifen und die Rekursion eingefuegt
- Minimumbestimmung korrigiert
2018-03-01 12:27:38 +01:00
Martin Plümicke
6a9db81981 Merge 2018-02-28 17:16:28 +01:00
Pluemicke Martin
53087a8e04 result.add wieder aktiviert 2018-02-28 17:11:50 +01:00
JanUlrich
aa631b5099 UnifyTest korrekt benennen 2018-02-28 16:35:45 +01:00
JanUlrich
a3a02fe475 Merge branch 'bigRefactoring' into unify-Test 2018-02-28 16:34:48 +01:00
JanUlrich
99ce7c1122 <, > Operatoren einführen 2018-02-28 16:33:18 +01:00
Martin Plümicke
cef82c6359 Typgenerator auf alten Stand setzen, damit Matrix test lauft 2018-02-28 16:27:08 +01:00
Martin Plümicke
67fe88215a eigenerTest 2018-02-28 16:25:45 +01:00
Martin Plümicke
f31023b4fa merge2 2018-02-28 16:16:22 +01:00
Martin Plümicke
a733eee8b5 merge 2018-02-28 16:12:57 +01:00
Martin Plümicke
15f5a2dc76 Merge branch 'bigRefactoring' into unify-Test 2018-02-28 16:10:08 +01:00
Martin Plümicke
6fcaafe477 test 2018-02-28 16:07:02 +01:00
Fayez Abu Alia
35b99a4095 Bytecode kann für folgende Operationen +,-,*,/,% erzeugt werden 2018-02-28 15:59:21 +01:00
JanUlrich
327f36f1c2 Faculty Test ändern. UnifyTypeFactory konvertiert automatisch FunN Typen korrekt 2018-02-28 15:21:12 +01:00
Fayez Abu Alia
6b57aacef0 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-02-28 14:58:58 +01:00
JanUlrich
f023754328 TypeStmt für +,-,/,*,% einführen 2018-02-28 14:50:16 +01:00
JanUlrich
77aaa0ecb6 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2018-02-28 13:32:51 +01:00
JanUlrich
9f9a94b5cf Testfälle bereinigen 2018-02-28 13:32:36 +01:00
JanUlrich
b66d06a165 Merge branch 'parser' into bigRefactoring 2018-02-28 11:53:53 +01:00
JanUlrich
92b110a971 Funktionierender Clingo Test 2018-02-27 19:10:16 +01:00
Fayez Abu Alia
2277f68509 Ordner manually/ in .gitignore hinzugefügt 2018-02-25 13:20:19 +01:00
Martin Plümicke
1c0fa6a820 modified: de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
logFile eingefuegt
2018-02-24 19:56:22 +01:00
Fayez Abu Alia
59569380ed Kleiner Bug beseitigt 2018-02-23 20:17:32 +01:00
Fayez Abu Alia
4fbcf87e0c Methoden visit(assign)/visit(literal) angepasst und generiert bytecode für Binaryexpressions. noch nicht fertig 2018-02-23 20:10:11 +01:00
JanUlrich
10b5d87119 Merge branch 'bigRefactoring' into sat 2018-02-23 11:14:47 +01:00
JanUlrich
73c37027d9 Fehler in TypeStmt UnaryExpression beheben 2018-02-23 09:16:12 +01:00
Martin Plümicke
8e198679c7 Instabiler Zustand reduce funktionert nicht 2018-02-23 00:37:59 +01:00
Martin Plümicke
419e4a6d0e MERGE
Merge branch 'unify-test' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into unify-test
2018-02-21 17:55:47 +01:00
Pluemicke Martin
5cd2ee7d80 geändert: src/de/dhbwstuttgart/core/JavaTXCompiler.java
geändert:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
recursiveCartesionProduct wieder entfernt
2018-02-21 17:54:26 +01:00
Martin Plümicke
9c35f04a09 modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java 2018-02-21 17:22:23 +01:00
Fayez Abu Alia
6808535f67 Merge branch 'parser' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-02-21 15:45:22 +01:00
Fayez Abu Alia
ac4a79f0e7 Additive/multiplicativeExpression und UnaryExpression implementiert 2018-02-21 15:43:28 +01:00
Martin Plümicke
89246ece5c modified: src/de/dhbwstuttgart/core/JavaTXCompiler.java
modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   test/javFiles/Matrix.jav
2018-02-21 14:02:48 +01:00
Fayez Abu Alia
7c2f7c54dd Kleine Änderung 2018-02-21 11:44:03 +01:00
JanUlrich
c747ab0885 Additive Expression implementieren 2018-02-21 11:40:54 +01:00
JanUlrich
6cf98f200b Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-02-21 11:05:57 +01:00
JanUlrich
ed3a3909c0 Merge branch 'bytecode2' into bigRefactoring 2018-02-21 11:05:25 +01:00
JanUlrich
d53faa0c86 FiniteClosure korrekt generieren 2018-02-19 11:33:08 +01:00
JanUlrich
b7bb0fa1c4 Vector Test Fehler beheben 2018-02-19 04:47:10 +01:00
JanUlrich
166aa5e506 merge mit sat 2018-02-19 04:22:08 +01:00
Martin Plümicke
5270cecec9 Changes to be committed:
modified:   src/de/dhbwstuttgart/core/JavaTXCompiler.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   test/javFiles/Matrix.jav

Fehler in der Aufteilung von Unify korrigiert.
Equalcheck in Schritt 6 wiedre eingefuegt.
2018-02-14 17:45:08 +01:00
Fayez Abu Alia
f6e0c561bb Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-02-14 14:38:46 +01:00
Fayez Abu Alia
a45aa50574 erzeugt bytecode für Zuweisung von Literale 2018-02-14 14:37:36 +01:00
JanUlrich
191a1166b9 ASP Generator auf neues Format anpassen 2018-02-13 05:25:18 +01:00
JanUlrich
6e770b5ec5 Java 9: Classloader ändern
*
2018-02-12 22:32:03 +01:00
Martin Plümicke
87fe51767c modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
Reduce 1
C und D koennen auch gleich sein.
Muss nochmals ueberprueft werden.
2018-02-09 22:55:40 +01:00
Martin Plümicke
f0610aeff1 Changes to be committed:
modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPEStmt.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	modified:   test/typeinference/JavaTXCompilerTest.java
2018-02-09 21:32:15 +01:00
Martin Plümicke
e4fbd17a55 modified: src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
modified:   test/javFiles/Matrix.jav
Rekursive Berechnung des Kartesischen Produkts
2018-02-08 00:02:27 +01:00
Martin Plümicke
9c526f20fb merge 2018-02-07 16:56:11 +01:00
Martin Plümicke
1f269918fb nicht lauffaehig 2018-02-07 16:53:24 +01:00
Martin Plümicke
2d5c863008 HEAD detached at 2f994cdf
Changes to be committed:
Aenderungen am Unify: Fehler behoben und Vereinfachung

	modified:   src/de/dhbwstuttgart/core/JavaTXCompiler.java
	new file:   src/de/dhbwstuttgart/typeinference/unify/Match.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
	new file:   src/de/dhbwstuttgart/typeinference/unify/interfaces/IMatch.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/FiniteClosure.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Node.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/TypeParams.java
	modified:   src/de/dhbwstuttgart/typeinference/unify/model/Unifier.java
	modified:   test/javFiles/Matrix.jav
2018-02-07 14:38:45 +01:00
Martin Plümicke
22499f09e8 modified: src/de/dhbwstuttgart/typeinference/unify/model/TypeParams.java
Zeile 101 Dangling-else Problematik behoben
War Fehler im Occurs-Cheeck von Montanari-Martelli.
2018-02-01 00:17:12 +01:00
JanUlrich
1f89238fe4 Kleiner Bug beseitigt. Ungetesteter Stand 2018-01-31 18:38:52 +01:00
Fayez Abu Alia
c61dd5411e Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2018-01-31 16:47:18 +01:00
Fayez Abu Alia
52487f3389 test LamAssign 2018-01-31 16:47:08 +01:00
5a3dcd7100 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-01-31 16:43:04 +01:00
JanUlrich
2f994cdfa8 java.lang. nicht standardmäßig importieren 2018-01-31 16:42:51 +01:00
JanUlrich
9c4f763c9a java.lang. nicht standardmäßig importieren 2018-01-31 16:42:25 +01:00
JanUlrich
8f9c07d88e Merge 2018-01-31 16:18:29 +01:00
Fayez Abu Alia
b32e437a05 Fehler 2018-01-31 16:16:05 +01:00
JanUlrich
48e2d2eec2 Tests fixen 2018-01-31 16:15:07 +01:00
1a1ab2696d Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into plugin 2018-01-31 16:06:21 +01:00
Fayez Abu Alia
1888eb6d46 merge 2018-01-31 15:57:58 +01:00
Fayez Abu Alia
56d919f446 bug fix 2018-01-31 15:55:02 +01:00
JanUlrich
15d120d594 Funktionsfähiges Matrix Beispiel, aber nicht komplett 2018-01-31 15:51:38 +01:00
JanUlrich
e556a470e7 Literal löschen 2018-01-31 15:39:19 +01:00
Fayez Abu Alia
398c1992fa merge 2018-01-31 14:23:19 +01:00
Fayez Abu Alia
9a94ba2114 unnötige Kommentare wurden entfernt 2018-01-31 14:16:20 +01:00
JanUlrich
cdcebdd4ac Merge 2018-01-31 13:36:35 +01:00
JanUlrich
8e4791cca6 Anpassungen im Matrix Test 2018-01-31 13:34:54 +01:00
JanUlrich
3ce4937bc1 Fehler im Trailing Return anhängen beheben 2018-01-30 02:23:58 +01:00
JanUlrich
027538a082 Unary Expression und while statement anfügen 2018-01-30 01:08:21 +01:00
Martin Plümicke
39793b461e modified: test/javFiles/Matrix.jav
Falsche Typen in methode korrigiert.
2018-01-29 22:35:48 +01:00
Martin Plümicke
29173ba172 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring
Genauere Fehlermeldung im Unify
2018-01-29 21:32:46 +01:00
Martin Plümicke
5d94820fed modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
modified:   src/de/dhbwstuttgart/typeinference/unify/model/Node.java
Genauere Fehlermeldung
2018-01-29 21:30:45 +01:00
JanUlrich
c7dea4c86b Matrix Test 2018-01-29 18:26:14 +01:00
JanUlrich
ede55d228e Fehler in ASTFactory beheben. GenericRefType statt RefType in den Parameterlisten 2018-01-29 17:35:49 +01:00
JanUlrich
0610ea8e63 FC Generator 2018-01-29 17:32:25 +01:00
9186f5dff5 Alle Dependencies werden in eine Jar gepackt. Diese in Eclipseplugin umwandeln und einbinden funktioniert \o/ 2018-01-24 19:05:09 +01:00
5c9b40e0b7 Rumprobieren. Nicht lauffähig 2018-01-24 16:37:01 +01:00
JanUlrich
8d12821c68 Methode erbt nicht mehr von Feld 2018-01-21 11:38:55 +01:00
JanUlrich
311d7ee63a Merge branch 'bigRefactoring' into sat 2018-01-21 11:17:46 +01:00
JanUlrich
bd0678f362 Lokales Repo eintragen 2018-01-21 11:17:20 +01:00
a08e2e8815 Versuche google und reflections auch noch als plugin zu verpacken. WIll nicht funktionieren 2018-01-19 17:48:25 +01:00
47689f2fc6 ZIP-FIle erstellen 2018-01-19 16:55:23 +01:00
b7aca99301 local maven repository 2018-01-19 16:36:08 +01:00
JanUlrich
8920b32020 Unnötige import entfernen 2018-01-19 15:28:54 +01:00
JanUlrich
1f5071d4e4 Methode soll kein Feld mehr sein. Nicht lauffähig! 2018-01-19 15:24:49 +01:00
da41857a4f Plugin deploy backup 2018-01-19 15:22:29 +01:00
09dcdaeb96 Local Repo anfügen 2018-01-19 15:14:39 +01:00
6d0392956d Pom anpassen 2018-01-19 14:34:41 +01:00
Fayez Abu Alia
542f87e8a3 erzeugt Klassendatei für FunN 2018-01-17 13:49:18 +01:00
JanUlrich
57df329751 Merge branch 'bigRefactoring' into sat 2018-01-12 22:47:49 +01:00
Fayez Abu Alia
7b24e2d83f bytecode für Generics: LamAssignTest funktioniert richtig 2018-01-10 15:37:50 +01:00
JanUlrich
b1b1cfdc54 --amend 2018-01-10 12:14:20 +01:00
JanUlrich
672373fc8d --amend 2018-01-10 12:11:51 +01:00
JanUlrich
ab86cc3229 RefType.toString(): Ausgabe von Parameterliste implementieren 2018-01-10 12:10:01 +01:00
JanUlrich
0c19cc7400 Merge branch 'bigRefactoring' into bytecode2 2018-01-10 11:58:03 +01:00
Fayez Abu Alia
268056542b erzeugt bytecode für generics 2018-01-10 11:36:29 +01:00
JanUlrich
19a1ef4024 Erste lauffähige aber unvollständige Version des UnifyWithoutWildcards 2018-01-10 10:53:07 +01:00
JanUlrich
3c732346d9 ASPParameterlist erzeugt auch paramNum 2018-01-06 09:38:53 +01:00
Fayez Abu Alia
01339ca7ec Descriptor-Erzeugen neu mit Visitor-pattern implementiert 2017-12-28 10:20:28 +01:00
JanUlrich
6ddc4983b0 Fehler im Type beheben 2017-12-20 17:12:40 +01:00
JanUlrich
719d1a5ced Interface Modifier setzen 2017-12-20 15:59:07 +01:00
JanUlrich
90a9273fc2 TypeToStringVisitor 2017-12-20 15:37:33 +01:00
JanUlrich
009a638c9a FC ohne java.lang generieren 2017-12-20 15:27:39 +01:00
JanUlrich
55be865ab4 Bugfix 2017-12-20 15:06:04 +01:00
Fayez Abu Alia
01fd396d29 Test generics 2017-12-20 15:04:03 +01:00
JanUlrich
dccdc5da2b Merge branch 'bigRefactoring' into bytecode2 2017-12-20 15:01:19 +01:00
JanUlrich
940c922c80 ResultSet kann GenericRefTypes auflösen 2017-12-20 15:01:02 +01:00
JanUlrich
bdc2a83b1c Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-12-20 14:14:25 +01:00
Fayez Abu Alia
d989100b47 korrekte bytecode 2017-12-20 14:14:05 +01:00
JanUlrich
f015ef75f7 Merge branch 'bigRefactoring' into bytecode2 2017-12-20 13:43:46 +01:00
Fayez Abu Alia
5f731bb09c letzte tests 2017-12-20 13:35:55 +01:00
JanUlrich
09bdaa6a21 Generics Test erzeugt falsches ConstraintSet 2017-12-20 13:34:34 +01:00
JanUlrich
e8757a179f ASP-Generierung: parameterListe 2017-12-18 14:43:03 +01:00
JanUlrich
3a444c0172 Aufräumen 2017-12-15 13:12:18 +01:00
Fayez Abu Alia
ab36050f9b Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-12-15 09:01:59 +01:00
JanUlrich
9919ecd083 Anfangen mit Masterarbeit 2017-12-15 00:06:57 +01:00
JanUlrich
7d8e8249ed Merge branch 'sat' into bigRefactoring 2017-12-15 00:05:47 +01:00
JanUlrich
fb0ef510b2 Fehlende Klasse 2017-12-15 00:05:30 +01:00
Fayez Abu Alia
72fdf2dca8 merge 2017-12-14 21:20:57 +01:00
JanUlrich
eb8db0e0eb TPH = TPH ist jetzt auch im ResultSet möglich. Anpassungen an der Generierung der Imports einer SourceFile; läuft noch nicht fehlerfrei 2017-12-14 17:44:43 +01:00
JanUlrich
5386227a34 Merge branch 'bigRefactoring' into sat 2017-12-14 00:06:11 +01:00
JanUlrich
5e675b9a93 Test anfügen 2017-12-13 13:34:22 +01:00
JanUlrich
fd8df92c03 generatedBC-Directory anfügen 2017-12-13 13:32:00 +01:00
JanUlrich
eddac2c8ed VoidMeth Test korrigieren 2017-12-13 13:15:11 +01:00
Fayez Abu Alia
a8274bdc69 erzeugt bytecode fuer lambda 2017-11-29 14:45:15 +01:00
JanUlrich
e702f745c3 Dirty fix 2017-11-29 14:31:07 +01:00
JanUlrich
4616f82b09 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-11-22 13:15:21 +01:00
JanUlrich
dbe47f41c1 FunNClass anfügen 2017-11-22 13:12:21 +01:00
JanUlrich
b55d0779e9 ResultPairs des Unify Algorithmus könnnen nun auch Wildcard-Typen enthalten 2017-11-22 06:49:11 +01:00
JanUlrich
928396927e Faculty Test geht wieder 2017-11-16 17:28:50 +01:00
JanUlrich
9a886ed223 Typdeklarationen wie List, werden jetzt automatisch TPHs eingesetzt. (Als hätte man den Diamond-Operator benutzt) 2017-11-16 16:56:12 +01:00
JanUlrich
16e14f9363 Finite CLosure TEst läuft wieder halbwegs. Sonst unfertiger Zustand 2017-11-16 15:10:08 +01:00
JanUlrich
b51d8356b7 Unvollständiger Zustand; Verknüpfung zwischen GTVs und TPH geändert. Änderungen in TypeStmt 2017-11-15 17:58:15 +01:00
JanUlrich
48dc76646b createPair Methode entfernen. Die Generics können nicht generell aufgelöst werden. (unvollständiger Zustand) 2017-11-14 19:28:46 +01:00
JanUlrich
fea86460e8 Änderungen an der FC generierung und an dem Verhalten von GTVs im Type Algorithmus UNVOLLSTÄNDIG. Kleines Backup, da große Änderung am Type-Algorithmus noch ansteht. 2017-11-09 19:41:53 +01:00
Fayez Abu Alia
01703a73c5 generiert Bytecode fuer einfachen Lambda 2017-11-07 10:55:33 +01:00
Fayez Abu Alia
bb5e697699 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-11-03 14:18:32 +01:00
Fayez Abu Alia
5a026a431c kleine Aenderung 2017-11-03 14:17:36 +01:00
JanUlrich
1d767a7696 Matrix Test 2017-11-03 13:56:04 +01:00
JanUlrich
d2fa9e00f8 Fix bug 2017-10-30 18:08:40 +01:00
JanUlrich
934e5f85f8 Unterschied zwischen Expr-Receiver und Classname-Receiver 2017-10-26 21:45:04 +02:00
JanUlrich
bfa106913b extends in Parser implementieren. Dirty fix für fehlende Object-Klasse in der JavaClassNameRegistry 2017-10-18 16:40:27 +02:00
JanUlrich
44f4aa4b27 Test anfügen 2017-10-18 16:18:46 +02:00
JanUlrich
a69b827805 Var Keyword ist kein keyword mehr, kann also auch als Variablennamen verwendet werden 2017-10-18 00:22:42 +02:00
JanUlrich
0c80a4c343 Fix bei Typeinsetzung 2017-10-16 19:19:42 +02:00
JanUlrich
e18439918c Merge 2017-10-15 23:09:46 +02:00
JanUlrich
b116139357 Guava Version update 2017-10-15 22:49:23 +02:00
JanUlrich
040300d78e unnötige Imports entfernen 2017-10-10 17:05:32 +02:00
JanUlrich
c442e2ac17 Merge branch 'bigRefactoring' 2017-10-10 15:51:13 +02:00
JanUlrich
9607fcf980 Imports in parser implementieren 2017-10-10 15:34:52 +02:00
JanUlrich
cecec91f74 Merge 2017-10-10 14:51:53 +02:00
JanUlrich
8c00d89731 Finite Closure beachtet imports 2017-10-10 14:47:05 +02:00
JanUlrich
d5d74fef85 Merge 2017-10-06 14:13:31 +02:00
JanUlrich
36bb442bff Aufräumen 2017-10-06 13:34:03 +02:00
Fayez Abu Alia
c595925112 Fehlende Tests anfügen 2017-10-06 13:31:36 +02:00
JanUlrich
0116643bc1 .gitignore erweitern 2017-10-06 13:24:17 +02:00
JanUlrich
8d6a722cec .gitignore erweitern 2017-10-06 13:23:48 +02:00
Fayez Abu Alia
672d40c557 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-10-06 09:16:42 +02:00
JanUlrich
94c69cca55 Merge branch 'bigRefactoring' into bytecode2 2017-10-06 03:59:58 +02:00
JanUlrich
843dd7453d ANTLR Plugin + Configuration an pom.xml anfügen 2017-10-06 03:59:35 +02:00
Fayez Abu Alia
ad36158a47 Test dateien 2017-10-05 20:23:27 +02:00
Fayez Abu Alia
7de617f0c1 test 2017-10-05 20:02:11 +02:00
JanUlrich
6738eecdf3 Merge 2017-10-05 19:21:30 +02:00
JanUlrich
a011061f22 Merge branch 'bytecode2' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-10-05 18:29:37 +02:00
JanUlrich
15e18c5907 merge unvollständig 2017-10-05 18:29:27 +02:00
Fayez Abu Alia
4c213eb3cf generate bytecode 2017-10-05 18:25:52 +02:00
JanUlrich
a194bdbc9f Aufräumen 2017-10-05 18:23:28 +02:00
JanUlrich
e341d9075e Alle Klassen aus Standard Library laden 2017-10-05 01:13:08 +02:00
JanUlrich
b104ff591f Aufräumen 2017-10-05 00:47:05 +02:00
JanUlrich
bf8e6d1492 merge 2017-10-04 16:46:31 +02:00
JanUlrich
bd024d9f4a Aufräumen 2017-10-04 16:39:02 +02:00
JanUlrich
a78b7c5af3 unnötige librarys löschen 2017-10-04 13:26:18 +02:00
JanUlrich
5d5132faf4 Merge branch 'bigRefactoring' 2017-10-04 13:23:56 +02:00
Martin Plümicke
0a8236cd86 modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
In reduceFunN:
&& (pair.getPairOp() != PairOperator.EQUALSDOT))     //PL 2017-10-03 hinzugefuegt
		                                                       //da Regel auch fuer EQUALSDOT anwendbar
			                                                   //TODO: fuer allen anderen Relationen noch pruefen
2017-10-03 22:06:37 +02:00
Martin Plümicke
7f888a1bf8 modified: src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
FunType von Bedingung <. auf beliebig zu gelassen
	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java
bei childrenaufruf unifyCase1 gleiches Element hinzugefuegt
	modified:   test/typeinference/JavaTXCompilerTest.java
typeinference-Aufruf vor die Schleife gezogen
2017-10-03 21:58:39 +02:00
Martin Plümicke
fa92fee98d modified: .classpath
Keine Ahnung

	modified:   src/de/dhbwstuttgart/typeinference/unify/RuleSet.java
Aenderung Zeile 578
				rhsType = pair.getRhsType(); //PL eingefuegt 2017-09-29 statt !((rhsType = pair.getRhsType()) instanceof PlaceholderType)
			if(lhsType != null
					//&& !((rhsType = pair.getRhsType()) instanceof PlaceholderType) //PL geloescht am 2017-09-29 Begründung: auch Typvariablen muessen ersetzt werden.

	modified:   src/de/dhbwstuttgart/typeinference/unify/TypeUnifyTask.java

1. Aenderung: Zeile 168
/*
			 * Step 6 a) Restart (fork) for pairs where subst was applied
			 */
			if(parallel) {
				if //(eqPrime.equals(eq))         //PL 2017-09-29 auskommentiert und durch
					(!eqPrimePrime.isPresent())   //PL 2071-09-29 dies ersetzt
					                              //Begruendung: Wenn in der Substitution keine Veraenderung
					                              //(!eqPrimePrime.isPresent()) erfolgt ist, ist das Ergebnis erzielt.
					eqPrimePrimeSet.add(eqPrime);

2. Aenderung: Ziel 188
else { // sequentiell (Step 6b is included)
				if //(eqPrime.equals(eq))         //PL 2017-09-29 auskommentiert und durch
				(!eqPrimePrime.isPresent())       //PL 2071-09-29 dies ersetzt
                                                  //Begruendung: Wenn in der Substitution keine Veraenderung
                                                  //(!eqPrimePrime.isPresent()) erfolgt ist, ist das Ergebnis erzielt.
					eqPrimePrimeSet.add(eqPrime);
2017-09-30 14:51:05 +02:00
JanUlrich
43413d5e3c Bugfix in Test 2017-09-28 16:55:29 +02:00
JanUlrich
d24b2fa7d6 bcel entfernen. pom.xml anlegen 2017-09-28 16:52:07 +02:00
JanUlrich
db9298e383 library adden 2017-09-26 12:37:21 +02:00
JanUlrich
1e0da98c4b auto-keyword zu var-keyword ändern 2017-09-25 23:47:38 +02:00
JanUlrich
4b44fba421 Bugfix 2017-09-25 16:49:27 +02:00
JanUlrich
07b159f9a3 Bugfix 2017-09-25 15:57:35 +02:00
JanUlrich
276ff44756 Berücksichtige TPH =. TPH Ergebnisse im ResultSet 2017-09-25 11:22:53 +02:00
JanUlrich
b31da88902 Logik für Generics implementieren. Unvollständig 2017-09-25 01:14:02 +02:00
JanUlrich
6a1f5dc248 Unvollständiger Stand bei der Implementierung von Generics 2017-09-22 18:31:47 +02:00
JanUlrich
0e2390a80a GlobalGenerics eingeführt 2017-09-20 23:41:06 +02:00
JanUlrich
8ce017c2f2 Fehler beheben. PackageCrawler lauffähig 2017-09-20 18:20:52 +02:00
b8a5795bb3 PackageCrawler und CompilationEnvironment implementieren 2017-09-20 17:26:09 +02:00
9b960329fc PackageCrawler wieder einführen. Unvollständig 2017-09-20 15:52:14 +02:00
b1adc4671d Environment einführen 2017-09-20 14:00:44 +02:00
JanUlrich
6e03d24582 Tests auslagern 2017-09-19 18:51:44 +02:00
JanUlrich
f81496fe1f Fehler in TypeStmt beheben 2017-09-18 18:32:22 +02:00
JanUlrich
201a0978bc Constructor für IfStmt 2017-09-18 13:56:27 +02:00
JanUlrich
98331af3c0 Fehler in UnifyTypeConvert beheben 2017-09-07 19:52:05 +02:00
JanUlrich
a355fe7786 fehler beheben 2017-09-07 18:37:56 +02:00
JanUlrich
ea1e81bb95 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-09-07 17:03:15 +02:00
JanUlrich
b6f62b48eb ResultSet um resolveType erweitern 2017-09-07 17:02:49 +02:00
Fayez Abu Alia
995af3004a Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-09-07 16:42:19 +02:00
Pluemicke Martin
5c66212afb neue Datei: S2017_Jan-Elric_Neumann.pdf 2017-09-04 09:30:59 +02:00
Fayez Abu Alia
9a233e437b bytecode 2017-08-30 18:08:05 +02:00
Fayez Abu Alia
9918e78f97 Merge branch 'master' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-08-30 17:21:17 +02:00
JanUlrich
d245aa7367 Added Modifier to Method 2017-08-30 17:20:59 +02:00
Fayez Abu Alia
3d07f60145 Merge branch 'master' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-08-30 17:11:46 +02:00
JanUlrich
7c3181c3f0 Super-Statement an Constructor angefügt 2017-08-30 17:06:42 +02:00
JanUlrich
b251a646ca System.out.println Statement schein halbwegs zu funktionieren ^^ 2017-08-30 15:29:34 +02:00
Fayez Abu Alia
276f235b56 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-08-30 14:43:53 +02:00
Fayez Abu Alia
866429ffe7 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bytecode2 2017-08-30 14:43:31 +02:00
JanUlrich
4b21f03a5a Refactoring 2017-08-30 14:36:40 +02:00
JanUlrich
a7e1a5e2c2 Fehler beheben 2017-08-28 18:36:26 +02:00
JanUlrich
932b277dcc Imports implementieren 2017-08-28 17:36:51 +02:00
JanUlrich
45c85b7686 Type refactoring 2017-08-28 15:42:51 +02:00
JanUlrich
ff59b585bd TypeInsert ausbessern 2017-08-25 03:39:54 +02:00
JanUlrich
397ac3cd58 TypeInsert ausbessern 2017-08-25 02:59:16 +02:00
JanUlrich
77c59de0f0 Assign ändern. Es gibt jetzt eine AssignLeftSide 2017-08-23 18:28:26 +02:00
Fayez Abu Alia
6e72bbab16 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/gast/abualia/test/JavaCompilerCore into bytecode2 2017-08-23 17:27:23 +02:00
Fayez Abu Alia
43f017a224 Bytecode TEst 2017-08-23 17:26:59 +02:00
JanUlrich
9a7e717c25 Constructor um fieldInits erweitern, auch der TYPE algo 2017-08-23 16:24:25 +02:00
JanUlrich
6b98bf6a58 Feld initialisierungen werden an Konstruktoren angehängt 2017-08-23 03:52:24 +02:00
JanUlrich
bbc61c67a9 TypeInsert Fehler beheben 2017-08-23 01:43:20 +02:00
JanUlrich
1023ed8557 Generics einsetzen 2017-08-22 18:31:07 +02:00
JanUlrich
3274f12922 Fehler in TypeInsert beheben 2017-08-22 16:45:28 +02:00
JanUlrich
52f562b570 DoStmt zu ASTPrinter hinzufügen 2017-08-17 15:58:56 +02:00
FelixKrespach
a9c49676a9 do statement implemented 2017-08-17 15:30:57 +02:00
FelixKrespach
856f9b059d while Statement implemented 2017-08-17 15:08:30 +02:00
JanUlrich
ae02ee247a SAT Package erstellen 2017-08-17 15:08:07 +02:00
JanUlrich
0cf8f82283 Remove ClassNotFoundException 2017-08-07 23:51:22 +02:00
1e6f046eff Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-07-14 17:48:04 +02:00
841ac5fcbf PackageCrawler durch ClassLoader ersetzen 2017-07-14 17:47:02 +02:00
3b95cdd76f Merge (auweioiwae) 2017-07-14 15:39:16 +02:00
JanUlrich
057df7c702 TypeInsert API anpassen 2017-07-10 21:23:48 +02:00
JanUlrich
86f29f1396 TypeInsert API anpassen 2017-07-09 16:35:33 +02:00
JanUlrich
0f6381f30b TypeInsert anpassen 2017-07-05 20:09:09 +02:00
JanUlrich
adda1db195 Add parse(String) to Compiler 2017-07-05 18:46:08 +02:00
JanUlrich
2167a4288e Add possibility to parse a String to parser 2017-07-05 17:52:23 +02:00
JanUlrich
0ad97251ca Change Parser FileInput to InputStream 2017-07-05 17:50:38 +02:00
JanUlrich
87d2edaaa6 Change TIP creation 2017-07-05 17:42:41 +02:00
JanUlrich
fc6040da39 Fehler in TYPE beseitigen 2017-06-30 13:48:59 +02:00
JanUlrich
d64823ea30 Fehler bei GenericInsertPoints beheben 2017-06-30 12:14:07 +02:00
JanUlrich
3b8ef58222 ASTTypePrinter anfügen 2017-06-30 11:13:15 +02:00
JanUlrich
0aa18c74ba ASTPrinter verbessern 2017-06-29 01:19:13 +02:00
JanUlrich
726eb60eb3 ASTPrinter einführen 2017-06-28 21:10:28 +02:00
JanUlrich
afd3f32f23 ASTVisitor implementieren 2017-06-28 17:20:26 +02:00
JanUlrich
3173cccefa Typen einsetzen um Wildcards erweitern 2017-06-26 18:19:56 +02:00
JanUlrich
e6c58d44c2 Type für Return fixen 2017-06-26 16:59:10 +02:00
JanUlrich
1be1bb83ca FunN-Typen erstellen bei Methodenaufrufen 2017-06-23 21:33:27 +02:00
JanUlrich
2c25e56a76 Einsetzen von Generics korrigieren 2017-06-20 14:50:27 +02:00
JanUlrich
c272688b2d Fehler beim Ausrechnen zusammenhängender Constraints beheben 2017-06-20 01:14:04 +02:00
JanUlrich
cf6d9880e3 Generische Parameter einsetzen (nur Test, nicht korrekt eingesetzt) 2017-06-15 04:48:53 +02:00
JanUlrich
920eea43ad Lambda Test angepasst 2017-06-15 02:57:49 +02:00
JanUlrich
70ca62202d Typeinsetzen erweitert 2017-06-15 02:17:46 +02:00
JanUlrich
44481b4140 Merge branch 'bigRefactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-06-14 04:07:43 +02:00
JanUlrich
7a337843e6 Lambda-TYPE anpassen. Beginnen mit TypeInsert 2017-06-14 04:07:27 +02:00
Martin Plümicke
fcca50ed78 modified: .classpath
modified:   src/de/dhbwstuttgart/parser/SyntaxTreeGenerator/SyntaxTreeGenerator.java
	modified:   src/de/dhbwstuttgart/syntaxtree/SourceFile.java
	modified:   src/de/dhbwstuttgart/syntaxtree/statement/LambdaExpression.java
	modified:   src/de/dhbwstuttgart/typecheck/GenericTypeName.java
	modified:   src/de/dhbwstuttgart/typeinference/typeAlgo/TYPE.java
	modified:   test/astfactory/ASTFactoryTest.java

imports auskommentiert
2017-06-13 17:38:43 +02:00
JanUlrich
5f31150dc8 TYPE-Algo für LambdaExpression implementieren 2017-06-12 18:57:12 +02:00
JanUlrich
2129299eed Auto-Keyword an Grammatik anfügen 2017-05-31 17:10:50 +02:00
Jan-Elric Neumann
a48cbae5a5 Removed faulty (and unused import), which prevented ObjectiF from parsing SyntaxTreeNode 2017-05-30 19:40:51 +02:00
Jan-Elric Neumann
b395f6e137 Fixed return type to make code parsable for ObjectiF 2017-05-30 19:38:03 +02:00
JanUlrich
810164ac17 LocalVar bekommt den Typ beim Parsen 2017-05-19 17:40:47 +02:00
JanUlrich
4a52bc0e6e TypeInsertFactory anfügen, convert UnifyPair->Pair implementieren 2017-05-18 13:17:52 +02:00
JanUlrich
2c999d0eb6 Umstellung auf Visitor Pattern des TYPE-Algos 2017-05-15 13:15:49 +02:00
JanUlrich
058402e056 StatementVisitor einführen 2017-05-11 17:39:48 +02:00
JanUlrich
43bfc551ff Fehler in Test beheben 2017-05-09 20:15:42 +02:00
JanUlrich
4261ce2603 Interfaces angefügt. Generierung von Generics im Parser geändert 2017-05-05 16:20:12 +02:00
Pluemicke Martin
88ea14bbe8 Studienarbeiten Schroedter Steurer hinzugefuegt 2017-05-03 17:59:34 +02:00
JanUlrich
a9909d5f32 Merge mit Antlr 2017-04-20 18:55:34 +02:00
JanUlrich
caa7f7deee Lambdas einführen 2017-04-20 18:51:27 +02:00
Jakob Herrmann
f05222fb56 Some cleanup to be able to recompile, i.e:
* Remove handling of superclasses which needs further debugging
* add missing exceptions
* remove ClassFinder as it is not used and needs debugging
2017-04-20 17:15:52 +02:00
Jakob Herrmann
5cc418371d Main class for JavaTXParser. 2017-04-20 13:47:06 +02:00
JanUlrich
e5d3d67dad sun.NotImplementedExceptions ersetzen 2017-04-19 15:31:11 +02:00
JanUlrich
3d835304cf Lambda Ausdruck dem Parser anfügen 2017-04-19 15:26:37 +02:00
JanUlrich
29a17731fd NewClass Constraints generieren angefügt 2017-04-18 21:06:04 +02:00
Jakob Herrmann
18965e0eda Simple bash script to compile packages needed for parser. 2017-04-13 15:00:13 +02:00
JanUlrich
af1f7f28e2 New Aufruf im Parser anfügen 2017-04-07 02:33:20 +02:00
JanUlrich
e1af4e1f65 Tests ändern 2017-04-06 16:22:36 +02:00
JanUlrich
ed56e24ff6 Merge branch 'bigRefactoring' into antlr 2017-04-06 16:20:33 +02:00
Jakob Herrmann
dad08cfa46 PackageCrawler latest version 2017-04-06 16:16:47 +02:00
JanUlrich
f920269e51 @NotNull entfernen 2017-04-06 16:01:32 +02:00
JanUlrich
5d32f20a51 @NotNull entfernen 2017-04-06 16:01:10 +02:00
JanUlrich
42010c5859 NotNull entfernen 2017-04-06 15:35:52 +02:00
JanUlrich
0c4cdd63b5 NotNull entfernen 2017-04-06 15:33:20 +02:00
JanUlrich
c02a3480e8 Cast Test 2017-04-06 12:26:04 +02:00
JanUlrich
561f1d1150 Fehler beim Parsen von Method behoben 2017-04-06 12:12:06 +02:00
JanUlrich
30099f5e50 Parser um Cast erweitern 2017-04-06 11:23:25 +02:00
JanUlrich
de91e49bcc Fehlendes Return am Ende von Blocks beim Parsen einfügen 2017-03-29 19:44:24 +02:00
JanUlrich
4ecf526b14 Generics anfügen 2017-03-29 17:28:29 +02:00
JanUlrich
56e4192df4 Fehler in JavaClassRegistry.contains fixen 2017-03-22 17:10:51 +01:00
JanUlrich
c480e25805 Bug im convert(Feld) gefixt 2017-03-22 16:16:38 +01:00
JanUlrich
47f1f9ad54 Generics angefügt 2017-03-22 16:05:59 +01:00
JanUlrich
d0eb091666 Unify angefügt 2017-03-17 15:48:06 +01:00
JanUlrich
c8beb9579e UnifyTypeFactory angefügt 2017-03-16 20:02:53 +01:00
JanUlrich
92c284a04b Constraints generieren. Fehler beheben 2017-03-15 16:54:43 +01:00
JanUlrich
5fab817154 MethodCall Constraints erstellen 2017-03-15 16:17:07 +01:00
JanUlrich
a38b796a6f ImportTest2 2017-03-09 16:20:05 +01:00
JanUlrich
d9cc613600 JavaClassName nur in der Regestry erstellen 2017-03-09 15:43:13 +01:00
JanUlrich
2cdca93077 ASTFactory erweitert 2017-03-08 17:51:59 +01:00
JanUlrich
9fae52e1e6 Factory angefügt. java.lang.reflect.Modifier benutzen 2017-03-08 03:43:47 +01:00
JanUlrich
4c4c0d5ada getConstraints() eingeführt 2017-03-06 17:59:01 +01:00
JanUlrich
a44baeaa34 Beginnen mit Typinferenzalgorithmus 2017-03-02 18:16:14 +01:00
JanUlrich
0b17894ed2 Parser erweitert 2017-03-02 16:48:08 +01:00
JanUlrich
52f51c7932 Parser erweitern 2017-03-01 15:34:57 +01:00
JanUlrich
a51cef7100 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-02-23 01:11:35 +01:00
Jakob Herrmann
2e9a71a18d * Implemented recognition of SingleTypeImportDecl (tested).
* InvalidClassNameException is thrown if class/package in ImportDecl is
not known.
2017-02-22 21:25:57 +01:00
JanUlrich
fbcb369f1c Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-02-22 14:47:53 +01:00
JanUlrich
32d262341a SyntaxtreeGenerator um einige Regeln zur Erstellung von Statements erweitert 2017-02-22 14:47:34 +01:00
Jakob Herrmann
d5ba34e620 * Extend PackageCrawler
* Dummy methods for converting imports
2017-02-22 14:31:59 +01:00
Jakob Herrmann
d63fe45d08 Helper methods to convert type names. 2017-02-22 13:14:32 +01:00
JanUlrich
d328faeee2 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into bigRefactoring 2017-02-22 01:35:59 +01:00
Jakob Herrmann
15f8a1b99d PackageCrawler: Convert class names to list of strings. 2017-02-22 00:04:16 +01:00
Jakob Herrmann
72bf03ec58 RunParser now reads from file instead of stdin. 2017-02-21 22:19:00 +01:00
JanUlrich
18d477ba07 Merge branch 'refactoring' into bigRefactoring 2017-02-17 18:00:08 +01:00
JanUlrich
40d87c8636 Method Parsen verbessert 2017-02-17 17:20:50 +01:00
JanUlrich
fb629b417f FormalParameter convert änderung 2017-02-17 17:08:10 +01:00
JanUlrich
3299f329ea Method Parameter parsen 2017-02-17 16:58:19 +01:00
JanUlrich
656b014ad4 Parser um return und method call erweitern 2017-02-17 16:34:40 +01:00
JanUlrich
fa4a24c653 Reflections Library anfügen. PackageCrawler anfügen 2017-02-15 16:29:11 +01:00
Jakob Herrmann
d9b81224b6 Notes/Fragen 2017-02-15 13:05:51 +01:00
Jakob Herrmann
b5a2d64a7b * Some getters in syntaxtree
* Extend RunParser (makes problems).
2017-02-15 12:22:06 +01:00
Jakob Herrmann
7f05966093 Idea to resolve the problem with initial fields. 2017-02-15 00:51:34 +01:00
Jakob Herrmann
cca2da8018 Implemented converter for FieldModifier. 2017-02-14 21:37:17 +01:00
Jakob Herrmann
e9e2d5c27b Generate classes of interface FieldModifier. 2017-02-14 15:26:56 +01:00
JanUlrich
5c36e68825 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2017-02-10 17:37:56 +01:00
JanUlrich
60a304667a ANTLR Parser erweitert 2017-02-10 17:37:42 +01:00
Jakob Herrmann
50a618ee4b SyntaxTreeGenerator.setPackageName() is now used properly. 2017-02-07 22:12:40 +01:00
JanUlrich
8d0f24f2f8 Merge 2017-02-03 15:22:45 +01:00
JanUlrich
d064f16de4 Merge 2017-02-03 15:21:45 +01:00
JanUlrich
39747f4138 ANTLR Parser SyntaxtreeGenerator erweitern. 2017-02-03 15:20:26 +01:00
Jakob Herrmann
ade687483c Fixed RunParser according to new constructor. 2017-02-01 12:36:23 +01:00
Jakob Herrmann
d55d6734d9 JavaClassRegistry is now required for constructor. 2017-02-01 12:32:20 +01:00
JanUlrich
77fbe99fed merge 2017-01-27 14:20:33 +01:00
JanUlrich
bee92ef11d Parser package-Struktur umstellen 2017-01-27 13:20:22 +01:00
JanUlrich
f92a53ce74 Aufräumen 2017-01-26 17:16:06 +01:00
JanUlrich
acf9cbd20b Merge mit antlr-branch. Löschen aller ino.Kommentare 2017-01-20 15:20:45 +01:00
JanUlrich
049f435537 Unnötige ino-Kommentare entfernen 2017-01-20 13:57:20 +01:00
JanUlrich
f2ddce2e89 Merge mit antlr 2017-01-20 13:54:06 +01:00
JanUlrich
a4dc47cc4e Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2017-01-20 13:01:08 +01:00
JanUlrich
10ede1ba98 Entfernen von unnötigen ino.* Kommentaren 2017-01-20 13:00:25 +01:00
Jakob Herrmann
a77b65e65c Extend converter for modifiers by strictfp. 2017-01-18 15:58:34 +01:00
Jakob Herrmann
a1bbd8b11e Implement Strictfp modifier. 2017-01-18 15:55:07 +01:00
Jakob Herrmann
e8537c3886 TODO cleanup 2017-01-18 15:12:16 +01:00
Jakob Herrmann
c3320858a3 RunParser no handles line breaks.This should also fix problems with
comments.
2017-01-18 13:27:17 +01:00
Jakob Herrmann
68476f9f96 * Implemented converter for Modifier.
* Missing getters etc. in some classes added.
2017-01-18 00:45:46 +01:00
Jakob Herrmann
fbfa407c26 More converters & cleanup. 2017-01-17 20:59:42 +01:00
Jakob Herrmann
5814cac83f Start rewriting converters to simplify readability etc. 2017-01-17 12:34:23 +01:00
Jakob Herrmann
9ef41280ca * Implement missing constructor for Modifiers.
* TODO: convert for Modifier
2017-01-17 00:58:03 +01:00
Jakob Herrmann
0db15bffa8 Begin rewriting of convert for TypeDecl. 2017-01-16 23:32:12 +01:00
Jakob Herrmann
4c79023889 Implement base constructor in ClassOrInterface. 2017-01-16 14:28:22 +01:00
JanUlrich
72bcfd41d3 Merge mit ANTLR branch 2017-01-13 17:49:58 +01:00
Jakob Herrmann
e4e98797fc Extend constructor of SourceFile. 2017-01-11 16:42:02 +01:00
Jakob Herrmann
647196bf16 * Start implementing "getters and setters" for
symtaxtree.ClassOrInterface (=no choice!!!).
* Start implementing converters TypeDeclerytion -> Class.
2017-01-10 23:44:19 +01:00
Jakob Herrmann
3c6ffcf4d8 * "Normal" class and interface names can now be resolved.
* TODO: line comments
2017-01-10 22:20:44 +01:00
Jakob Herrmann
fb10220da9 * Set JavaClassName constroctur to public.
* Implemented "class resolution" for interfaces.
2017-01-10 20:07:23 +01:00
Jakob Herrmann
599c8b2573 * SyntaxTreeGenerator: Implemented method to get package name of
CompilationUnitCtx (ongoing).
* RunParser: test methods
2017-01-10 17:42:20 +01:00
Jakob Herrmann
f0028f6aaf Minor changes (nameReg/constructor). 2016-12-21 15:49:38 +01:00
JanUlrich
5f61d478fa Class ändern zu ClassOrInterface 2016-12-21 15:46:28 +01:00
JanUlrich
aed261c807 JavaClassName aufräumen 2016-12-21 15:39:07 +01:00
JanUlrich
3b6363d71a Aufrömen 2016-12-21 15:06:55 +01:00
JanUlrich
ddbcc5ee6e GenericType für Bytecodegenerierung eingeführt 2016-12-16 14:33:04 +01:00
JanUlrich
1b99f74f39 Generics als RefType entfernen 2016-12-16 13:26:28 +01:00
JanUlrich
7b9a00a7e6 Revert "Syntaxbaum bereinigen. Allen Code löschen. Nur Struktur bleibt erhalten"
This reverts commit 3ab96a3ed7.
2016-12-16 01:05:54 +01:00
JanUlrich
c329ba6cef merge 2016-12-16 01:05:45 +01:00
JanUlrich
3ab96a3ed7 Syntaxbaum bereinigen. Allen Code löschen. Nur Struktur bleibt erhalten 2016-12-16 00:00:37 +01:00
JanUlrich
76880708a1 Merge 2016-12-15 17:07:17 +01:00
JanUlrich
e84d6373c7 Aufräumen 2016-12-15 17:02:39 +01:00
JanUlrich
a35bcd490b Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2016-12-15 16:28:26 +01:00
JanUlrich
40ba5fb621 Beispiel für ANTLR Parser 2016-12-15 16:28:12 +01:00
Jakob Herrmann
ad02e94967 notes parse_tree 2016-12-15 16:17:40 +01:00
JanUlrich
c34b3c4c14 Aufräumen 2016-12-15 16:00:28 +01:00
JanUlrich
01a954ca68 TypeCheck package 2016-12-15 15:45:23 +01:00
JanUlrich
5c6b001ae1 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2016-12-15 15:35:26 +01:00
JanUlrich
fc43cd11da Aufräumen 2016-12-15 15:35:14 +01:00
Jakob Herrmann
e1d68291c9 Added some basic handling of package declarations. 2016-12-15 15:01:57 +01:00
Jakob Herrmann
b0a6585252 Small changes, i.e. RunParser now reads from System.in. 2016-12-15 13:35:07 +01:00
Jakob Herrmann
81e223334b Created RunParser which is supposed the main class (still rather
experimental).
2016-12-15 12:05:23 +01:00
Jakob Herrmann
82a1e86186 * Started implementing CompilationUnitEvaluator.java which is supposed to be the base
class for syntax tree construction.
* Deleted JavaClassName and JavaClassRegistry as they cannot be compiled
so far (backups exist).
2016-12-15 11:21:33 +01:00
JanUlrich
aff39ba442 Type löschen 2016-12-09 04:34:50 +01:00
JanUlrich
343c7d3a55 Merge branch 'antlr' of /home/janulrich/Development/intellijworkspace/../eclipseworkspace/eclipseWorkspaceHorb/JavaCompilerCore into antlr 2016-12-07 14:32:56 +01:00
JanUlrich
c1cbb78fe5 Aufräumen 2016-12-07 14:32:48 +01:00
JanUlrich
4e43de987d Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2016-12-07 14:06:19 +01:00
JanUlrich
717fd5d53e Field anpassen 2016-12-02 01:23:01 +01:00
Jakob Herrmann
d9e6ef6e47 Parser now handles untyped method declarations but this needs further
inspection as constructors are not handled properly.
2016-11-29 21:08:53 +01:00
Jakob Herrmann
b2e5555da5 Grammar now supports untyped parameters in method declarations. 2016-11-29 19:46:07 +01:00
Jakob Herrmann
c5ea9a3464 Grammar now supports untyped field declarations. 2016-11-29 18:34:33 +01:00
Jakob Herrmann
52a5e54c3a Recompile grammer due to some technical problems. 2016-11-29 18:31:50 +01:00
Jakob Herrmann
264ede100c Create list with notes/questions/problems. 2016-11-23 00:43:57 +01:00
JanUlrich
d651a6cdff Parser austauschen 2016-11-16 14:51:45 +01:00
JanUlrich
c9e3743fb5 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2016-11-16 14:33:38 +01:00
Jakob Herrmann
7d38c9af43 Added package declaration to sources. 2016-11-16 14:32:51 +01:00
JanUlrich
cdb1850668 ANTLR Lib an classpath anfügen 2016-11-16 14:28:28 +01:00
JanUlrich
90b6e81195 Merge branch 'antlr' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into antlr 2016-11-16 14:17:47 +01:00
JanUlrich
7606aee9c3 Unnötige Datein in bin löschen 2016-11-16 14:17:38 +01:00
Jakob Herrmann
7504211df2 * Add base antlr grammer and corresponding classes.
* Add antlr4 runtime library.
2016-11-16 14:09:33 +01:00
JanUlrich
7d09131c27 ObjectClass einführen 2016-11-16 13:41:25 +01:00
JanUlrich
388685d3b2 Bugfix (FunVoidN Typen) 2016-11-15 23:00:07 +01:00
JanUlrich
642394c25b ObjectClass added 2016-11-15 21:15:09 +01:00
JanUlrich
85dc60169a Merge, ObjectClass anfügen 2016-11-15 19:47:46 +01:00
JanUlrich
73e6e5c45f LambdaTest30 anfügen 2016-11-15 19:46:50 +01:00
JanUlrich
1a94f449a0 bugfix 2016-11-11 11:50:55 +01:00
JanUlrich
6a4cb673bf Mergen... (nicht fertig) 2016-11-11 11:01:55 +01:00
JanUlrich
accbe5bbfc Beginnen der BytecodeTypeFactory 2016-11-09 16:59:08 +01:00
JanUlrich
c4aff43f71 NameGenerator einführen 2016-10-28 18:32:05 +02:00
JanUlrich
107201c00c Fehler in FunN Generierung beheben 2016-10-28 18:31:42 +02:00
JanUlrich
e60e6b622c Bugfix 2016-10-07 14:12:18 +02:00
Martin Plümicke
a33ce04734 modified 2016-09-30 12:48:41 +02:00
JanUlrich
b05b0ea5df Syntaxbaum anpassen 2016-09-30 12:46:02 +02:00
JanUlrich
a1227a8b1b Expr und ExprStmt ändern 2016-09-20 15:18:13 +02:00
JanUlrich
a5c34896ba Fehler in Lambda-Generierung fixen 2016-09-16 14:26:18 +02:00
JanUlrich
bc812ad083 Aufräumen 2016-09-16 13:25:20 +02:00
JanUlrich
1ac500715b Aufräumen 2016-09-13 17:32:22 +02:00
JanUlrich
5be508e943 Beginnen der AST Anpassungen für das ANTLR-Projekt. Constructor-Aufrufe ändern. UsedID entfernen. parserPostProcessing entfernen. Anpassungen am AST Layout. 2016-09-10 00:40:17 +02:00
JanUlrich
aa6a6beb93 StackMapTable-Fix 2016-08-25 19:52:06 +02:00
JanUlrich
dbe09c237c Lambda Bytecodegenerierung implementieren 2016-08-17 00:45:14 +02:00
JanUlrich
592af65c08 Einführen von BCEL 6.1 2016-07-21 16:36:53 +02:00
JanUlrich
25329cd39e Einführen von BCEL 6.1 2016-07-21 16:36:33 +02:00
JanUlrich
5aebc06337 Fehlerhaften Filter auslassen 2016-07-21 16:20:37 +02:00
JanUlrich
0896cf8236 StackMapTable funktioniert 2016-07-11 20:23:36 +02:00
JanUlrich
81c8764fc6 Aufräumen, neue BCEL-Version 2016-06-23 16:49:30 +02:00
JanUlrich
eb0da3c36a Aufräumen, neues Eclipse-Projekt anlegen 2016-06-22 20:29:16 +02:00
JanUlrich
dab2087f0a BCEL aktualisiert 2016-06-17 14:21:30 +02:00
JanUlrich
e19dee4c99 Umstellung auf Intellij IDEA 2016-06-17 13:55:14 +02:00
JanUlrich
f88d58d548 Update für StackMapTable 2016-06-17 07:02:15 +02:00
JanUlrich
9d9526ae72 Testen von StackMapTable-Generator 2016-06-15 20:58:55 +02:00
JanUlrich
86a94dfae9 Merge branch 'unify' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into refactoring 2016-06-03 13:47:37 +02:00
JanUlrich
fe35a1f56d Merge mit bytecode 2016-06-03 13:47:22 +02:00
5821839cbc Test für Methodenparameter erstellt 2016-06-03 10:57:48 +02:00
b6df854cc6 Stack wird pro Methode behandelt 2016-05-26 11:02:02 +02:00
JanUlrich
52b6f438b0 Merge mit Bytecode 2016-05-25 18:18:05 +02:00
JanUlrich
07ea25b5b7 Filtern von Constraints vor dem Karthesischen Produkt bilden 2016-05-25 17:46:33 +02:00
JanUlrich
0d51c3e94d Bug 49 und 52 fix 2016-05-24 00:36:59 +02:00
47c2b78713 Testfall für Bug 48: Uninizierte Variablen erstellt 2016-05-12 21:14:57 +02:00
58db64ad22 WildCardTest implementiert 2016-05-12 20:50:36 +02:00
JanUlrich
b67816775e Merge branch 'refactoring' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into refactoring 2016-05-12 19:48:39 +02:00
JanUlrich
748f25a2fd gen-TPH richtig konvertieren 2016-05-12 19:48:19 +02:00
Martin Plümicke
223f6facc7 modified: ../../../src/de/dhbwstuttgart/bytecode/ClassGenerator.java
in addMethod :
String methodNameAndTypes = m.getName()+Arrays.toString(m.getArgumentTypes());
durch
String methodNameAndTypes = m.getReturnType().getSignature()+m.getName()+Arrays.toString(m.getArgumentTypes());
ersetzt
	modified:   OL.jav
Main-Klasse hinzugefuegt
2016-05-04 00:28:57 +02:00
JanUlrich
edda41f546 Generic Type Var werden zu PlaceholderTypen konvertiert 2016-05-03 22:43:43 +02:00
JanUlrich
5d760d4222 Aufruf im UnifyTest OverloadingVector ändern 2016-05-03 22:15:19 +02:00
ae01af7a40 Bugfix: OverloadingTest 2016-05-03 18:15:14 +02:00
JanUlrich
db93a1dfe1 Void Reference-Typen wieder zu Void RefTypes konvertieren 2016-05-03 13:58:54 +02:00
JanUlrich
f17745bfa5 Merge branch 'unify' of ssh://gohorb.ba-horb.de/bahome/projekt/git/JavaCompilerCore into refactoring 2016-05-03 13:55:19 +02:00
JanUlrich
0a6aa450db OverloadingVector Test 2016-05-03 13:03:14 +02:00
1621 changed files with 79846 additions and 112365 deletions
.classpath.cvsignore
.externalToolBuilders
.gitignore.project
.settings
BCEL/bcelifier
Papers/FMCO2005
README_aktuelle_BranchesTODO.md
antlr
bin
doc
Generics
LambdaJavadoc
allclasses-frame.htmlallclasses-noframe.html
de
index-files
overview-frame.htmloverview-summary.htmloverview-tree.htmlserialized-form.html
OldStuff
PluginBau.pdf
Studienarbeiten
parser.md
examples
OldExamples
achim
bajo1
bajo1_usecases
feda
hoth
hoti
lambda
luar
mema_usecases
pl_usecases
scju
lib
log4j.xml
logFiles
notizen
pom.xml
src
de
dhbwstuttgart
JvmDisassembler
bytecode
core
logger
myexception
parser
syntaxtree
BasicAssumptionClass.javaClass.javaClassBody.javaClassHelper.javaConstant.javaConstructor.javaExceptionList.javaField.javaFieldDeclaration.javaFormalParameter.javaGTVDeclarationContext.javaGeneric.javaGenericDeclarationList.javaImportDeclarations.javaInterface.javaInterfaceBody.javaMethod.javaNullSyntaxTreeNode.javaParameterList.javaSourceFile.javaSyntaxTreeNode.java
factory
misc
modifier
operator
statement
type
typeinference
main
antlr4
java
de
dhbwstuttgart
bytecode
core
environment
exceptions
inferWildcards
parser
syntaxtree
typedeployment
typeinference
unify2
test
java
AllgemeinTest.java
astfactory
bytecode
constraintSimplify
finiteClosure
inferWildcards
insertGenerics
log4jTesting.xml
packages
parser
typeinference
visualisation
resources
AllgemeinTest
bytecode
inferWildcards
insertGenericsJav
javFiles
log4jTesting.xml
testBytecode
test
KomplexeMenge
bytecode
ASTBytecodeTest.javaAssign.javAssignTest.javaBinary.javBinary2.javBinaryTest.javaBinaryTest2.javaBoolLit.javBoolLitTest.javaCharLitTest.javaCondition.javConditionTest.javaEmptyClass.javEmptyClassTest.javaFieldDeclaration.javFieldDeclarationTest.javaForTest.javForTest.javaId.javIdTest.javaIdentity.javIdentityField.javIdentityFieldTest.javaIdentityTest.javaIfElseIfStatement.javIfElseIfStatementTest.javaIfElseStatement.javIfElseStatementTest.javaIfStatement.javIfStatementTest.javaIfTest.javaLambdaExpr.javLambdaExpr2.javLambdaExpr2Test.javaLambdaExprTest.javaMain.javMainTest.javaMatrix_lambda.javMatrix_lambda2.javMatrix_lambda3.javMatrix_lambdaTest.javaMatrix_lambdaTest2.javaMatrix_lambdaTest3.javaMethodAndVariable.javMethodCall.javMethodCallTest.javaMethodEmpty.javMethodEmpty.javaMethodEmptyRetType.javMethodEmptyRetType.javaMethodsAndVariableTest.javaMultiClass.javMultiClassTest.javaNewArray.javNewClass.javNewClassTest.javaNewStatement.javNewStatementTest.javaParameter.javParameterTest.javaPostDecrement.javPostDecrement.javaPostIncrement.javPostIncrement.javaReturn.javReturnTest.javaRunnable.javRunnableTest.javaSingleClassTester.javaSourceFileBytecodeTest.javaStringLitTest.javStringLitTest.javaSystemOutPrintln.javSystemOutPrintlnTest.javaTest.javaTest2.javaTest3.javaTestStackMap.javaVariable.javVariableTest.javaWhileTest.javWhileTest.java
operators
stackmaptable
types
parser
plugindevelopment
InsertSingleTypeTest.java
MartinTestCases
MethodTypeInsertTest.javMethodTypeInsertTest.javaMethodTypeInsertTestSolution.javParameterInsertTest.javaParameterTypeInsertTest.javParameterTypeInsertTestSolution.javSingleTypeInsertTest.javSyntaxTreeTests.javaTypeInsertSetEqualTest.javTypeInsertTester.java
TypeInsertTests
.LambdaTest2_3.jav.log.swpAdd.javaAnalysis.txtBoundedGenericTest.javBoundedGenericsTest.javaConstructorTest.javConstructorTest.javaFunNInsertTest.javFunNInsertTest.javaFunVoid.javFunVoid.javaGenTypeTest.javGenTypeTest.javaGenericParaListInsertTest.javGenericParaListInsertTest.javaGenericParaListInsertTest2.javGenericParaListInsertTest2.javaGenericTypeVarTest.javGenericTypeVarTest.javaGenericTypeVarTest2.javGenericTypeVarTest2.javaGenericVarInsertTest.javGenericVarInsertTest.javaGenericVarTest.javGenericVarTest.javaGenericVarTest2.javGenericVarTest2.javaGenericVarTest3.javGenericVarTest3.javaId.javId.javaImportSubClassTest.javImportSubClassTest.javaImportTest.javImportTest.javaImportTest2.javImportTest2.javaIntTest.javIntTest.javaLambdaTest1.javLambdaTest1.javaLambdaTest10.javLambdaTest10.javaLambdaTest11.javLambdaTest11.javaLambdaTest12.javLambdaTest12.javaLambdaTest13.javLambdaTest13.javaLambdaTest14.javLambdaTest14.javaLambdaTest15.javLambdaTest15.javaLambdaTest16.javLambdaTest16.javaLambdaTest17.javLambdaTest17.javaLambdaTest18.javLambdaTest18.javaLambdaTest19.javLambdaTest19.javaLambdaTest2.javLambdaTest2.javaLambdaTest20.javLambdaTest20.javaLambdaTest21.javLambdaTest22.javLambdaTest23.javLambdaTest23.javaLambdaTest24.javLambdaTest24.javaLambdaTest25.javLambdaTest25.javaLambdaTest26.javLambdaTest26.javaLambdaTest27.javLambdaTest27.javaLambdaTest28.javLambdaTest28.javaLambdaTest29.javLambdaTest29.javaLambdaTest2_2.javLambdaTest2_2.javaLambdaTest2_3.javLambdaTest2_3.javaLambdaTest3.javLambdaTest3.javaLambdaTest4.javLambdaTest4.javaLambdaTest5.javLambdaTest5.javaLambdaTest6.javLambdaTest6.javaLambdaTest7.javLambdaTest7.javaLambdaTest8.javLambdaTest8.javaLambdaTest9.javLambdaTest9.java
LargeSourceCodeTests
Matrix.javMatrix_simple.javMatrix_simple.javaMultipleTypesInsertTester.javaMutlitpleTestCases.javaOL.javOL.javaOperatorTest.javOperatorTest.javaOverloadingExample.javOverloadingExample.javaOverloadingInMethod.javOverloadingInMethod.javaOverloadingInMethod2.javOverloadingInMethod2.javaOverloadingInMethod2Simple.javOverloadingInMethod2Simple.javaOverloadingInsertTest.javOverloadingInsertTest.javaOverloadingRecursive.javOverloadingRecursive.javaRecursive.javRecursive2.javRelOpTest.javRelOpTest.javaReursiveTest.javaReursiveTest2.javaSuperTest.javSuperTest.javaTest1.javTest2.javThisTest.javThisTest.javaTypedMatrixSimpleTest.javTypedMatrixTest.javUnifyPaper.javUnifyPaper.javaUnifyPaper2.javUnifyPaper2.javaWildcardTestForLambda.javWildcardTestForLambda.javaWildcardTestForLambda2.javWildcardTestForLambda2.java
VariableTypeInsertTest.javVariableTypeInsertTest.javaVariableTypeInsertTestSolution.jav
syntaxTree
unify
tools
.cvsignoreAntParserBuilder.xmlAntParserBuilderDarwin.xmlAntParserBuilderLinux.xmlAntParserBuilderWindows.xmlJLex.jarJLex_neu.jarJavaParser.jay
Lambda
RunJay.batRunJay.shRunJayDarwin.sh
cygwin
Cygwin-Files
ftp%3a%2f%2fftp-stud.fht-esslingen.de%2fpub%2fMirrors%2fsources.redhat.com%2fcygwin
release
_update-info-dir
ash
base-files
base-passwd
bash
bzip2
cygutils
cygwin-doc
cygwin
diffutils
editrights
fileutils
findutils
gawk
gdbm
gettext
grep
groff
gzip
less
libiconv
login
man
mktemp
ncurses
pcre
popt
readline
sed
sh-utils
tar
termcap
terminfo
texinfo
textutils
which
zlib
setup.ini
setup.logsetup.log.full
cygwin_setup.exesetup.exe
cygwin1.dlljayjay.cygwin32jay.darwin
old
skeleton

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="BCEL"/>
<classpathentry excluding=".classpath|.cvsignore|.externalToolBuilders/|.project|.settings/|Papers/|bin/|doc/|examples/|lib/|notizen/|src/|test/|tools/|BCEL/" including="log4j.xml" kind="src" path=""/>
<classpathentry kind="src" path="test"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="lib" path="lib/junit-4.0.jar" sourcepath="/home/janulrich/.m2/repository/junit/junit/4.0/junit-4.0-sources.jar"/>
<classpathentry kind="lib" path="lib/cloning.jar"/>
<classpathentry kind="lib" path="lib/guava-10.0.1.jar"/>
<classpathentry kind="lib" path="lib/commons-bcel6-6.0-SNAPSHOT.jar" sourcepath="/home/janulrich/Development/intellijworkspace/bcel/src/main/java"/>
<classpathentry kind="lib" path="lib/bcel-6.0-SNAPSHOT.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>

@@ -1,12 +0,0 @@
bin
*.class
output*
JavaLexer.java
JavaParser.java
*.~*~
*.aux
*.dvi
*.log
y.output
Bytecode
JavaParserBuilder.launch

@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ant.AntBuilderLaunchConfigurationType">
<booleanAttribute key="org.eclipse.ant.ui.ATTR_TARGETS_UPDATED" value="true"/>
<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
<listEntry value="/JavaCompilerCore"/>
</listAttribute>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="4"/>
</listAttribute>
<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="JavaCompilerCore"/>
<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_BUILDER_ENABLED" value="false"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/JavaCompilerCore/tools/AntParserBuilderWindows.xml}"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="incremental,clean"/>
<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/JavaCompilerCore/tools}"/>
</launchConfiguration>

20
.gitignore vendored

@@ -10,3 +10,23 @@ bin
*.jar
*.war
*.ear
# IDEs
.classpath
*.iml
.idea/
/target/
.DS_Store
.project
.settings/
/target/
#
manually/
logFiles/**
!logFiles/.gitkeep
src/main/java/de/dhbwstuttgart/parser/antlr/
src/main/java/de/dhbwstuttgart/sat/asp/parser/antlr/
/pull.sh

@@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>JavaCompilerCore</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/JavaParserBuilder.launch</value>
</dictionary>
<dictionary>
<key>incclean</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

@@ -1,2 +0,0 @@
eclipse.preferences.version=1
filesCopiedToWebInfLib=

@@ -1,7 +0,0 @@
eclipse.preferences.version=1
encoding//src/de/dhbwstuttgart/core/MyCompiler.java=UTF-8
encoding//src/de/dhbwstuttgart/syntaxtree/statement/LambdaExpression.java=UTF-8
encoding//src/de/dhbwstuttgart/typeinference/UndConstraint.java=UTF-8
encoding//src/de/dhbwstuttgart/typeinference/UnifySingleConstraint.java=UTF-8
encoding//src/de/dhbwstuttgart/typeinference/UnifyUndConstraint.java=UTF-8
encoding/<project>=UTF-8

@@ -1,13 +0,0 @@
eclipse.preferences.version=1
instance/org.eclipse.core.net/org.eclipse.core.net.hasMigrated=true
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8

@@ -1,4 +0,0 @@
#Sun Jul 27 10:21:29 CEST 2008
eclipse.preferences.version=1
instance/org.eclipse.core.net/org.eclipse.core.net.hasMigrated=true
internal.default.compliance=default

@@ -1,6 +0,0 @@
package bcelifier;
public class BooleanValue {
Boolean c = true;
Boolean b = c.booleanValue();
}

@@ -1,63 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class BooleanValueCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public BooleanValueCreator() {
_cg = new ClassGen("bcelifier.BooleanValue", "java.lang.Object", "BooleanValue.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createFields();
createMethod_0();
_cg.getJavaClass().dump(out);
}
private void createFields() {
FieldGen field;
field = new FieldGen(0, new ObjectType("java.lang.Boolean"), "c", _cp);
_cg.addField(field.getField());
field = new FieldGen(0, new ObjectType("java.lang.Boolean"), "b", _cp);
_cg.addField(field.getField());
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.BooleanValue", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(new PUSH(_cp, 1));
il.append(_factory.createInvoke("java.lang.Boolean", "valueOf", new ObjectType("java.lang.Boolean"), new Type[] { Type.BOOLEAN }, Constants.INVOKESTATIC));
il.append(_factory.createFieldAccess("bcelifier.BooleanValue", "c", new ObjectType("java.lang.Boolean"), Constants.PUTFIELD));
InstructionHandle ih_12 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createFieldAccess("bcelifier.BooleanValue", "c", new ObjectType("java.lang.Boolean"), Constants.GETFIELD));
il.append(_factory.createInvoke("java.lang.Boolean", "booleanValue", Type.BOOLEAN, Type.NO_ARGS, Constants.INVOKEVIRTUAL));
il.append(_factory.createInvoke("java.lang.Boolean", "valueOf", new ObjectType("java.lang.Boolean"), new Type[] { Type.BOOLEAN }, Constants.INVOKESTATIC));
il.append(_factory.createFieldAccess("bcelifier.BooleanValue", "b", new ObjectType("java.lang.Boolean"), Constants.PUTFIELD));
InstructionHandle ih_26 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.BooleanValueCreator creator = new bcelifier.BooleanValueCreator();
creator.create(new FileOutputStream("bcelifier.BooleanValue.class"));
}
}

@@ -1,11 +0,0 @@
package bcelifier;
public class FieldDeclaration {
Integer field = methode();
Integer methode()
{
return field;
}
}

@@ -1,68 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class FieldDeclarationCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public FieldDeclarationCreator() {
_cg = new ClassGen("bcelifier.FieldDeclaration", "java.lang.Object", "FieldDeclaration.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createFields();
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createFields() {
FieldGen field;
field = new FieldGen(0, new ObjectType("java.lang.Integer"), "field", _cp);
_cg.addField(field.getField());
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.FieldDeclaration", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("bcelifier.FieldDeclaration", "methode", new ObjectType("java.lang.Integer"), Type.NO_ARGS, Constants.INVOKEVIRTUAL));
il.append(_factory.createFieldAccess("bcelifier.FieldDeclaration", "field", new ObjectType("java.lang.Integer"), Constants.PUTFIELD));
InstructionHandle ih_12 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, new ObjectType("java.lang.Integer"), Type.NO_ARGS, new String[] { }, "methode", "bcelifier.FieldDeclaration", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createFieldAccess("bcelifier.FieldDeclaration", "field", new ObjectType("java.lang.Integer"), Constants.GETFIELD));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.OBJECT));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.FieldDeclarationCreator creator = new bcelifier.FieldDeclarationCreator();
creator.create(new FileOutputStream("bcelifier.FieldDeclaration.class"));
}
}

@@ -1,12 +0,0 @@
package bcelifier;
class IfStatement{
Integer methode(Boolean b){
if(b){
return 1;
}else{
return 2;
}
}
}

@@ -1,71 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import de.dhbwstuttgart.syntaxtree.type.RefType;
import de.dhbwstuttgart.bytecode.ClassGenerator;
import de.dhbwstuttgart.bytecode.MethodGenerator;
import de.dhbwstuttgart.typeinference.TypeinferenceResults;
import org.apache.commons.bcel6.*;
import java.io.*;
public class IfStatementCreator {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGenerator _cg;
public IfStatementCreator() {
TypeinferenceResults typeinferenceResults = null;
_cg = new ClassGenerator("bcelifier.IfStatement", new RefType("java.lang.Object", null, 0), "IfStatement.java", Const.ACC_SUPER, new String[] { }, typeinferenceResults);
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGenerator(0, Type.VOID, new Type[] { new ObjectType("java.lang.Boolean") }, new String[] { "arg0" }, "<init>", "bcelifier.IfStatement", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Const.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGenerator(0, new ObjectType("java.lang.Integer"), new Type[] { new ObjectType("java.lang.Boolean") }, new String[] { "arg0" }, "methode", "bcelifier.IfStatement", il, _cp);
il.append(InstructionFactory.createLoad(Type.OBJECT, 1));
il.append(_factory.createInvoke("java.lang.Boolean", "booleanValue", Type.BOOLEAN, Type.NO_ARGS, Const.INVOKEVIRTUAL));
BranchInstruction ifeq_4 = InstructionFactory.createBranchInstruction(Const.IFEQ, null);
il.append(ifeq_4);
il.append(new PUSH(_cp, 1));
il.append(_factory.createInvoke("java.lang.Integer", "valueOf", new ObjectType("java.lang.Integer"), new Type[] { Type.INT }, Const.INVOKESTATIC));
il.append(InstructionFactory.createReturn(Type.OBJECT));
InstructionHandle ih_12 = il.append(new PUSH(_cp, 2));
il.append(_factory.createInvoke("java.lang.Integer", "valueOf", new ObjectType("java.lang.Integer"), new Type[] { Type.INT }, Const.INVOKESTATIC));
il.append(InstructionFactory.createReturn(Type.OBJECT));
ifeq_4.setTarget(ih_12);
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
}
public static void main(String[] args) throws Exception {
bcelifier.IfStatementCreator creator = new bcelifier.IfStatementCreator();
creator.create(new FileOutputStream("bcelifier.IfStatement.class"));
System.out.println("bcelifier.IfStatement.class");
}
}

Binary file not shown.

@@ -1,7 +0,0 @@
package bcelifier;
public class IntLiteral {
Integer methode(){
return 50000;
}
}

@@ -1,56 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class IntLiteralCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public IntLiteralCreator() {
_cg = new ClassGen("bcelifier.IntLiteral", "java.lang.Object", "IntLiteral.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.IntLiteral", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, new ObjectType("java.lang.Integer"), Type.NO_ARGS, new String[] { }, "methode", "bcelifier.IntLiteral", il, _cp);
InstructionHandle ih_0 = il.append(new PUSH(_cp, 50000));
il.append(_factory.createInvoke("java.lang.Integer", "valueOf", new ObjectType("java.lang.Integer"), new Type[] { Type.INT }, Constants.INVOKESTATIC));
InstructionHandle ih_5 = il.append(_factory.createReturn(Type.OBJECT));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.IntLiteralCreator creator = new bcelifier.IntLiteralCreator();
creator.create(new FileOutputStream("bcelifier.IntLiteral.class"));
}
}

@@ -1,43 +0,0 @@
package bcelifier;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.OpenOption;
import java.nio.file.Path;
import org.apache.commons.bcel6.classfile.ClassFormatException;
import org.apache.commons.bcel6.classfile.ClassParser;
import org.apache.commons.bcel6.classfile.JavaClass;
import org.apache.commons.bcel6.util.BCELifier;
public class JavaToBCEL {
public final static String rootDirectory = System.getProperty("user.dir")+"/BCEL/bcelifier/";
public static void main(String args[]){
new JavaToBCEL();
}
public JavaToBCEL(){
try {
//new BCELifier(new ClassParser(rootDirectory+"Lambda1.class").parse(), new FileOutputStream(new File(rootDirectory+"Lambda1Creator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"This.class").parse(), new FileOutputStream(new File(rootDirectory+"ThisCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"IntLiteral.class").parse(), new FileOutputStream(new File(rootDirectory+"IntLiteralCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"MethodCall.class").parse(), new FileOutputStream(new File(rootDirectory+"MethodCallCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"FieldDeclaration.class").parse(), new FileOutputStream(new File(rootDirectory+"FieldDeclarationCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"Null.class").parse(), new FileOutputStream(new File(rootDirectory+"NullCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"LocalVarAccess.class").parse(), new FileOutputStream(new File(rootDirectory+"LocalVarAccessCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"Wildcard.class").parse(), new FileOutputStream(new File(rootDirectory+"WildcardCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"BooleanValue.class").parse(), new FileOutputStream(new File(rootDirectory+"BooleanValueCreator.java"))).start();
//new BCELifier(new ClassParser(rootDirectory+"NewClass.class").parse(), new FileOutputStream(new File(rootDirectory+"NewClassCreator.java"))).start();
new BCELifier(new ClassParser(rootDirectory+"IfStatement.class").parse(), new FileOutputStream(new File(rootDirectory+"IfStatementCreator.java"))).start();
} catch (ClassFormatException | IOException e) {
e.printStackTrace();
}
}
}

Binary file not shown.

Binary file not shown.

@@ -1,8 +0,0 @@
package bcelifier;
public class Lambda1 {
Runnable methode(){
return ()->System.out.println(this);
}
}

@@ -1,10 +0,0 @@
package bcelifier;
public class LocalVarAccess {
Integer methode(Integer i){
Integer var;
var = 10 + i;
return var;
}
}

@@ -1,61 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class LocalVarAccessCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public LocalVarAccessCreator() {
_cg = new ClassGen("bcelifier.LocalVarAccess", "java.lang.Object", "LocalVarAccess.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.LocalVarAccess", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, new ObjectType("java.lang.Integer"), new Type[] { new ObjectType("java.lang.Integer") }, new String[] { "arg0" }, "methode", "bcelifier.LocalVarAccess", il, _cp);
InstructionHandle ih_0 = il.append(new PUSH(_cp, 10));
il.append(_factory.createLoad(Type.OBJECT, 1));
il.append(_factory.createInvoke("java.lang.Integer", "intValue", Type.INT, Type.NO_ARGS, Constants.INVOKEVIRTUAL));
il.append(InstructionConstants.IADD);
il.append(_factory.createInvoke("java.lang.Integer", "valueOf", new ObjectType("java.lang.Integer"), new Type[] { Type.INT }, Constants.INVOKESTATIC));
il.append(_factory.createStore(Type.OBJECT, 2));
InstructionHandle ih_11 = il.append(_factory.createLoad(Type.OBJECT, 2));
InstructionHandle ih_12 = il.append(_factory.createReturn(Type.OBJECT));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.LocalVarAccessCreator creator = new bcelifier.LocalVarAccessCreator();
creator.create(new FileOutputStream("bcelifier.LocalVarAccess.class"));
}
}

Binary file not shown.

@@ -1,12 +0,0 @@
package bcelifier;
public class MethodCall {
void methode(){
}
void methode2(Runnable r){
methode();
r.run();
}
}

@@ -1,70 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class MethodCallCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public MethodCallCreator() {
_cg = new ClassGen("bcelifier.MethodCall", "java.lang.Object", "MethodCall.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
createMethod_2();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.MethodCall", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, Type.VOID, Type.NO_ARGS, new String[] { }, "methode", "bcelifier.MethodCall", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_2() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, Type.VOID, new Type[] { new ObjectType("java.lang.Runnable") }, new String[] { "arg0" }, "methode2", "bcelifier.MethodCall", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("bcelifier.MethodCall", "methode", Type.VOID, Type.NO_ARGS, Constants.INVOKEVIRTUAL));
InstructionHandle ih_4 = il.append(_factory.createLoad(Type.OBJECT, 1));
il.append(_factory.createInvoke("java.lang.Runnable", "run", Type.VOID, Type.NO_ARGS, Constants.INVOKEINTERFACE));
InstructionHandle ih_10 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.MethodCallCreator creator = new bcelifier.MethodCallCreator();
creator.create(new FileOutputStream("bcelifier.MethodCall.class"));
}
}

@@ -1,10 +0,0 @@
package bcelifier;
public class NewClass {
public NewClass(Integer i){}
void methode2(){
new NewClass(1);
}
}

@@ -1,60 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class NewClassCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public NewClassCreator() {
_cg = new ClassGen("bcelifier.NewClass", "java.lang.Object", "NewClass.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, new Type[] { new ObjectType("java.lang.Integer") }, new String[] { "arg0" }, "<init>", "bcelifier.NewClass", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, Type.VOID, Type.NO_ARGS, new String[] { }, "methode2", "bcelifier.NewClass", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createNew("bcelifier.NewClass"));
il.append(InstructionConstants.DUP);
il.append(new PUSH(_cp, 1));
il.append(_factory.createInvoke("java.lang.Integer", "valueOf", new ObjectType("java.lang.Integer"), new Type[] { Type.INT }, Constants.INVOKESTATIC));
il.append(_factory.createInvoke("bcelifier.NewClass", "<init>", Type.VOID, new Type[] { new ObjectType("java.lang.Integer") }, Constants.INVOKESPECIAL));
il.append(InstructionConstants.POP);
InstructionHandle ih_12 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.NewClassCreator creator = new bcelifier.NewClassCreator();
creator.create(new FileOutputStream("bcelifier.NewClass.class"));
}
}

@@ -1,7 +0,0 @@
package bcelifier;
public class Null {
Integer i = null;
}

@@ -1,53 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class NullCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public NullCreator() {
_cg = new ClassGen("bcelifier.Null", "java.lang.Object", "Null.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createFields();
createMethod_0();
_cg.getJavaClass().dump(out);
}
private void createFields() {
FieldGen field;
field = new FieldGen(0, new ObjectType("java.lang.Integer"), "i", _cp);
_cg.addField(field.getField());
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.Null", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(InstructionConstants.ACONST_NULL);
il.append(_factory.createFieldAccess("bcelifier.Null", "i", new ObjectType("java.lang.Integer"), Constants.PUTFIELD));
InstructionHandle ih_9 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.NullCreator creator = new bcelifier.NullCreator();
creator.create(new FileOutputStream("bcelifier.Null.class"));
}
}

Binary file not shown.

@@ -1,8 +0,0 @@
package bcelifier;
public class This {
This methode(){
return this;
}
}

@@ -1,55 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class ThisCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public ThisCreator() {
_cg = new ClassGen("bcelifier.This", "java.lang.Object", "This.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createMethod_0();
createMethod_1();
_cg.getJavaClass().dump(out);
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.This", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
private void createMethod_1() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(0, new ObjectType("bcelifier.This"), Type.NO_ARGS, new String[] { }, "methode", "bcelifier.This", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
InstructionHandle ih_1 = il.append(_factory.createReturn(Type.OBJECT));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.ThisCreator creator = new bcelifier.ThisCreator();
creator.create(new FileOutputStream("bcelifier.This.class"));
}
}

@@ -1,5 +0,0 @@
package bcelifier;
public class Wildcard<A> {
Wildcard<? super String> a;
}

@@ -1,50 +0,0 @@
package bcelifier;
import org.apache.commons.bcel6.generic.*;
import org.apache.commons.bcel6.classfile.*;
import org.apache.commons.bcel6.*;
import java.io.*;
public class WildcardCreator implements Constants {
private InstructionFactory _factory;
private ConstantPoolGen _cp;
private ClassGen _cg;
public WildcardCreator() {
_cg = new ClassGen("bcelifier.Wildcard", "java.lang.Object", "Wildcard.java", ACC_PUBLIC | ACC_SUPER, new String[] { });
_cp = _cg.getConstantPool();
_factory = new InstructionFactory(_cg, _cp);
}
public void create(OutputStream out) throws IOException {
createFields();
createMethod_0();
_cg.getJavaClass().dump(out);
}
private void createFields() {
FieldGen field;
field = new FieldGen(0, new ObjectType("bcelifier.Wildcard"), "a", _cp);
_cg.addField(field.getField());
}
private void createMethod_0() {
InstructionList il = new InstructionList();
MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] { }, "<init>", "bcelifier.Wildcard", il, _cp);
InstructionHandle ih_0 = il.append(_factory.createLoad(Type.OBJECT, 0));
il.append(_factory.createInvoke("java.lang.Object", "<init>", Type.VOID, Type.NO_ARGS, Constants.INVOKESPECIAL));
InstructionHandle ih_4 = il.append(_factory.createReturn(Type.VOID));
method.setMaxStack();
method.setMaxLocals();
_cg.addMethod(method.getMethod());
il.dispose();
}
public static void main(String[] args) throws Exception {
bcelifier.WildcardCreator creator = new bcelifier.WildcardCreator();
creator.create(new FileOutputStream("bcelifier.Wildcard.class"));
}
}

@@ -1,76 +0,0 @@
\begin{thebibliography}{CMP00}
\bibitem[B{\"a}u05]{JB05}
J{\"o}rg B{\"a}uerle.
\newblock {\em Typinferenz in \textsf{Java}}.
\newblock Studienarbeit, BA Stuttgart/Horb, 2005.
\newblock (in german).
\bibitem[CMP00]{CMP2000}
Emmanuel Chailloux, Pascal Manoury, and Bruno Pagano.
\newblock {\em D\'eveloppement d'applications avec Objective Caml}.
\newblock O'Reilly, avril 2000.
\newblock in french, translation http://caml.inria.fr/oreilly-book.
\bibitem[Lit98]{VL98}
Vassily Litvinov.
\newblock Constraint-based polymorphism in {Cecil}: Towards a practical and
static type system.
\newblock In {\em {OOPSLA} '98 Conference Proceedings}, volume 33(10), pages
388--411, 1998.
\bibitem[Mel05]{MM05}
Markus Melzer.
\newblock {\em Integration der \textsf{Java}--Typeinferenz in eine
Programmierumgebung}.
\newblock Studienarbeit, BA Stuttgart/Horb, 2005.
\newblock Studienarbeit (in german).
\bibitem[Ode02]{MO02}
Martin Odersky.
\newblock Inferred type instantiation for {GJ}.
\newblock Note sent to the types mailing list, January 2002.
\bibitem[Ott04]{TO04}
Thomas Ott.
\newblock {\em Typinferenz in \textsf{Java}}.
\newblock Studienarbeit, BA Stuttgart/Horb, 2004.
\newblock (in german).
\bibitem[OZZ01]{OZZ01}
Martin Odersky, Christoph Zenger, and Matthias Zenger.
\newblock Colored local type inference.
\newblock {\em ACM SIG{\-}PLAN Notices}, 36(3):41--53, 2001.
\bibitem[PC94]{PC94}
John Plevyak and Andrew~A. Chien.
\newblock Precise concrete type inference for object-oriented languages.
\newblock In {\em Proceedings of the ninth annual conference on Object-oriented
programming systems, language, and applications}, pages 324--340. ACM Press,
1994.
\bibitem[Pl{\"u}04]{Plue04_1}
Martin Pl{\"u}micke.
\newblock Type unification in \textsf{Generic--Java}.
\newblock In Michael Kohlhase, editor, {\em Proceedings of 18th {I}nternational
{W}orkshop on {U}nification ({U}{N}{I}{F}'04)}, July 2004.
\newblock {\tt http://www.faculty.iu-bremen.de/mkohlhase/event/unif04}.
\bibitem[PS91]{PS91}
Jens Palsberg and Michael~I. Schwartzbach.
\newblock Object-oriented type inference.
\newblock {\em Proceedings of OOPSLA'91, ACM SIGPLAN Sixth Annual Conference on
Object-Oriented Programming Systems, Languages and Applications}, pages
146--161, October 1991.
\bibitem[PS94]{PS94}
Jens Palsberg and Michael~I. Schwartzbach.
\newblock {\em Object-oriented type systems}.
\newblock John Wiley \& Sons, 1994.
\bibitem[PT00]{PT00}
Benjamin~C. Pierce and David~N. Turner.
\newblock Local type inference.
\newblock {\em ACM Trans. Program. Lang. Syst.}, 22(1):1--44, 2000.
\end{thebibliography}

Binary file not shown.

@@ -1,140 +0,0 @@
\documentclass[11pt]{article}
\setlength{\unitlength}{1 true cm}
\setlength{\oddsidemargin}{0 true mm}
\setlength{\evensidemargin}{\oddsidemargin}
\setlength{\textwidth}{160 true mm}
\setlength{\parindent}{5 true mm}
\setlength{\topmargin}{1 true mm}
\setlength{\headheight}{12 true pt}
\setlength{\headsep}{20 true pt}
\setlength{\textheight}{240 true mm}
\setlength{\footskip}{15 true mm}
\setlength{\voffset}{-10 true mm}
%\setlength{\footheight}{5 true mm}
\usepackage{prolog}
\title{Type--Inference in \javafive}
\author{J\"org B\"auerle, Markus Melzer, Martin Pl\"umicke\medskip\\
\small
University of Cooperative Education Stuttgart\\
%Department of Information Technology\\
%Florianstra{\ss}e 15\\
%D--72160 Horb\\
%tel. +49-7451-521142\\
%fax. +49-7451-521190\\
\small m.pluemicke@ba-horb.de
}
\begin{document}
\bibliographystyle{alpha}
\maketitle
\section{Overview}
We have developed for \javafive a type inference system. This means that the
user can write programs without any type annotations and the system determines
the correct types. We have implemented a prototype for this
system. Furthermore we have implemented a plugin for the integrated development
environment \eclipse.
\section{The Type Inference Algorithm}
Since then type inference in \oldjava similar languages is known as the
automatic parameter instantiation in polymorphic methods (local type inference)
\cite{PT00,OZZ01,MO02}. It is proved that this type inference is
unsound. Some techniques are presented, which solve these unsoundness.
We extend these approaches to a global variant, where additionally
the types of method parameters, methods' return types and the
types of local variables are determined automatically. The input of the algorithm
are only the types of the fields of the respective classes.
The type inference algorithm traverses the programming code as an abstract syntax
tree and forms sets of type inequations. As it is known that even the local
type inference is unsound, it is obvious that our approach is also unsound. We
deal with this problem, as we allow different type assumptions for the
parameters, the return type, the local variables, and the expressions of each
method, respectively. During traversing the set of type assumptions is adapted, such
that the set contains exactly the assumptions, which are possible assumptions at
the respective position during the traverse. The adaption is done by solving the
inequations as far as possible by a type unification algorithm
\cite{Plue04_1}. The type unification is not unitary but finitary. This means
that each unification step reduces the set of type assumptions if there is no
solution for one set of inequations. On the other hand the set of type assumptions is extended, if
there is more than one solution for a set of inequations.
The result of the type inference algorithm is the set of all correct
combinations of types of the parameters, the return type, and the local
variables.
After the type inference step during the compilation, there are two possibilities. Either for each
combination of types of each method, byte code could be built,
respectively. This would lead to the property that method names, which are
declared only once, could be overloaded.
On the other hand one combination could
be selected. Then, for this combination of types byte code would be built. We
implemented the second possibility (cp. section \ref{sec:IDE}).
Furthermore, we have done comparisons to other type inference
approaches. We considered the
type system of \textsf{Cecil} \cite{VL98}, which is a static type system
providing type checking and local type inference. Furthermore we considered a
type system for a language oriented at \textsf{Smalltalk} \cite{PS91,
PS94}. In this approach the types are computed by a least fixed point derivation.
In \cite{PC94} type inference for the language \textsf{Concurrent Aggregates} is
described, which contains a data flow analysis. Finally, we considered the type
system of \textsf{ocaml} \cite{CMP2000}. The approach of this type system
differs from our's, as \textsf{ocaml} allows higher-order functions.
\section{Implementation}
We have done the implementation in \oldjava. The implementation consists of two
parts. First we describe the implementation of the type unification
algorithm. Then we present the implementation of the actual type inference via
code traverse.
\subsection{Type Unification}
The implementation of the type unification \cite{TO04} contains as the main
datastructure a Menge of type term pairs. The algorithm itself is
implemented as an extension of the usual unification algorithm. Pairs of
the form $a \olsub ty$ respectively $ty \olsub a$, where $a$ is a variable and
$ty$ is a term but no variable, generate multiple solutions.
\subsection{Type Inference}
The idea of the implementation of the actual type inference algorithm
\cite{JB05} is that each construct in a \javafive program (method, parameter,
return type, variable,
expression) get first a variable as its type assumption. Then, for each variable a
type is determined by the algorithm.
There are two main datastructures.
The first one represents type assumptions for methods, fields, and
variables. During runtime a set of instances of this
datastructure represent the different possibilities of type assumptions. The
second main datastructure represents the substitutions of the variables to types,
calculated step by step.
During runtime each construct of the abstract syntax tree is registered
as a listener by the corresponding type variable. These registrations finally allow
to substitute the variables in the abstract syntax tree by the
calculated types.
\section{Integrated Development Environment (IDE)}
\label{sec:IDE}
For \javafive without explicite type declaration a plugin for \eclipse is
developed \cite{MM05}. The IDE allows to show all different correct
possibilities to give types to the methods, parameters, return types, and local
variables, which are determined by the type inference algorithm. Then, the user
can select the favored type for each construct step by step. Finally, the
selected types are substituted in the respective constructs of the abstract syntax
tree.
\section{Summary and Outlook}
We have developed a system, which allows to give typeless \javafive
programs. The system calculates the correct types. The soundness problem is
solved such that all different possibilities are determined and the user
himself decides, which type should be used.
In the moment only a subset of \javafive is implemented. Interfaces and
F--bounded type parameters are not implemented yet. This should be done
henceforth.
\bibliography{martin,SE}
\end{document}

File diff suppressed because it is too large Load Diff

@@ -1,708 +0,0 @@
\usepackage{float}
\usepackage{color}
\usepackage{xspace_spezial}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{alltt}
\usepackage{fancybox}
\usepackage{stmaryrd}
\usepackage{verbatim}
\usepackage{epsfig}
\usepackage{multicol}
\newlength{\textwid}
\setlength{\textwid}{\textwidth}
\addtolength{\textwid}{-4ex}
\newlength{\textfighei}
\setlength{\textfighei}{\textheight}
\addtolength{\textfighei}{-10ex}
\DeclareSymbolFont{blackboard}{OT1}{bbm}{m}{sl}
\DeclareMathSymbol{\IR}{0}{blackboard}{"52}
\DeclareMathSymbol{\IN}{0}{blackboard}{"4E}
\DeclareMathSymbol{\IF}{0}{blackboard}{"46}
\DeclareMathSymbol{\IP}{0}{blackboard}{"50}
\DeclareMathSymbol{\IK}{0}{blackboard}{"4D}
\DeclareMathSymbol{\IZ}{0}{blackboard}{"5A}
\DeclareMathSymbol{\IQ}{0}{blackboard}{"51}
\DeclareMathSymbol{\IC}{0}{blackboard}{"43}
\parindent 0mm
\renewcommand{\unlhd}{<}
%\renewcommand{\lhd}{<\!\!|}
%\renewcommand{\rhd}{|\!\!>}
\definecolor{blue}{rgb}{0,0,1}
\definecolor{red}{rgb}{1,0,0}
\definecolor{green}{rgb}{0,1,0.3}
\definecolor{bluered}{rgb}{1,0,1}
\definecolor{bluegreen}{rgb}{1,0.3,0}
\newcommand{\red}[1]{\textcolor{red}{#1}}
\newcommand{\blue}[1]{\textcolor{blue}{#1}}
\newcommand{\green}[1]{\textcolor{green}{#1}}
\newcommand{\bluered}[1]{\textcolor{bluered}{#1}}
\newcommand{\bluegreen}[1]{\textcolor{bluegreen}{#1}}
\reversemarginpar
\newcommand{\commentary}[1]{\marginpar[\tiny #1]{\tiny #1}}
%\newcommand{\commentaryforKlaeren}[1]{\marginpar[\tiny #1]{\tiny #1}}
%\newcommand{\commentary}[1]{}
\newcommand{\commentaryforKlaeren}[1]{}
%
% figure - Einstellungen
%
\def\textfraction{0}
\def\topfraction{1.5}
\def\bottomfraction{1}
\def\floatpagefraction{1.0}
%\def\dbltopfraction{1}
%\def\dblfloatpagefraction{1.0}
\newcommand{\indexentry}[2]{\item[] #1 \dotfill #2\qquad\qquad\vspace{-0.8em}}
\newcommand{\sub}{\textrm{\,$\sqsubseteq$\,}\xspace}
\newcommand{\nsub}{\text{\,$\not\sqsubseteq$\,}\xspace}
\newcommand{\ecap}{\mbox{$\,\sqcap\,$}}
\newcommand{\ecup}{\mbox{$\,\sqcup\,$}}
\newcommand{\pre}{\mbox{$\,\preceq\,$}}
\newcommand{\botam}{{\{\, \bot,\ \amalg \,\}}\xspace}
%
% Substitutions
%
\newcommand{\subst}{\textrm{$\expbf{subst}{\normaltset}$}}
%
% Signaturen
%
\def\einf#1#2{\mbox{$(#1,~#2)$}\xspace}
\newcommand{\sig}{\einf{\normalbtermset}{\Theta}}
\newcommand{\typesig}{\einf{BTV}{TC}\xspace}
\newcommand{\einsig}{\einf{\normaltermset}{F}\xspace}
\newcommand{\msig}{\einsig}
\newcommand{\mssig}{\einf{\equivtermset}{F_{ms}}\xspace}
\newcommand{\ossig}{\einf{\normaltset, \sub}{F_{os}}\xspace}
\def\einfm#1#2{\langle #1,\ #2 \rangle}
%\def\pos#1#2{\einf{#1,\ \sqsubseteq}{#2}}
\def\pos#1#2#3{\einf{#1,\ #2}{#3}}
\def\posm#1#2{\pos{#1}{#2}}
\def\posSO#1{\pos{#1}{F}}
\def\posSIG#1{\pos{S}{#1}}
\newcommand{\posig}{\pos{\normaltset}{\olsub}{\Sigma}}
\newcommand{\posigM}{\pos{\normaltset}{\olsub}{M}}
%\newcommand{\posig}{\pos{S}{\Sigma}}
\newcommand{\overposig}{\pos{\overline{S}}{\overline{\Sigma}}}
\def\fsf#1#2#3{\mbox{$#1^{(#2,#3)}$}\xspace}
\def\Sigmaa#1#2{\fsf{F}{#1}{#2}\xspace}
\newcommand{\Sigmaws}{\Sigmaa{w}{s}}
\newcommand{\Sigmawt}{\Sigmaa{w}{\theta}}
\def\set#1{\{\,#1 \,\}}
\newcommand{\termset}[3]{\textrm{$\exp{#1_{#2}}{#3}$}\xspace}
\newcommand{\normaltset}{\termset{T}{\Theta}{TV}}
\newcommand{\normaltermset}{\termset{T}{\Theta}{TV}}
\newcommand{\normalbtermset}{\termset{T}{TC}{BTV}}
\newcommand{\equivtermset}{\textrm{$\exp{T_{\Theta_{\sim}}}{TV}$}\xspace}
\newcommand{\equiva}[1]{[#1]_{\sim}}
\newcommand{\popoSIG}[1]{\einf{\normaltset,~\sqsubseteq}{#1}}
\newcommand{\poposig}{\popoSIG{F}}
%\newcommand{\poss}{polymorphically order-sorted signature\xspace}
%\newcommand{\posa}{polymorphically order-sorted algebra\xspace}
\newcommand{\polyosalg}{\textrm{\rm \textbf{PolyOSAlg}$_{\SigO}$}}
\newcommand{\polyalg}{\textrm{\rm \textbf{PolyAlg}$_{\SigM}$}}
\newcommand{\SigO}{\textrm{$\Sigma_{\textit{os}}$}\xspace}
\newcommand{\FuO}{\textrm{$F$}\xspace}
\newcommand{\SigM}{\textrm{$\Sigma_{\textit{ms}}$}\xspace}
\newcommand{\FuM}{\textrm{$F$}\xspace}
\newcommand{\Sig}{\textrm{$\Sigma$}\xspace}
\newcommand{\SigE}{\textrm{$\Sigma_{\textit{ext}}$}\xspace}
\newcommand{\objprogram}{\textrm{$<\Sig, \, E>$}\xspace}
%
% Algebren
%
\let\oldsqsubseteq=\sqsubseteq
\renewcommand{\sqsubseteq}{\leq}
\def\alg#1#2{\textrm{{\rm (}$#1;#2${\rm )}}\xspace}
\def\algm#1#2{(#1;#2)}
\def\algME#1{\alg{#1}{\alpha}}
\def\algABB#1{\alg{A}{#1}}
\def\algebra{\alg{A}{\alpha}}
\def\termalg{\mbox{$\algm{T_{\text{\rm posig}}}{\iota}$}}
\def\termalgm#1{\algm{T_{\text{#1}}}{\iota_{\text{#1}}}}
\def\OStermsetvar#1{\textrm{$T_{\SigO}#1$}\xspace}
\def\OStermset{\OStermsetvar{(V)}}
\def\OStset{\OStermsetvar{}\xspace}
\def\OStermsettypevar#1#2{\textrm{$T^{#1}_{\SigO}#2$}\xspace}
\def\OStermsettype#1{\OStermsettypevar{#1}{(V)}}
\def\ops{\exp{Ops}{A}}
\def\exp#1#2{#1(\,#2\,)\xspace}
%\def\exptt#1#2{\exp{\text{\tt #1}}{\text{\tt #2}}}
\def\exptt#1#2{\exp{\mbox{$\mathtt{#1}$}}{\mbox{$\mathtt{#2}$}}}
\def\expsyn#1#2{\exp{\syn{#1}}{\syn{#2}}}
\def\expbf#1#2{\exp{\text{\bf #1}}{#2}}
\def\expsf#1#2{\exp{\text{\sf #1}}{#2}}
\def\exptype#1#2{#1\textrm{{\tt <}}#2\textrm{{\tt >}}\xspace}
\def\exptypett#1#2{\mathtt{#1}\textrm{{\tt <}}\mathtt{#2}\textrm{{\tt >}}\xspace}
\def\smalltt#1{\texttt{\small #1}}
\def\term{\textrm{$\exp{f}{t_1, \ \ldots \ ,t_n}$}\xspace}
\def\hverbandm#1#2{\textrm{$(#1,~#2)$}}
\def\partord#1#2{\hverbandm{#1}{#2}\xspace}
\def\eval#1{eval_{\left<#1\right>}\xspace}
\def\evalA{$\eval{\algm{A}{\alpha}}$\xspace}
\def\la#1#2{\mbox{$\lambda#1.#2$}\xspace}
\def\set#1{\{\, #1 \,\}}
\newcommand{\inletters}[1]{
\ifx\the
first
\fi}
%\newcommand{\olsub}{\textrm{$\, \ol{\sqsubseteq} \,$}\xspace}
\newcommand{\olsub}{\textrm{$\, \leq^\ast \,$}\xspace}
\newcommand{\olsubprime}{\textrm{$\, \ol{\sqsubseteq}' \,$}\xspace}
\newcommand{\nolsub}{\textrm{$\, \not\sqsubseteq^* \,$}\xspace}
\newcommand{\hverband}{\partord{S}{\sqsubseteq}\xspace}
\newcommand{\qverband}{\partord{\exp{\ol{T}_{\Theta}}{V}}{\olsub}}
\newcommand{\cloqverband}{\partord{\exp{T_{\Theta}}{V}}{\olsub}}
\newcommand{\hord}{\mbox{$(S,~\sqsubseteq)$}\xspace}
\def\einschr#1{|_{#1}}
%\newcommand{\lsem}{[\hspace*{-0.3ex}[}
%\newcommand{\rsem}{]\hspace*{-0.3ex}]}
\newcommand{\lsem}{\llbracket\hspace{.5ex}}
\newcommand{\rsem}{\hspace{.5ex}\rrbracket}
\newcommand{\lsemm}{\lsem}
\newcommand{\rsemm}{\rsem}
\newcommand{\semantic}[1]{\lsem #1 \rsem\xspace}
\newcommand{\ol}[1]{\overline{#1}}
\newcommand{\ul}[1]{\underline{#1}}
\newcommand{\dps}{\displaystyle}
\newcommand{\sema}[3]{{\cal #1}_{#2}\semantic{#3}}
\newcommand{\sem}[2]{\sema{#1}{}{#2}\xspace}
%
% Programming languages
%
\newcommand{\haskell}{\textsf{Haskell}\xspace}
\newcommand{\gofer}{\textsf{Gofer}\xspace}
\newcommand{\objp}{\mbox{\textsf{OBJ--P}}\xspace}
\newcommand{\java}{\mbox{\textsf{G--JAVA}}\xspace}
\newcommand{\oldjava}{\mbox{\textsf{JAVA}}\xspace}
\newcommand{\javafive}{\mbox{\textsf{JAVA 5.0}}\xspace}
\newcommand{\eclipse}{\mbox{\textsf{eclipse}}\xspace}
\newcommand{\pizza}{\mbox{\textsf{PIZZA}}\xspace}
\newcommand{\gj}{\mbox{\textsf{GJ}}\xspace}
\newcommand{\sml}{\mbox{\textsf{SML}}\xspace}
\newcommand{\ocaml}{\textsf{OCAML}}
\newcommand{\obj}{\mbox{\textsf{OBJ--3}}\xspace}
\newcommand{\objtwo}{\mbox{\textsf{OBJ--2}}\xspace}
\def\pot#1{{\cal P}(\, #1 \,)\xspace}
\def\partf{\overset{\text{\tiny part}}{\longrightarrow}\xspace}
%
% Deduktionssystem
%
\newcommand{\byrule}[1]{\raisebox{1.5ex}[0ex][0ex]{{{\rm [{\bf \small #1}]}}}}
\newcommand{\byruleok}[1]{\raisebox{1.5ex}[0ex][0ex]{{{\rm \small #1}}}}
\newcommand{\byrulewb}[1]{\raisebox{2.5ex}[0ex][0ex]{{{\rm [{\bf \small #1}]}}}}
\newcommand{\byruleokwb}[1]{\raisebox{2.5ex}[0ex][0ex]{{{\rm \small #1}}}}
\newcommand{\byrulesli}[1]{\raisebox{3.0ex}[0ex][0ex]{{{\rm [{\bf \small #1}]}}}}
\newcommand{\inter}[1]{\bigwedge \hspace{-.55em} \bigwedge_{#1}}
%
% ARRAY WITH ARGUMENTS
%
\newcommand{\sarray}[2]{\begin{array}[t]{#1} #2 \end{array}}
\newcommand{\sarrayt}[2]{\begin{array}[t]{#1} #2 \end{array}}
\newcommand{\sarrayb}[2]{\begin{array}[b]{#1} #2 \end{array}}
\newcommand{\sarrayo}[2]{\begin{array}{#1} #2 \end{array}}
%
% INFERENCE RULES
%
\newcommand{\byrulenew}[1]{\raisebox{2.1ex}[0ex][0ex]{{{\rm [{\bf \small #1}]}}}}
\newcommand{\postcond}[1]{\raisebox{2.1ex}[0ex][0ex]{#1}}
\newcommand{\lef}[1]{\multicolumn{1}{@{}l}{#1}}
\newcommand{\ri}[1]{\multicolumn{1}{r@{}}{#1}}
\newcommand{\ce}[1]{\multicolumn{1}{@{}c}{#1}}
\newcommand{\axiom}[2]{\textrm{[}\textbf{\small #1}\textrm{]} & \lef{#2}}
\newcommand{\irule}[4]{& \sarray{c}{#2}\vspace{1ex}\\\cline{2-2}
\vspace{-2ex}\\ \byrulenew{#1} & \sarray{c}{#3} & \postcond{$#4$}}
\newcommand{\irulealign}[6]{& \sarray{#2}{#3}\vspace{1ex}\\\cline{2-2}
\vspace{-2ex}\\ \byrulenew{#1} & \sarray{#4}{#5} & \postcond{$#6$}}
\newenvironment{irules}{$\begin{array}{lcl}}{\end{array}$}
%
% Kategorien
%
\newcommand{\funs}[1]{\mbox{$F^S_{ERR}$(\, #1 \,)}\xspace}
\newcommand{\funa}[1]{\mbox{$F^A_{ERR}$(\, #1 \,)}\xspace}
\newcommand{\funh}[1]{\mbox{$F^H_{ERR}(\, #1 \,)$}\xspace}
%
% Typherleitungen
%
%\let\oldrhd=\rhd
%\newcommand{\rder}{\hspace*{0.5ex} \rhd_{\textrm{\tiny $\Sig$}} \hspace{0.5ex}}
\newcommand{\rder}{\hspace*{0.5ex} \rhd \hspace{0.5ex}}
%\newcommand{\lder}{\hspace*{0.5ex} \lhd_{\textrm{\tiny $\Sig$}} \hspace*{0.5ex}}
\newcommand{\lder}{\hspace*{0.5ex} \lhd \hspace*{0.5ex}}
\newcommand{\rderStmt}{\hspace*{0.5ex} \rhd_{Stmt} \hspace*{0.5ex}}
\newcommand{\rderExpr}{\hspace*{0.5ex} \rhd_{Expr} \hspace*{0.5ex}}
\newcommand{\rderIdent}{\hspace*{0.5ex} \rhd_{Id} \hspace*{0.5ex}}
\let\oldblacktriangleright=\blacktriangleright
%\newcommand{\fder}{\hspace*{1ex} \textrm{$\blacktriangleright_{\textsl{\tiny \hspace{-1ex}\Sig}}$}}
\newcommand{\fder}{\hspace*{1ex} \textrm{$\blacktriangleright$}}
\newcommand{\newtheo}[3]{\newtheorem{#1}[defhalbordnung]{#2}
\begin{#1} {\rm #3} \label{#1} \end{#1}}
\newcommand{\der}[2]{\mbox{$#1 \rhd\ #2$}\xspace}
\newcommand{\derl}[2]{#1 \lhd_{\textrm{\tiny $\Sig$}} #2\xspace}
\newcommand{\derr}[2]{#1 \rhd_{\textrm{\tiny \hspace{-1ex}$\Sig$}} #2\xspace}
\newcommand{\derf}[3]{( \, #1, \, #2 \, ) \fder #3\xspace}
\newcommand{\deri}[1]{\der{A}{K}{#1}\xspace}
\newcommand{\derif}[1]{\derf{A}{K}{D}{#1}\xspace}
\newcommand{\arity}[3]{\textrm{$\alpha^{(#1,#2)}_{#3}$}\xspace}
\newcommand{\coarity}[2]{\textrm{$\beta^{(#1,#2)}$}\xspace}
\newcommand{\sodaprg}{\textrm{$(\,\textsl{csig},\ D\,)$\xspace}}
%
% Typen
%
\newcommand{\typ}[3]{\textrm{$ #1 \times \ldots \times #2 \rightarrow #3$}\xspace}
\newcommand{\syn}[1]{{\rm \texttt{\small #1}}}
\newcommand{\sigmatyp}{\typ{\sigma_1}{\sigma_n}{\sigma}\xspace}
\newcommand{\sigmadef}{\mbox{$\sigma_1 \times \ldots \times \sigma_n$}\xspace}
\newcommand{\tautyp}{\typ{\tau_1}{\tau_n}{\tau}\xspace}
\newcommand{\tautypsup}[1]{\typ{\tau^{#1}_1}{\tau^{#1}_n}{\tau^{#1}}\xspace}
\newcommand{\taudef}{\mbox{$\tau_1 \times \ldots \times \tau_n$}\xspace}
\newcommand{\thetatyp}{\typ{\theta_1}{\theta_n}{\theta_0}\xspace}
\newcommand{\type}{\text{$\text{TYPE}(\,S,\ V\,)$}\xspace}
\newcommand{\typea}{\text{$\text{TYPE}_T(\,S,\ V\,)$}\xspace}
\newcommand{\ptype}{{\rm \expsf{Type}{\normalbtermset}}\xspace}
\newcommand{\ptypea}{\text{$\text{TYPE}_T(\,\Theta,\ V\,)$}\xspace}
\newcommand{\types}{\text{$\text{TYPE}_s(\,S,\ \Gamma\,)$}\xspace}
\newcommand{\epsbox}[2]{
%\begin{center}
\setlength{\fboxsep}{4mm}
\fbox{\epsfxsize=#1 \epsfbox{#2}}
%\end{center}
}
\newcommand{\epsxybox}[3]{
\begin{minipage}[t]{#1}
\setlength{\fboxsep}{4mm}
\fbox{\epsfysize=#2 \epsfbox{#3}}
\end{minipage}}
\newenvironment{program}{\begin{alltt}\small}
{\normalsize\end{alltt}\vspace*{-1em}}
\floatstyle{plain}
\newfloat{soda}{htp}{lop}
\floatname{soda}{SODA-Program}
%\sodaprog
% 1. width
% 2. figure
% 3. file
\newcommand{\sodaprog}[3]{
\begin{figure}%[#2]
%\begin{center}
\begin{Sbox}
\begin{minipage}{#1}
\small
\begin{alltt}
\verbatiminput{#3.soda}
\end{alltt}
\normalsize
\end{minipage}
\end{Sbox}
\setlength{\fboxsep}{2mm}
\fbox{\TheSbox}
%\end{center}
\caption{SODA module \texttt{#3}}
\label{fig:#3}
\end{figure}
}
%
% Theorem
%
\newcommand{\QED}{\rule{1.1ex}{1.1ex}}
%\newenvironment{proof}{\par \bigskip \noindent {\bf Proof:}
% }{\mbox{ } \hfill \QED \par \smallskip}
%\newenvironment{remark}{\par \bigskip \noindent {\bf Remark}
% }{\par \smallskip}
%\newtheorem{definition}{Definition}[section]
%\newtheorem{example}[definition]{Example}
%\newtheorem{theorem}[definition]{Theorem}
%\newtheorem{corollary}[definition]{Corollary}
%\newtheorem{lemma}[definition]{Lemma}
%\newtheorem{algorithm}[definition]{Algorithm}
%\newenvironment{abstract}{\small \begin{center} {\bf Abstract}\\[2ex]
%\begin{minipage}{0.85\textwidth}}{\end{minipage} \end{center}}
\newenvironment{Zusammenfassung}{\small \begin{center} {\bf Zusammenfassung}\\[2ex]
\begin{minipage}{0.85\textwidth}}{\end{minipage} \end{center}}
\newlength{\level}
\newlength{\wid}
%\newcommand{\thelb}{
\def\notunlhd{\mathrel{\unlhd\!\!\!\!\!\mid}}
\def\In#1#2{#1 \! \in \! #2}
\def\Leq#1#2#3{#1 \! \leqslant \! #2 \! \leqslant \! #3}
\def\Lequ#1#2#3{#1 \leqslant #2 \leqslant #3}
\newcommand{\ma}[1]{\text{``}#1\text{''}\xspace}
\newcommand{\ttm}[1]{\mbox{\tt #1}\xspace}
\newcommand{\ret}[2]{\ttm{r}^{\ttm{\footnotesize #1}}_{\ttm{\footnotesize #2}}\xspace}
\newcommand{\retm}[2]{\ttm{r}^{#1}_{#2}\xspace}
\newcommand{\re}[2]{\displaystyle r^{#1}_{#2}\xspace}
\newlength{\qwert}
%\newcommand{\htext}[1]{\settowidth{\qwert}{#1} \addtolength{\qwert}{-0.65ex} \hspace*{\qwert}}
\newcommand{\htext}[1]{\settowidth{\qwert}{#1} \hspace*{\qwert}}
\newcommand{\leng}[1]{\settowidth{\qwert}{#1} \qwert}
\newcommand{\ldo}{, \ldots , }
%
% Algorithmus
%
\newcommand{\nll}{\newline\hspace*{\level}}
\newcommand{\nlevel}{\addtolength{\level}{0.4cm}}
\newcommand{\llevel}{\addtolength{\level}{-0.4cm}}
\newcommand{\ifc}[1]{\textbf{if} \nlevel #1 \llevel}
\newcommand{\elsifc}[1]{\textbf{elsif} \nlevel #1 \llevel}
\newcommand{\foreachc}[2]{\textbf{foreach} #1 \nlevel #2 \llevel}
\newcommand{\thenc}[1]{\textbf{then} \nlevel #1 \llevel}
\newcommand{\ifthenc}[2]{\textbf{if} #1 \textbf{then} \nlevel #2 \llevel}
\newcommand{\elsec}[1]{\textbf{else} \nlevel #1 \llevel}
\newcommand{\eifc}{\textbf{endif}\\}
\newcommand{\casec}[2]{\fbox{\textbf{case} #1}\ \nlevel \nlevel #2 \llevel \llevel}
\newcommand{\letc}[2]{\textbf{let} \nlevel \\ #1 = \nlevel #2 \llevel \llevel}
\newcommand{\letbf}[1]{\textbf{let} \nlevel \\ #1 \llevel}
\newcommand{\inc}[1]{\textbf{in} \nlevel #1 \llevel \nopagebreak\\ \textbf{end}}
\newcommand{\lam}[2]{\textbf{fn } #1 \textrm{$\, \Rightarrow \,$} #2}
\newcommand{\inputc}[1]{\nll \textbf{Input:} \nlevel #1 \llevel}
\newcommand{\outputc}[1]{\nll \textbf{Output:} \nlevel #1 \llevel}
%\newcommand{\letforeachc}[3]{\textbf{let-foreach} \nlevel #1:\\ \ul{#2} = \nlevel #3 \llevel \llevel}
\newcommand{\letforeachc}[3]{\textbf{let-foreach} \nlevel #1:\\ #2 = \nlevel #3 \llevel \llevel}
%\newcommand{\letuc}[2]{\textbf{let} \nlevel \\ \ul{#1} = \nlevel #2 \llevel \llevel}
\newcommand{\letuc}[2]{\textbf{let} \nlevel \\ #1 = \nlevel #2 \llevel \llevel}
\newcommand{\letoeq}[3]{\textbf{let} \nlevel \\ #1 #2 \nlevel #3 \llevel \llevel}
\newcommand{\letoeqol}[3]{\nlevel \\ #1 #2 \nlevel #3 \llevel \llevel}
%\newcommand{\letu}[2]{\nlevel\\ \ul{#1} = \nlevel #2 \llevel\llevel}
\newcommand{\letu}[2]{\nlevel\\ #1 = \nlevel #2 \llevel\llevel}
\newcommand{\letnc}[2]{\nlevel\\ #1 = \nlevel #2 \llevel\llevel}
\newcommand{\misc}[1]{\nlevel\\ #1 \llevel}
\newcommand{\least}{\textrm{$\top$}\xspace}
\newenvironment{algocommands}{
\setlength{\level}{2mm}
\renewcommand{\\}{\nll}
\noindent
}{\renewcommand{\\}{\newline}
\vspace{1ex}
}
\newenvironment{algo}{\begin{algorithm} \rm %\mbox{}\\
\begin{algocommands}
}{\end{algocommands}
\end{algorithm}
}
\newenvironment{boxedalgo}{
\begin{Sbox}
\begin{minipage}{\textwid}
\begin{algo}
}{\end{algo}
\end{minipage}
\end{Sbox}
\fbox{\TheSbox}
}
\newenvironment{Liste}{\begin{list}{\textbf{--}}{
\setlength{\parsep}{0pt plus0.0ex}
\setlength{\labelwidth}{2ex}
\setlength{\itemsep}{0pt}
\setlength{\leftmargin}{\labelsep +\labelwidth}
}}{\normalsize \end{list}}
\newcounter{ficall}
\setcounter{ficall}{0}
\newcommand{\ficall}[1]{\addtocounter{ficall}{1}\subsubsection*{(\theficall) \
#1}
\setcounter{secall}{0}
\setcounter{thicall}{0}
\setcounter{focall}{0}
\setcounter{fifcall}{0}
\setcounter{sixcall}{0}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\reficall}[1]{\subsubsection*{(\theficall) \
#1}}
\newcounter{fifinum}
\newcommand{\finumset}{\setcounter{fifinum}{\value{ficall}}}
\newcommand{\finum}{\thefifinum}
\newcounter{fifinumold}
\newcommand{\finumoldset}{
\setcounter{fifinumold}{\value{fifinum}}
}
\newcommand{\finumold}{\thesefinumold}
\newcounter{secall}
\setcounter{secall}{0}
\newcounter{sefinum}\newcounter{sesenum}
\newcommand{\senumset}{\setcounter{sefinum}{\value{ficall}}\setcounter{sesenum}{\value{secall}}}
\newcommand{\secall}[1]{\addtocounter{secall}{1}\subsubsection*{(\theficall.\thesecall) \ #1}
\setcounter{thicall}{0}
\setcounter{focall}{0}
\setcounter{fifcall}{0}
\setcounter{sixcall}{0}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\resecall}[1]{\subsubsection*{(\theficall.\thesecall) \ #1}}
\newcommand{\senum}{\thesefinum.\thesesenum}
\newcounter{sefinumold}
\newcounter{sesenumold}
\newcommand{\senumoldset}{
\setcounter{sefinumold}{\value{sefinum}}
\setcounter{sesenumold}{\value{sesenum}}
}
\newcommand{\senumold}{\thesefinumold.\thesesenumold}
\newcounter{thicall}
\setcounter{thicall}{0}
\newcounter{thifinum}\newcounter{thisenum}\newcounter{thithinum}
\newcommand{\thinumset}{\setcounter{thifinum}{\value{ficall}}\setcounter{thisenum}{\value{secall}}\setcounter{thithinum}{\value{thicall}}}
\newcommand{\thicall}[1]{\addtocounter{thicall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall) \ #1}
\setcounter{focall}{0}
\setcounter{fifcall}{0}
\setcounter{sixcall}{0}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\rethicall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall) \ #1}}
\newcommand{\thinum}{\thethifinum.\thethisenum.\thethithinum}
\newcounter{focall}
\setcounter{focall}{0}
\newcounter{fofinum}\newcounter{fosenum}\newcounter{fothinum}\newcounter{fofonum}
\newcommand{\focall}[1]{\addtocounter{focall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall) \ #1}
\setcounter{fifcall}{0}
\setcounter{sixcall}{0}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\fonumset}{\setcounter{fofinum}{\value{ficall}}\setcounter{fosenum}{\value{secall}}\setcounter{fothinum}{\value{thicall}}\setcounter{fofonum}{\value{focall}}}
\newcommand{\fonum}{\thefofinum.\thefosenum.\thefothinum.\thefofonum}
\newcommand{\refocall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall) \ #1}}
\newcounter{fifcall}
\setcounter{fifcall}{0}
\newcommand{\fifcall}[1]{\addtocounter{fifcall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall) \ #1}
\setcounter{sixcall}{0}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcounter{fiffinum}\newcounter{fifsenum}\newcounter{fifthinum}\newcounter{fiffonum}\newcounter{fiffifnum}
\newcommand{\fifnumset}{\setcounter{fiffinum}{\value{ficall}}\setcounter{fifsenum}{\value{secall}}\setcounter{fifthinum}{\value{thicall}}\setcounter{fiffonum}{\value{focall}}\setcounter{fiffifnum}{\value{fifcall}}}
\newcommand{\fifnum}{\thefiffinum.\thefifsenum.\thefifthinum.\thefiffonum.\thefiffifnum}
\newcommand{\refifcall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall) \ #1}}
\newcounter{fiffinumold}
\newcounter{fifsenumold}
\newcounter{fifthinumold}
\newcounter{fiffonumold}
\newcounter{fiffifnumold}
\newcommand{\fifnumoldset}{
\setcounter{fiffinumold}{\value{fiffinum}}
\setcounter{fifsenumold}{\value{fifsenum}}
\setcounter{fifthinumold}{\value{fifthinum}}
\setcounter{fiffonumold}{\value{fiffonum}}
\setcounter{fiffifnumold}{\value{fiffifnum}}
}
\newcommand{\fifnumold}{\thefiffinumold.\thefifsenumold.\thefifthinumold.\thefiffonumold.\thefiffifnumold}
\newcounter{fiffinumoldold}
\newcounter{fifsenumoldold}
\newcounter{fifthinumoldold}
\newcounter{fiffonumoldold}
\newcounter{fiffifnumoldold}
\newcommand{\fifnumoldoldset}{
\setcounter{fiffinumoldold}{\value{fiffinum}}
\setcounter{fifsenumoldold}{\value{fifsenum}}
\setcounter{fifthinumoldold}{\value{fifthinum}}
\setcounter{fiffonumoldold}{\value{fiffonum}}
\setcounter{fiffifnumoldold}{\value{fiffifnum}}
}
\newcommand{\fifnumoldold}{\thefiffinumoldold.\thefifsenumoldold.\thefifthinumoldold.\thefiffonumoldold.\thefiffifnumoldold}
\newcounter{sixcall}
\setcounter{sixcall}{0}
\newcommand{\sixcall}[1]{\addtocounter{sixcall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall) \ #1}
\setcounter{sevcall}{0}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcounter{sixfinum}
\newcounter{sixsenum}
\newcounter{sixthinum}
\newcounter{sixfonum}
\newcounter{sixfifnum}
\newcounter{sixsixnum}
\newcommand{\sixnumset}{
\setcounter{sixfinum}{\value{ficall}}
\setcounter{sixsenum}{\value{secall}}
\setcounter{sixthinum}{\value{thicall}}
\setcounter{sixfonum}{\value{focall}}
\setcounter{sixfifnum}{\value{fifcall}}
\setcounter{sixsixnum}{\value{sixcall}}
}
\newcommand{\sixnum}{\thesixfinum.\thesixsenum.\thesixthinum.\thesixfonum.\thesixfifnum.\thesixsixnum}
\newcommand{\resixcall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall) \ #1}}
\newcounter{sevcall}
\setcounter{sevcall}{0}
\newcommand{\sevcall}[1]{\addtocounter{sevcall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall) \ #1}
\setcounter{eigcall}{0}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcounter{sevfinum}
\newcounter{sevsenum}
\newcounter{sevthinum}
\newcounter{sevfonum}
\newcounter{sevfifnum}
\newcounter{sevsixnum}
\newcounter{sevsevnum}
\newcommand{\sevnumset}{
\setcounter{sevfinum}{\value{ficall}}
\setcounter{sevsenum}{\value{secall}}
\setcounter{sevthinum}{\value{thicall}}
\setcounter{sevfonum}{\value{focall}}
\setcounter{sevfifnum}{\value{fifcall}}
\setcounter{sevsixnum}{\value{sixcall}}
\setcounter{sevsevnum}{\value{sevcall}}
}
\newcommand{\sevnum}{\thesevfinum.\thesevsenum.\thesevthinum.\thesevfonum.\thesevfifnum.\thesevsixnum.\thesevsevnum}
\newcommand{\resevcall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall) \ #1}}
\newcounter{eigcall}
\newcounter{eigfinum}\newcounter{eigsenum}\newcounter{eigthinum}\newcounter{eigfonum}\newcounter{eigfifnum}\newcounter{eigsixnum}\newcounter{eigsevnum}\newcounter{eigeignum}
\setcounter{eigcall}{0}
\newcommand{\eignumset}{\setcounter{eigfinum}{\value{ficall}}\setcounter{eigsenum}{\value{secall}}\setcounter{eigthinum}{\value{thicall}}\setcounter{eigfonum}{\value{focall}}\setcounter{eigfifnum}{\value{fifcall}}\setcounter{eigsixnum}{\value{sixcall}}\setcounter{eigsevnum}{\value{sevcall}}\setcounter{eigeignum}{\value{eigcall}}}
\newcommand{\eignum}{\theeigfinum.\theeigsenum.\theeigthinum.\theeigfonum.\theeigfifnum.\theeigsixnum.\theeigsevnum.\theeigeignum}
\newcommand{\eigcall}[1]{\addtocounter{eigcall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall) \ #1}
\setcounter{nicall}{0}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\reeigcall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall) \ #1}}
\newcounter{nicall}
\newcounter{nifinum}\newcounter{nisenum}\newcounter{nithinum}\newcounter{nifonum}\newcounter{nififnum}\newcounter{nisixnum}\newcounter{nisevnum}\newcounter{nieignum}\newcounter{nininum}
\setcounter{nicall}{0}
\newcommand{\ninumset}{\setcounter{nifinum}{\value{ficall}}\setcounter{nisenum}{\value{secall}}\setcounter{nithinum}{\value{thicall}}\setcounter{nifonum}{\value{focall}}\setcounter{nififnum}{\value{fifcall}}\setcounter{nisixnum}{\value{sixcall}}\setcounter{nisevnum}{\value{sevcall}}\setcounter{nieignum}{\value{eigcall}}\setcounter{nininum}{\value{nicall}}}
\newcommand{\ninum}{\thenifinum.\thenisenum.\thenithinum.\thenifonum.\thenififnum.\thenisixnum.\thenisevnum.\thenieignum.\thenininum}
\newcommand{\nicall}[1]{\addtocounter{nicall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall.\thenicall)
\ #1}
\setcounter{tencall}{0}
\setcounter{elecall}{0}
}
\newcommand{\renicall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall.\thenicall)
\ #1}}
\newcounter{nifinumold}
\newcounter{nisenumold}
\newcounter{nithinumold}
\newcounter{nifonumold}
\newcounter{nififnumold}
\newcounter{nisixnumold}
\newcounter{nisevnumold}
\newcounter{nieignumold}
\newcounter{nininumold}
\newcommand{\ninumoldset}{
\setcounter{nifinumold}{\value{nifinum}}
\setcounter{nisenumold}{\value{nisenum}}
\setcounter{nithinumold}{\value{nithinum}}
\setcounter{nifonumold}{\value{nifonum}}
\setcounter{nififnumold}{\value{nififnum}}
\setcounter{nisixnumold}{\value{nisixnum}}
\setcounter{nisevnumold}{\value{nisevnum}}
\setcounter{nieignumold}{\value{nieignum}}
\setcounter{nininumold}{\value{nininum}}
}
\newcommand{\ninumold}{\thenifinumold.\thenisenumold.\thenithinumold.\thenifonumold.\thenififnumold.\thenisixnumold.\thenisevnumold.\thenieignumold.\thenininumold}
\newcounter{tencall}
\setcounter{tencall}{0}
\newcommand{\tencall}[1]{\addtocounter{tencall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall.\thenicall.\thetencall)
\ #1}
\setcounter{elecall}{0}
}
\newcommand{\retencall}[1]{\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall.\thenicall.\thetencall)
\ #1}}
\newcounter{tenfinum}
\newcounter{tensenum}
\newcounter{tenthinum}
\newcounter{tenfonum}
\newcounter{tenfifnum}
\newcounter{tensixnum}
\newcounter{tensevnum}
\newcounter{teneignum}
\newcounter{tenninum}
\newcounter{tentennum}
\newcommand{\tennumset}{
\setcounter{tenfinum}{\value{ficall}}
\setcounter{tensenum}{\value{secall}}
\setcounter{tenthinum}{\value{thicall}}
\setcounter{tenfonum}{\value{focall}}
\setcounter{tenfifnum}{\value{fifcall}}
\setcounter{tensixnum}{\value{sixcall}}
\setcounter{tensevnum}{\value{sevcall}}
\setcounter{teneignum}{\value{eigcall}}
\setcounter{tenninum}{\value{nicall}}
\setcounter{tentennum}{\value{tencall}}}
\newcommand{\tennum}{\thetenfinum.\thetensenum.\thetenthinum.\thetenfonum.\thetenfifnum.\thetensixnum.\thetensevnum.\theteneignum.\thetenninum.\thetentennum}
\newcounter{elecall}
\setcounter{elecall}{0}
\newcommand{\elecall}[1]{\addtocounter{elecall}{1}\subsubsection*{(\theficall.\thesecall.\thethicall.\thefocall.\thefifcall.\thesixcall.\thesevcall.\theeigcall.\thenicall.\thetencall.\theelecall) \ #1}}
\newcounter{elefinum}
\newcounter{elesenum}
\newcounter{elethinum}
\newcounter{elefonum}
\newcounter{elefifnum}
\newcounter{elesixnum}
\newcounter{elesevnum}
\newcounter{eleeignum}
\newcounter{eleninum}
\newcounter{eletennum}
\newcounter{eleelenum}
\newcommand{\elenumset}{
\setcounter{elefinum}{\value{ficall}}
\setcounter{elesenum}{\value{secall}}
\setcounter{elethinum}{\value{thicall}}
\setcounter{elefonum}{\value{focall}}
\setcounter{elefifnum}{\value{fifcall}}
\setcounter{elesixnum}{\value{sixcall}}
\setcounter{elesevnum}{\value{sevcall}}
\setcounter{eleeignum}{\value{eigcall}}
\setcounter{eleninum}{\value{nicall}}
\setcounter{eletennum}{\value{tencall}}
\setcounter{eleelenum}{\value{elecall}}
}
\newcommand{\elenum}{\theelefinum.\theelesenum.\theelethinum.\theelefonum.\theelefifnum.\theelesixnum.\theelesevnum.\theeleeignum.\theeleninum.\theeletennum.\theeleelenum}

10
README_aktuelle_Branches Normal file

@@ -0,0 +1,10 @@
Stand: 24.5.21
bigRefactoring: Master-Brach
bigRefactoringUnifyComment: Dokumentation Unify, Martin
bytecodeGenericsSecond: Generated Generics, Ali, Martin
inferWildcards, Wildcards, Till
master, derzeit nicht genutzt
plugin, eigemntlicher Branch fuer Plugin-Basis, derzeit nicht aktuelle (aktuelle Version in simplifyRes
simplifyRes, Basis fuer Plugin, sollte auf Plugin gemerged werden, noch keine Packages, Michael
strucTypesNew, Struturelle Typen, alte Basis, arbeite derzeit niemand

@@ -1,2 +0,0 @@
Nächste Aufgaben:

File diff suppressed because it is too large Load Diff

@@ -1,201 +0,0 @@
THROW=44
STATIC=38
INTERFACE=28
AND_ASSIGN=93
BREAK=4
BYTE=5
ELSE=15
IF=22
ENUM=16
SUB=82
BANG=69
LPAREN=57
DOT=65
CASE=6
AT=101
LINE_COMMENT=105
StringLiteral=55
ELLIPSIS=102
LBRACK=61
PUBLIC=35
THROWS=45
NullLiteral=56
RSHIFT_ASSIGN=98
LBRACE=59
GOTO=23
SUB_ASSIGN=90
SEMI=63
CHAR=8
ASSIGN=66
COMMENT=104
IMPORT=25
BITOR=86
CATCH=7
MUL_ASSIGN=91
DOUBLE=14
PROTECTED=34
LONG=29
COMMA=64
BITAND=85
PRIVATE=33
CONTINUE=11
DIV=84
FloatingPointLiteral=52
LE=74
CharacterLiteral=54
VOLATILE=49
EXTENDS=17
INSTANCEOF=26
NEW=31
ADD=81
LT=68
CLASS=9
DO=13
FINALLY=19
Identifier=100
CONST=10
PACKAGE=32
OR_ASSIGN=94
TRY=47
IntegerLiteral=51
SYNCHRONIZED=42
MUL=83
FOR=21
FINAL=18
RPAREN=58
CARET=87
URSHIFT_ASSIGN=99
BOOLEAN=3
NOTEQUAL=76
RBRACK=62
RBRACE=60
AND=77
THIS=43
SWITCH=41
VOID=48
TRANSIENT=46
INC=79
FLOAT=20
NATIVE=30
DIV_ASSIGN=92
BooleanLiteral=53
ABSTRACT=1
STRICTFP=39
INT=27
QUESTION=71
RETURN=36
LSHIFT_ASSIGN=97
ADD_ASSIGN=89
WS=103
GE=75
SUPER=40
OR=78
DEC=80
MOD=88
XOR_ASSIGN=95
ASSERT=2
EQUAL=73
IMPLEMENTS=24
COLON=72
GT=67
SHORT=37
MOD_ASSIGN=96
WHILE=50
TILDE=70
DEFAULT=12
'import'=25
'-'=82
')'=58
'super'=40
'else'=15
'%'=88
'!'=69
'>'=67
'public'=35
'=='=73
'--'=80
'|'=86
'['=61
':'=72
'...'=102
'throw'=44
'case'=6
'.'=65
'this'=43
'*'=83
'switch'=41
'synchronized'=42
'&'=85
'double'=14
'break'=4
'short'=37
'<='=74
'enum'=16
'try'=47
'?'=71
'if'=22
'extends'=17
'goto'=23
'}'=60
'instanceof'=26
';'=63
'||'=78
'>>='=98
'class'=9
'return'=36
'&='=93
'catch'=7
'native'=30
'continue'=11
'strictfp'=39
'/'=84
'*='=91
'+'=81
'final'=18
'protected'=34
'static'=38
'@'=101
'transient'=46
'~'=70
'assert'=2
']'=62
'<'=68
'++'=79
'>>>='=99
'>='=75
'long'=29
'boolean'=3
'const'=10
'abstract'=1
'implements'=24
'volatile'=49
'throws'=45
'/='=92
','=64
'-='=90
'do'=13
'package'=32
'('=57
'null'=56
'int'=27
'|='=94
'for'=21
'^'=87
'<<='=97
'='=66
'byte'=5
'&&'=77
'^='=95
'void'=48
'while'=50
'{'=59
'float'=20
'!='=76
'new'=31
'char'=8
'finally'=19
'interface'=28
'%='=96
'private'=33
'+='=89
'default'=12

File diff suppressed because it is too large Load Diff

@@ -1,515 +0,0 @@
// Generated from Java8.g4 by ANTLR 4.4
import org.antlr.v4.runtime.Lexer;
import org.antlr.v4.runtime.CharStream;
import org.antlr.v4.runtime.Token;
import org.antlr.v4.runtime.TokenStream;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.misc.*;
@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
public class Java8Lexer extends Lexer {
static { RuntimeMetaData.checkVersion("4.4", RuntimeMetaData.VERSION); }
protected static final DFA[] _decisionToDFA;
protected static final PredictionContextCache _sharedContextCache =
new PredictionContextCache();
public static final int
ABSTRACT=1, ASSERT=2, BOOLEAN=3, BREAK=4, BYTE=5, CASE=6, CATCH=7, CHAR=8,
CLASS=9, CONST=10, CONTINUE=11, DEFAULT=12, DO=13, DOUBLE=14, ELSE=15,
ENUM=16, EXTENDS=17, FINAL=18, FINALLY=19, FLOAT=20, FOR=21, IF=22, GOTO=23,
IMPLEMENTS=24, IMPORT=25, INSTANCEOF=26, INT=27, INTERFACE=28, LONG=29,
NATIVE=30, NEW=31, PACKAGE=32, PRIVATE=33, PROTECTED=34, PUBLIC=35, RETURN=36,
SHORT=37, STATIC=38, STRICTFP=39, SUPER=40, SWITCH=41, SYNCHRONIZED=42,
THIS=43, THROW=44, THROWS=45, TRANSIENT=46, TRY=47, VOID=48, VOLATILE=49,
WHILE=50, IntegerLiteral=51, FloatingPointLiteral=52, BooleanLiteral=53,
CharacterLiteral=54, StringLiteral=55, NullLiteral=56, LPAREN=57, RPAREN=58,
LBRACE=59, RBRACE=60, LBRACK=61, RBRACK=62, SEMI=63, COMMA=64, DOT=65,
ASSIGN=66, GT=67, LT=68, BANG=69, TILDE=70, QUESTION=71, COLON=72, EQUAL=73,
LE=74, GE=75, NOTEQUAL=76, AND=77, OR=78, INC=79, DEC=80, ADD=81, SUB=82,
MUL=83, DIV=84, BITAND=85, BITOR=86, CARET=87, MOD=88, ADD_ASSIGN=89,
SUB_ASSIGN=90, MUL_ASSIGN=91, DIV_ASSIGN=92, AND_ASSIGN=93, OR_ASSIGN=94,
XOR_ASSIGN=95, MOD_ASSIGN=96, LSHIFT_ASSIGN=97, RSHIFT_ASSIGN=98, URSHIFT_ASSIGN=99,
Identifier=100, AT=101, ELLIPSIS=102, WS=103, COMMENT=104, LINE_COMMENT=105;
public static String[] modeNames = {
"DEFAULT_MODE"
};
public static final String[] tokenNames = {
"'\\u0000'", "'\\u0001'", "'\\u0002'", "'\\u0003'", "'\\u0004'", "'\\u0005'",
"'\\u0006'", "'\\u0007'", "'\b'", "'\t'", "'\n'", "'\\u000B'", "'\f'",
"'\r'", "'\\u000E'", "'\\u000F'", "'\\u0010'", "'\\u0011'", "'\\u0012'",
"'\\u0013'", "'\\u0014'", "'\\u0015'", "'\\u0016'", "'\\u0017'", "'\\u0018'",
"'\\u0019'", "'\\u001A'", "'\\u001B'", "'\\u001C'", "'\\u001D'", "'\\u001E'",
"'\\u001F'", "' '", "'!'", "'\"'", "'#'", "'$'", "'%'", "'&'", "'''",
"'('", "')'", "'*'", "'+'", "','", "'-'", "'.'", "'/'", "'0'", "'1'",
"'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'", "':'", "';'",
"'<'", "'='", "'>'", "'?'", "'@'", "'A'", "'B'", "'C'", "'D'", "'E'",
"'F'", "'G'", "'H'", "'I'", "'J'", "'K'", "'L'", "'M'", "'N'", "'O'",
"'P'", "'Q'", "'R'", "'S'", "'T'", "'U'", "'V'", "'W'", "'X'", "'Y'",
"'Z'", "'['", "'\\'", "']'", "'^'", "'_'", "'`'", "'a'", "'b'", "'c'",
"'d'", "'e'", "'f'", "'g'", "'h'", "'i'"
};
public static final String[] ruleNames = {
"ABSTRACT", "ASSERT", "BOOLEAN", "BREAK", "BYTE", "CASE", "CATCH", "CHAR",
"CLASS", "CONST", "CONTINUE", "DEFAULT", "DO", "DOUBLE", "ELSE", "ENUM",
"EXTENDS", "FINAL", "FINALLY", "FLOAT", "FOR", "IF", "GOTO", "IMPLEMENTS",
"IMPORT", "INSTANCEOF", "INT", "INTERFACE", "LONG", "NATIVE", "NEW", "PACKAGE",
"PRIVATE", "PROTECTED", "PUBLIC", "RETURN", "SHORT", "STATIC", "STRICTFP",
"SUPER", "SWITCH", "SYNCHRONIZED", "THIS", "THROW", "THROWS", "TRANSIENT",
"TRY", "VOID", "VOLATILE", "WHILE", "IntegerLiteral", "DecimalIntegerLiteral",
"HexIntegerLiteral", "OctalIntegerLiteral", "BinaryIntegerLiteral", "IntegerTypeSuffix",
"DecimalNumeral", "Digits", "Digit", "NonZeroDigit", "DigitOrUnderscore",
"Underscores", "HexNumeral", "HexDigits", "HexDigit", "HexDigitOrUnderscore",
"OctalNumeral", "OctalDigits", "OctalDigit", "OctalDigitOrUnderscore",
"BinaryNumeral", "BinaryDigits", "BinaryDigit", "BinaryDigitOrUnderscore",
"FloatingPointLiteral", "DecimalFloatingPointLiteral", "ExponentPart",
"ExponentIndicator", "SignedInteger", "Sign", "FloatTypeSuffix", "HexadecimalFloatingPointLiteral",
"HexSignificand", "BinaryExponent", "BinaryExponentIndicator", "BooleanLiteral",
"CharacterLiteral", "SingleCharacter", "StringLiteral", "StringCharacters",
"StringCharacter", "EscapeSequence", "OctalEscape", "UnicodeEscape", "ZeroToThree",
"NullLiteral", "LPAREN", "RPAREN", "LBRACE", "RBRACE", "LBRACK", "RBRACK",
"SEMI", "COMMA", "DOT", "ASSIGN", "GT", "LT", "BANG", "TILDE", "QUESTION",
"COLON", "EQUAL", "LE", "GE", "NOTEQUAL", "AND", "OR", "INC", "DEC", "ADD",
"SUB", "MUL", "DIV", "BITAND", "BITOR", "CARET", "MOD", "ADD_ASSIGN",
"SUB_ASSIGN", "MUL_ASSIGN", "DIV_ASSIGN", "AND_ASSIGN", "OR_ASSIGN", "XOR_ASSIGN",
"MOD_ASSIGN", "LSHIFT_ASSIGN", "RSHIFT_ASSIGN", "URSHIFT_ASSIGN", "Identifier",
"JavaLetter", "JavaLetterOrDigit", "AT", "ELLIPSIS", "WS", "COMMENT",
"LINE_COMMENT"
};
public Java8Lexer(CharStream input) {
super(input);
_interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
}
@Override
public String getGrammarFileName() { return "Java8.g4"; }
@Override
public String[] getTokenNames() { return tokenNames; }
@Override
public String[] getRuleNames() { return ruleNames; }
@Override
public String getSerializedATN() { return _serializedATN; }
@Override
public String[] getModeNames() { return modeNames; }
@Override
public ATN getATN() { return _ATN; }
@Override
public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
switch (ruleIndex) {
case 140: return JavaLetter_sempred((RuleContext)_localctx, predIndex);
case 141: return JavaLetterOrDigit_sempred((RuleContext)_localctx, predIndex);
}
return true;
}
private boolean JavaLetterOrDigit_sempred(RuleContext _localctx, int predIndex) {
switch (predIndex) {
case 2: return Character.isJavaIdentifierPart(_input.LA(-1));
case 3: return Character.isJavaIdentifierPart(Character.toCodePoint((char)_input.LA(-2), (char)_input.LA(-1)));
}
return true;
}
private boolean JavaLetter_sempred(RuleContext _localctx, int predIndex) {
switch (predIndex) {
case 0: return Character.isJavaIdentifierStart(_input.LA(-1));
case 1: return Character.isJavaIdentifierStart(Character.toCodePoint((char)_input.LA(-2), (char)_input.LA(-1)));
}
return true;
}
public static final String _serializedATN =
"\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2k\u042e\b\1\4\2\t"+
"\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13"+
"\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+
"\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+
"\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!"+
"\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4"+
",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t"+
"\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t="+
"\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I"+
"\tI\4J\tJ\4K\tK\4L\tL\4M\tM\4N\tN\4O\tO\4P\tP\4Q\tQ\4R\tR\4S\tS\4T\tT"+
"\4U\tU\4V\tV\4W\tW\4X\tX\4Y\tY\4Z\tZ\4[\t[\4\\\t\\\4]\t]\4^\t^\4_\t_\4"+
"`\t`\4a\ta\4b\tb\4c\tc\4d\td\4e\te\4f\tf\4g\tg\4h\th\4i\ti\4j\tj\4k\t"+
"k\4l\tl\4m\tm\4n\tn\4o\to\4p\tp\4q\tq\4r\tr\4s\ts\4t\tt\4u\tu\4v\tv\4"+
"w\tw\4x\tx\4y\ty\4z\tz\4{\t{\4|\t|\4}\t}\4~\t~\4\177\t\177\4\u0080\t\u0080"+
"\4\u0081\t\u0081\4\u0082\t\u0082\4\u0083\t\u0083\4\u0084\t\u0084\4\u0085"+
"\t\u0085\4\u0086\t\u0086\4\u0087\t\u0087\4\u0088\t\u0088\4\u0089\t\u0089"+
"\4\u008a\t\u008a\4\u008b\t\u008b\4\u008c\t\u008c\4\u008d\t\u008d\4\u008e"+
"\t\u008e\4\u008f\t\u008f\4\u0090\t\u0090\4\u0091\t\u0091\4\u0092\t\u0092"+
"\4\u0093\t\u0093\4\u0094\t\u0094\3\2\3\2\3\2\3\2\3\2\3\2\3\2\3\2\3\2\3"+
"\3\3\3\3\3\3\3\3\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3\5"+
"\3\5\3\5\3\5\3\6\3\6\3\6\3\6\3\6\3\7\3\7\3\7\3\7\3\7\3\b\3\b\3\b\3\b\3"+
"\b\3\b\3\t\3\t\3\t\3\t\3\t\3\n\3\n\3\n\3\n\3\n\3\n\3\13\3\13\3\13\3\13"+
"\3\13\3\13\3\f\3\f\3\f\3\f\3\f\3\f\3\f\3\f\3\f\3\r\3\r\3\r\3\r\3\r\3\r"+
"\3\r\3\r\3\16\3\16\3\16\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\20\3\20\3"+
"\20\3\20\3\20\3\21\3\21\3\21\3\21\3\21\3\22\3\22\3\22\3\22\3\22\3\22\3"+
"\22\3\22\3\23\3\23\3\23\3\23\3\23\3\23\3\24\3\24\3\24\3\24\3\24\3\24\3"+
"\24\3\24\3\25\3\25\3\25\3\25\3\25\3\25\3\26\3\26\3\26\3\26\3\27\3\27\3"+
"\27\3\30\3\30\3\30\3\30\3\30\3\31\3\31\3\31\3\31\3\31\3\31\3\31\3\31\3"+
"\31\3\31\3\31\3\32\3\32\3\32\3\32\3\32\3\32\3\32\3\33\3\33\3\33\3\33\3"+
"\33\3\33\3\33\3\33\3\33\3\33\3\33\3\34\3\34\3\34\3\34\3\35\3\35\3\35\3"+
"\35\3\35\3\35\3\35\3\35\3\35\3\35\3\36\3\36\3\36\3\36\3\36\3\37\3\37\3"+
"\37\3\37\3\37\3\37\3\37\3 \3 \3 \3 \3!\3!\3!\3!\3!\3!\3!\3!\3\"\3\"\3"+
"\"\3\"\3\"\3\"\3\"\3\"\3#\3#\3#\3#\3#\3#\3#\3#\3#\3#\3$\3$\3$\3$\3$\3"+
"$\3$\3%\3%\3%\3%\3%\3%\3%\3&\3&\3&\3&\3&\3&\3\'\3\'\3\'\3\'\3\'\3\'\3"+
"\'\3(\3(\3(\3(\3(\3(\3(\3(\3(\3)\3)\3)\3)\3)\3)\3*\3*\3*\3*\3*\3*\3*\3"+
"+\3+\3+\3+\3+\3+\3+\3+\3+\3+\3+\3+\3+\3,\3,\3,\3,\3,\3-\3-\3-\3-\3-\3"+
"-\3.\3.\3.\3.\3.\3.\3.\3/\3/\3/\3/\3/\3/\3/\3/\3/\3/\3\60\3\60\3\60\3"+
"\60\3\61\3\61\3\61\3\61\3\61\3\62\3\62\3\62\3\62\3\62\3\62\3\62\3\62\3"+
"\62\3\63\3\63\3\63\3\63\3\63\3\63\3\64\3\64\3\64\3\64\5\64\u0281\n\64"+
"\3\65\3\65\5\65\u0285\n\65\3\66\3\66\5\66\u0289\n\66\3\67\3\67\5\67\u028d"+
"\n\67\38\38\58\u0291\n8\39\39\3:\3:\3:\5:\u0298\n:\3:\3:\3:\5:\u029d\n"+
":\5:\u029f\n:\3;\3;\7;\u02a3\n;\f;\16;\u02a6\13;\3;\5;\u02a9\n;\3<\3<"+
"\5<\u02ad\n<\3=\3=\3>\3>\5>\u02b3\n>\3?\6?\u02b6\n?\r?\16?\u02b7\3@\3"+
"@\3@\3@\3A\3A\7A\u02c0\nA\fA\16A\u02c3\13A\3A\5A\u02c6\nA\3B\3B\3C\3C"+
"\5C\u02cc\nC\3D\3D\5D\u02d0\nD\3D\3D\3E\3E\7E\u02d6\nE\fE\16E\u02d9\13"+
"E\3E\5E\u02dc\nE\3F\3F\3G\3G\5G\u02e2\nG\3H\3H\3H\3H\3I\3I\7I\u02ea\n"+
"I\fI\16I\u02ed\13I\3I\5I\u02f0\nI\3J\3J\3K\3K\5K\u02f6\nK\3L\3L\5L\u02fa"+
"\nL\3M\3M\3M\5M\u02ff\nM\3M\5M\u0302\nM\3M\5M\u0305\nM\3M\3M\3M\5M\u030a"+
"\nM\3M\5M\u030d\nM\3M\3M\3M\5M\u0312\nM\3M\3M\3M\5M\u0317\nM\3N\3N\3N"+
"\3O\3O\3P\5P\u031f\nP\3P\3P\3Q\3Q\3R\3R\3S\3S\3S\5S\u032a\nS\3T\3T\5T"+
"\u032e\nT\3T\3T\3T\5T\u0333\nT\3T\3T\5T\u0337\nT\3U\3U\3U\3V\3V\3W\3W"+
"\3W\3W\3W\3W\3W\3W\3W\5W\u0347\nW\3X\3X\3X\3X\3X\3X\3X\3X\5X\u0351\nX"+
"\3Y\3Y\3Z\3Z\5Z\u0357\nZ\3Z\3Z\3[\6[\u035c\n[\r[\16[\u035d\3\\\3\\\5\\"+
"\u0362\n\\\3]\3]\3]\3]\5]\u0368\n]\3^\3^\3^\3^\3^\3^\3^\3^\3^\3^\3^\5"+
"^\u0375\n^\3_\3_\3_\3_\3_\3_\3_\3`\3`\3a\3a\3a\3a\3a\3b\3b\3c\3c\3d\3"+
"d\3e\3e\3f\3f\3g\3g\3h\3h\3i\3i\3j\3j\3k\3k\3l\3l\3m\3m\3n\3n\3o\3o\3"+
"p\3p\3q\3q\3r\3r\3r\3s\3s\3s\3t\3t\3t\3u\3u\3u\3v\3v\3v\3w\3w\3w\3x\3"+
"x\3x\3y\3y\3y\3z\3z\3{\3{\3|\3|\3}\3}\3~\3~\3\177\3\177\3\u0080\3\u0080"+
"\3\u0081\3\u0081\3\u0082\3\u0082\3\u0082\3\u0083\3\u0083\3\u0083\3\u0084"+
"\3\u0084\3\u0084\3\u0085\3\u0085\3\u0085\3\u0086\3\u0086\3\u0086\3\u0087"+
"\3\u0087\3\u0087\3\u0088\3\u0088\3\u0088\3\u0089\3\u0089\3\u0089\3\u008a"+
"\3\u008a\3\u008a\3\u008a\3\u008b\3\u008b\3\u008b\3\u008b\3\u008c\3\u008c"+
"\3\u008c\3\u008c\3\u008c\3\u008d\3\u008d\7\u008d\u03f4\n\u008d\f\u008d"+
"\16\u008d\u03f7\13\u008d\3\u008e\3\u008e\3\u008e\3\u008e\3\u008e\3\u008e"+
"\5\u008e\u03ff\n\u008e\3\u008f\3\u008f\3\u008f\3\u008f\3\u008f\3\u008f"+
"\5\u008f\u0407\n\u008f\3\u0090\3\u0090\3\u0091\3\u0091\3\u0091\3\u0091"+
"\3\u0092\6\u0092\u0410\n\u0092\r\u0092\16\u0092\u0411\3\u0092\3\u0092"+
"\3\u0093\3\u0093\3\u0093\3\u0093\7\u0093\u041a\n\u0093\f\u0093\16\u0093"+
"\u041d\13\u0093\3\u0093\3\u0093\3\u0093\3\u0093\3\u0093\3\u0094\3\u0094"+
"\3\u0094\3\u0094\7\u0094\u0428\n\u0094\f\u0094\16\u0094\u042b\13\u0094"+
"\3\u0094\3\u0094\3\u041b\2\u0095\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n\23"+
"\13\25\f\27\r\31\16\33\17\35\20\37\21!\22#\23%\24\'\25)\26+\27-\30/\31"+
"\61\32\63\33\65\34\67\359\36;\37= ?!A\"C#E$G%I&K\'M(O)Q*S+U,W-Y.[/]\60"+
"_\61a\62c\63e\64g\65i\2k\2m\2o\2q\2s\2u\2w\2y\2{\2}\2\177\2\u0081\2\u0083"+
"\2\u0085\2\u0087\2\u0089\2\u008b\2\u008d\2\u008f\2\u0091\2\u0093\2\u0095"+
"\2\u0097\66\u0099\2\u009b\2\u009d\2\u009f\2\u00a1\2\u00a3\2\u00a5\2\u00a7"+
"\2\u00a9\2\u00ab\2\u00ad\67\u00af8\u00b1\2\u00b39\u00b5\2\u00b7\2\u00b9"+
"\2\u00bb\2\u00bd\2\u00bf\2\u00c1:\u00c3;\u00c5<\u00c7=\u00c9>\u00cb?\u00cd"+
"@\u00cfA\u00d1B\u00d3C\u00d5D\u00d7E\u00d9F\u00dbG\u00ddH\u00dfI\u00e1"+
"J\u00e3K\u00e5L\u00e7M\u00e9N\u00ebO\u00edP\u00efQ\u00f1R\u00f3S\u00f5"+
"T\u00f7U\u00f9V\u00fbW\u00fdX\u00ffY\u0101Z\u0103[\u0105\\\u0107]\u0109"+
"^\u010b_\u010d`\u010fa\u0111b\u0113c\u0115d\u0117e\u0119f\u011b\2\u011d"+
"\2\u011fg\u0121h\u0123i\u0125j\u0127k\3\2\30\4\2NNnn\3\2\63;\4\2ZZzz\5"+
"\2\62;CHch\3\2\629\4\2DDdd\3\2\62\63\4\2GGgg\4\2--//\6\2FFHHffhh\4\2R"+
"Rrr\4\2))^^\4\2$$^^\n\2$$))^^ddhhppttvv\3\2\62\65\6\2&&C\\aac|\4\2\2\u0101"+
"\ud802\udc01\3\2\ud802\udc01\3\2\udc02\ue001\7\2&&\62;C\\aac|\5\2\13\f"+
"\16\17\"\"\4\2\f\f\17\17\u043c\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t"+
"\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2"+
"\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2"+
"\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2"+
"+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2"+
"\2\67\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2"+
"C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3"+
"\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2"+
"\2\2]\3\2\2\2\2_\3\2\2\2\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2"+
"\u0097\3\2\2\2\2\u00ad\3\2\2\2\2\u00af\3\2\2\2\2\u00b3\3\2\2\2\2\u00c1"+
"\3\2\2\2\2\u00c3\3\2\2\2\2\u00c5\3\2\2\2\2\u00c7\3\2\2\2\2\u00c9\3\2\2"+
"\2\2\u00cb\3\2\2\2\2\u00cd\3\2\2\2\2\u00cf\3\2\2\2\2\u00d1\3\2\2\2\2\u00d3"+
"\3\2\2\2\2\u00d5\3\2\2\2\2\u00d7\3\2\2\2\2\u00d9\3\2\2\2\2\u00db\3\2\2"+
"\2\2\u00dd\3\2\2\2\2\u00df\3\2\2\2\2\u00e1\3\2\2\2\2\u00e3\3\2\2\2\2\u00e5"+
"\3\2\2\2\2\u00e7\3\2\2\2\2\u00e9\3\2\2\2\2\u00eb\3\2\2\2\2\u00ed\3\2\2"+
"\2\2\u00ef\3\2\2\2\2\u00f1\3\2\2\2\2\u00f3\3\2\2\2\2\u00f5\3\2\2\2\2\u00f7"+
"\3\2\2\2\2\u00f9\3\2\2\2\2\u00fb\3\2\2\2\2\u00fd\3\2\2\2\2\u00ff\3\2\2"+
"\2\2\u0101\3\2\2\2\2\u0103\3\2\2\2\2\u0105\3\2\2\2\2\u0107\3\2\2\2\2\u0109"+
"\3\2\2\2\2\u010b\3\2\2\2\2\u010d\3\2\2\2\2\u010f\3\2\2\2\2\u0111\3\2\2"+
"\2\2\u0113\3\2\2\2\2\u0115\3\2\2\2\2\u0117\3\2\2\2\2\u0119\3\2\2\2\2\u011f"+
"\3\2\2\2\2\u0121\3\2\2\2\2\u0123\3\2\2\2\2\u0125\3\2\2\2\2\u0127\3\2\2"+
"\2\3\u0129\3\2\2\2\5\u0132\3\2\2\2\7\u0139\3\2\2\2\t\u0141\3\2\2\2\13"+
"\u0147\3\2\2\2\r\u014c\3\2\2\2\17\u0151\3\2\2\2\21\u0157\3\2\2\2\23\u015c"+
"\3\2\2\2\25\u0162\3\2\2\2\27\u0168\3\2\2\2\31\u0171\3\2\2\2\33\u0179\3"+
"\2\2\2\35\u017c\3\2\2\2\37\u0183\3\2\2\2!\u0188\3\2\2\2#\u018d\3\2\2\2"+
"%\u0195\3\2\2\2\'\u019b\3\2\2\2)\u01a3\3\2\2\2+\u01a9\3\2\2\2-\u01ad\3"+
"\2\2\2/\u01b0\3\2\2\2\61\u01b5\3\2\2\2\63\u01c0\3\2\2\2\65\u01c7\3\2\2"+
"\2\67\u01d2\3\2\2\29\u01d6\3\2\2\2;\u01e0\3\2\2\2=\u01e5\3\2\2\2?\u01ec"+
"\3\2\2\2A\u01f0\3\2\2\2C\u01f8\3\2\2\2E\u0200\3\2\2\2G\u020a\3\2\2\2I"+
"\u0211\3\2\2\2K\u0218\3\2\2\2M\u021e\3\2\2\2O\u0225\3\2\2\2Q\u022e\3\2"+
"\2\2S\u0234\3\2\2\2U\u023b\3\2\2\2W\u0248\3\2\2\2Y\u024d\3\2\2\2[\u0253"+
"\3\2\2\2]\u025a\3\2\2\2_\u0264\3\2\2\2a\u0268\3\2\2\2c\u026d\3\2\2\2e"+
"\u0276\3\2\2\2g\u0280\3\2\2\2i\u0282\3\2\2\2k\u0286\3\2\2\2m\u028a\3\2"+
"\2\2o\u028e\3\2\2\2q\u0292\3\2\2\2s\u029e\3\2\2\2u\u02a0\3\2\2\2w\u02ac"+
"\3\2\2\2y\u02ae\3\2\2\2{\u02b2\3\2\2\2}\u02b5\3\2\2\2\177\u02b9\3\2\2"+
"\2\u0081\u02bd\3\2\2\2\u0083\u02c7\3\2\2\2\u0085\u02cb\3\2\2\2\u0087\u02cd"+
"\3\2\2\2\u0089\u02d3\3\2\2\2\u008b\u02dd\3\2\2\2\u008d\u02e1\3\2\2\2\u008f"+
"\u02e3\3\2\2\2\u0091\u02e7\3\2\2\2\u0093\u02f1\3\2\2\2\u0095\u02f5\3\2"+
"\2\2\u0097\u02f9\3\2\2\2\u0099\u0316\3\2\2\2\u009b\u0318\3\2\2\2\u009d"+
"\u031b\3\2\2\2\u009f\u031e\3\2\2\2\u00a1\u0322\3\2\2\2\u00a3\u0324\3\2"+
"\2\2\u00a5\u0326\3\2\2\2\u00a7\u0336\3\2\2\2\u00a9\u0338\3\2\2\2\u00ab"+
"\u033b\3\2\2\2\u00ad\u0346\3\2\2\2\u00af\u0350\3\2\2\2\u00b1\u0352\3\2"+
"\2\2\u00b3\u0354\3\2\2\2\u00b5\u035b\3\2\2\2\u00b7\u0361\3\2\2\2\u00b9"+
"\u0367\3\2\2\2\u00bb\u0374\3\2\2\2\u00bd\u0376\3\2\2\2\u00bf\u037d\3\2"+
"\2\2\u00c1\u037f\3\2\2\2\u00c3\u0384\3\2\2\2\u00c5\u0386\3\2\2\2\u00c7"+
"\u0388\3\2\2\2\u00c9\u038a\3\2\2\2\u00cb\u038c\3\2\2\2\u00cd\u038e\3\2"+
"\2\2\u00cf\u0390\3\2\2\2\u00d1\u0392\3\2\2\2\u00d3\u0394\3\2\2\2\u00d5"+
"\u0396\3\2\2\2\u00d7\u0398\3\2\2\2\u00d9\u039a\3\2\2\2\u00db\u039c\3\2"+
"\2\2\u00dd\u039e\3\2\2\2\u00df\u03a0\3\2\2\2\u00e1\u03a2\3\2\2\2\u00e3"+
"\u03a4\3\2\2\2\u00e5\u03a7\3\2\2\2\u00e7\u03aa\3\2\2\2\u00e9\u03ad\3\2"+
"\2\2\u00eb\u03b0\3\2\2\2\u00ed\u03b3\3\2\2\2\u00ef\u03b6\3\2\2\2\u00f1"+
"\u03b9\3\2\2\2\u00f3\u03bc\3\2\2\2\u00f5\u03be\3\2\2\2\u00f7\u03c0\3\2"+
"\2\2\u00f9\u03c2\3\2\2\2\u00fb\u03c4\3\2\2\2\u00fd\u03c6\3\2\2\2\u00ff"+
"\u03c8\3\2\2\2\u0101\u03ca\3\2\2\2\u0103\u03cc\3\2\2\2\u0105\u03cf\3\2"+
"\2\2\u0107\u03d2\3\2\2\2\u0109\u03d5\3\2\2\2\u010b\u03d8\3\2\2\2\u010d"+
"\u03db\3\2\2\2\u010f\u03de\3\2\2\2\u0111\u03e1\3\2\2\2\u0113\u03e4\3\2"+
"\2\2\u0115\u03e8\3\2\2\2\u0117\u03ec\3\2\2\2\u0119\u03f1\3\2\2\2\u011b"+
"\u03fe\3\2\2\2\u011d\u0406\3\2\2\2\u011f\u0408\3\2\2\2\u0121\u040a\3\2"+
"\2\2\u0123\u040f\3\2\2\2\u0125\u0415\3\2\2\2\u0127\u0423\3\2\2\2\u0129"+
"\u012a\7c\2\2\u012a\u012b\7d\2\2\u012b\u012c\7u\2\2\u012c\u012d\7v\2\2"+
"\u012d\u012e\7t\2\2\u012e\u012f\7c\2\2\u012f\u0130\7e\2\2\u0130\u0131"+
"\7v\2\2\u0131\4\3\2\2\2\u0132\u0133\7c\2\2\u0133\u0134\7u\2\2\u0134\u0135"+
"\7u\2\2\u0135\u0136\7g\2\2\u0136\u0137\7t\2\2\u0137\u0138\7v\2\2\u0138"+
"\6\3\2\2\2\u0139\u013a\7d\2\2\u013a\u013b\7q\2\2\u013b\u013c\7q\2\2\u013c"+
"\u013d\7n\2\2\u013d\u013e\7g\2\2\u013e\u013f\7c\2\2\u013f\u0140\7p\2\2"+
"\u0140\b\3\2\2\2\u0141\u0142\7d\2\2\u0142\u0143\7t\2\2\u0143\u0144\7g"+
"\2\2\u0144\u0145\7c\2\2\u0145\u0146\7m\2\2\u0146\n\3\2\2\2\u0147\u0148"+
"\7d\2\2\u0148\u0149\7{\2\2\u0149\u014a\7v\2\2\u014a\u014b\7g\2\2\u014b"+
"\f\3\2\2\2\u014c\u014d\7e\2\2\u014d\u014e\7c\2\2\u014e\u014f\7u\2\2\u014f"+
"\u0150\7g\2\2\u0150\16\3\2\2\2\u0151\u0152\7e\2\2\u0152\u0153\7c\2\2\u0153"+
"\u0154\7v\2\2\u0154\u0155\7e\2\2\u0155\u0156\7j\2\2\u0156\20\3\2\2\2\u0157"+
"\u0158\7e\2\2\u0158\u0159\7j\2\2\u0159\u015a\7c\2\2\u015a\u015b\7t\2\2"+
"\u015b\22\3\2\2\2\u015c\u015d\7e\2\2\u015d\u015e\7n\2\2\u015e\u015f\7"+
"c\2\2\u015f\u0160\7u\2\2\u0160\u0161\7u\2\2\u0161\24\3\2\2\2\u0162\u0163"+
"\7e\2\2\u0163\u0164\7q\2\2\u0164\u0165\7p\2\2\u0165\u0166\7u\2\2\u0166"+
"\u0167\7v\2\2\u0167\26\3\2\2\2\u0168\u0169\7e\2\2\u0169\u016a\7q\2\2\u016a"+
"\u016b\7p\2\2\u016b\u016c\7v\2\2\u016c\u016d\7k\2\2\u016d\u016e\7p\2\2"+
"\u016e\u016f\7w\2\2\u016f\u0170\7g\2\2\u0170\30\3\2\2\2\u0171\u0172\7"+
"f\2\2\u0172\u0173\7g\2\2\u0173\u0174\7h\2\2\u0174\u0175\7c\2\2\u0175\u0176"+
"\7w\2\2\u0176\u0177\7n\2\2\u0177\u0178\7v\2\2\u0178\32\3\2\2\2\u0179\u017a"+
"\7f\2\2\u017a\u017b\7q\2\2\u017b\34\3\2\2\2\u017c\u017d\7f\2\2\u017d\u017e"+
"\7q\2\2\u017e\u017f\7w\2\2\u017f\u0180\7d\2\2\u0180\u0181\7n\2\2\u0181"+
"\u0182\7g\2\2\u0182\36\3\2\2\2\u0183\u0184\7g\2\2\u0184\u0185\7n\2\2\u0185"+
"\u0186\7u\2\2\u0186\u0187\7g\2\2\u0187 \3\2\2\2\u0188\u0189\7g\2\2\u0189"+
"\u018a\7p\2\2\u018a\u018b\7w\2\2\u018b\u018c\7o\2\2\u018c\"\3\2\2\2\u018d"+
"\u018e\7g\2\2\u018e\u018f\7z\2\2\u018f\u0190\7v\2\2\u0190\u0191\7g\2\2"+
"\u0191\u0192\7p\2\2\u0192\u0193\7f\2\2\u0193\u0194\7u\2\2\u0194$\3\2\2"+
"\2\u0195\u0196\7h\2\2\u0196\u0197\7k\2\2\u0197\u0198\7p\2\2\u0198\u0199"+
"\7c\2\2\u0199\u019a\7n\2\2\u019a&\3\2\2\2\u019b\u019c\7h\2\2\u019c\u019d"+
"\7k\2\2\u019d\u019e\7p\2\2\u019e\u019f\7c\2\2\u019f\u01a0\7n\2\2\u01a0"+
"\u01a1\7n\2\2\u01a1\u01a2\7{\2\2\u01a2(\3\2\2\2\u01a3\u01a4\7h\2\2\u01a4"+
"\u01a5\7n\2\2\u01a5\u01a6\7q\2\2\u01a6\u01a7\7c\2\2\u01a7\u01a8\7v\2\2"+
"\u01a8*\3\2\2\2\u01a9\u01aa\7h\2\2\u01aa\u01ab\7q\2\2\u01ab\u01ac\7t\2"+
"\2\u01ac,\3\2\2\2\u01ad\u01ae\7k\2\2\u01ae\u01af\7h\2\2\u01af.\3\2\2\2"+
"\u01b0\u01b1\7i\2\2\u01b1\u01b2\7q\2\2\u01b2\u01b3\7v\2\2\u01b3\u01b4"+
"\7q\2\2\u01b4\60\3\2\2\2\u01b5\u01b6\7k\2\2\u01b6\u01b7\7o\2\2\u01b7\u01b8"+
"\7r\2\2\u01b8\u01b9\7n\2\2\u01b9\u01ba\7g\2\2\u01ba\u01bb\7o\2\2\u01bb"+
"\u01bc\7g\2\2\u01bc\u01bd\7p\2\2\u01bd\u01be\7v\2\2\u01be\u01bf\7u\2\2"+
"\u01bf\62\3\2\2\2\u01c0\u01c1\7k\2\2\u01c1\u01c2\7o\2\2\u01c2\u01c3\7"+
"r\2\2\u01c3\u01c4\7q\2\2\u01c4\u01c5\7t\2\2\u01c5\u01c6\7v\2\2\u01c6\64"+
"\3\2\2\2\u01c7\u01c8\7k\2\2\u01c8\u01c9\7p\2\2\u01c9\u01ca\7u\2\2\u01ca"+
"\u01cb\7v\2\2\u01cb\u01cc\7c\2\2\u01cc\u01cd\7p\2\2\u01cd\u01ce\7e\2\2"+
"\u01ce\u01cf\7g\2\2\u01cf\u01d0\7q\2\2\u01d0\u01d1\7h\2\2\u01d1\66\3\2"+
"\2\2\u01d2\u01d3\7k\2\2\u01d3\u01d4\7p\2\2\u01d4\u01d5\7v\2\2\u01d58\3"+
"\2\2\2\u01d6\u01d7\7k\2\2\u01d7\u01d8\7p\2\2\u01d8\u01d9\7v\2\2\u01d9"+
"\u01da\7g\2\2\u01da\u01db\7t\2\2\u01db\u01dc\7h\2\2\u01dc\u01dd\7c\2\2"+
"\u01dd\u01de\7e\2\2\u01de\u01df\7g\2\2\u01df:\3\2\2\2\u01e0\u01e1\7n\2"+
"\2\u01e1\u01e2\7q\2\2\u01e2\u01e3\7p\2\2\u01e3\u01e4\7i\2\2\u01e4<\3\2"+
"\2\2\u01e5\u01e6\7p\2\2\u01e6\u01e7\7c\2\2\u01e7\u01e8\7v\2\2\u01e8\u01e9"+
"\7k\2\2\u01e9\u01ea\7x\2\2\u01ea\u01eb\7g\2\2\u01eb>\3\2\2\2\u01ec\u01ed"+
"\7p\2\2\u01ed\u01ee\7g\2\2\u01ee\u01ef\7y\2\2\u01ef@\3\2\2\2\u01f0\u01f1"+
"\7r\2\2\u01f1\u01f2\7c\2\2\u01f2\u01f3\7e\2\2\u01f3\u01f4\7m\2\2\u01f4"+
"\u01f5\7c\2\2\u01f5\u01f6\7i\2\2\u01f6\u01f7\7g\2\2\u01f7B\3\2\2\2\u01f8"+
"\u01f9\7r\2\2\u01f9\u01fa\7t\2\2\u01fa\u01fb\7k\2\2\u01fb\u01fc\7x\2\2"+
"\u01fc\u01fd\7c\2\2\u01fd\u01fe\7v\2\2\u01fe\u01ff\7g\2\2\u01ffD\3\2\2"+
"\2\u0200\u0201\7r\2\2\u0201\u0202\7t\2\2\u0202\u0203\7q\2\2\u0203\u0204"+
"\7v\2\2\u0204\u0205\7g\2\2\u0205\u0206\7e\2\2\u0206\u0207\7v\2\2\u0207"+
"\u0208\7g\2\2\u0208\u0209\7f\2\2\u0209F\3\2\2\2\u020a\u020b\7r\2\2\u020b"+
"\u020c\7w\2\2\u020c\u020d\7d\2\2\u020d\u020e\7n\2\2\u020e\u020f\7k\2\2"+
"\u020f\u0210\7e\2\2\u0210H\3\2\2\2\u0211\u0212\7t\2\2\u0212\u0213\7g\2"+
"\2\u0213\u0214\7v\2\2\u0214\u0215\7w\2\2\u0215\u0216\7t\2\2\u0216\u0217"+
"\7p\2\2\u0217J\3\2\2\2\u0218\u0219\7u\2\2\u0219\u021a\7j\2\2\u021a\u021b"+
"\7q\2\2\u021b\u021c\7t\2\2\u021c\u021d\7v\2\2\u021dL\3\2\2\2\u021e\u021f"+
"\7u\2\2\u021f\u0220\7v\2\2\u0220\u0221\7c\2\2\u0221\u0222\7v\2\2\u0222"+
"\u0223\7k\2\2\u0223\u0224\7e\2\2\u0224N\3\2\2\2\u0225\u0226\7u\2\2\u0226"+
"\u0227\7v\2\2\u0227\u0228\7t\2\2\u0228\u0229\7k\2\2\u0229\u022a\7e\2\2"+
"\u022a\u022b\7v\2\2\u022b\u022c\7h\2\2\u022c\u022d\7r\2\2\u022dP\3\2\2"+
"\2\u022e\u022f\7u\2\2\u022f\u0230\7w\2\2\u0230\u0231\7r\2\2\u0231\u0232"+
"\7g\2\2\u0232\u0233\7t\2\2\u0233R\3\2\2\2\u0234\u0235\7u\2\2\u0235\u0236"+
"\7y\2\2\u0236\u0237\7k\2\2\u0237\u0238\7v\2\2\u0238\u0239\7e\2\2\u0239"+
"\u023a\7j\2\2\u023aT\3\2\2\2\u023b\u023c\7u\2\2\u023c\u023d\7{\2\2\u023d"+
"\u023e\7p\2\2\u023e\u023f\7e\2\2\u023f\u0240\7j\2\2\u0240\u0241\7t\2\2"+
"\u0241\u0242\7q\2\2\u0242\u0243\7p\2\2\u0243\u0244\7k\2\2\u0244\u0245"+
"\7|\2\2\u0245\u0246\7g\2\2\u0246\u0247\7f\2\2\u0247V\3\2\2\2\u0248\u0249"+
"\7v\2\2\u0249\u024a\7j\2\2\u024a\u024b\7k\2\2\u024b\u024c\7u\2\2\u024c"+
"X\3\2\2\2\u024d\u024e\7v\2\2\u024e\u024f\7j\2\2\u024f\u0250\7t\2\2\u0250"+
"\u0251\7q\2\2\u0251\u0252\7y\2\2\u0252Z\3\2\2\2\u0253\u0254\7v\2\2\u0254"+
"\u0255\7j\2\2\u0255\u0256\7t\2\2\u0256\u0257\7q\2\2\u0257\u0258\7y\2\2"+
"\u0258\u0259\7u\2\2\u0259\\\3\2\2\2\u025a\u025b\7v\2\2\u025b\u025c\7t"+
"\2\2\u025c\u025d\7c\2\2\u025d\u025e\7p\2\2\u025e\u025f\7u\2\2\u025f\u0260"+
"\7k\2\2\u0260\u0261\7g\2\2\u0261\u0262\7p\2\2\u0262\u0263\7v\2\2\u0263"+
"^\3\2\2\2\u0264\u0265\7v\2\2\u0265\u0266\7t\2\2\u0266\u0267\7{\2\2\u0267"+
"`\3\2\2\2\u0268\u0269\7x\2\2\u0269\u026a\7q\2\2\u026a\u026b\7k\2\2\u026b"+
"\u026c\7f\2\2\u026cb\3\2\2\2\u026d\u026e\7x\2\2\u026e\u026f\7q\2\2\u026f"+
"\u0270\7n\2\2\u0270\u0271\7c\2\2\u0271\u0272\7v\2\2\u0272\u0273\7k\2\2"+
"\u0273\u0274\7n\2\2\u0274\u0275\7g\2\2\u0275d\3\2\2\2\u0276\u0277\7y\2"+
"\2\u0277\u0278\7j\2\2\u0278\u0279\7k\2\2\u0279\u027a\7n\2\2\u027a\u027b"+
"\7g\2\2\u027bf\3\2\2\2\u027c\u0281\5i\65\2\u027d\u0281\5k\66\2\u027e\u0281"+
"\5m\67\2\u027f\u0281\5o8\2\u0280\u027c\3\2\2\2\u0280\u027d\3\2\2\2\u0280"+
"\u027e\3\2\2\2\u0280\u027f\3\2\2\2\u0281h\3\2\2\2\u0282\u0284\5s:\2\u0283"+
"\u0285\5q9\2\u0284\u0283\3\2\2\2\u0284\u0285\3\2\2\2\u0285j\3\2\2\2\u0286"+
"\u0288\5\177@\2\u0287\u0289\5q9\2\u0288\u0287\3\2\2\2\u0288\u0289\3\2"+
"\2\2\u0289l\3\2\2\2\u028a\u028c\5\u0087D\2\u028b\u028d\5q9\2\u028c\u028b"+
"\3\2\2\2\u028c\u028d\3\2\2\2\u028dn\3\2\2\2\u028e\u0290\5\u008fH\2\u028f"+
"\u0291\5q9\2\u0290\u028f\3\2\2\2\u0290\u0291\3\2\2\2\u0291p\3\2\2\2\u0292"+
"\u0293\t\2\2\2\u0293r\3\2\2\2\u0294\u029f\7\62\2\2\u0295\u029c\5y=\2\u0296"+
"\u0298\5u;\2\u0297\u0296\3\2\2\2\u0297\u0298\3\2\2\2\u0298\u029d\3\2\2"+
"\2\u0299\u029a\5}?\2\u029a\u029b\5u;\2\u029b\u029d\3\2\2\2\u029c\u0297"+
"\3\2\2\2\u029c\u0299\3\2\2\2\u029d\u029f\3\2\2\2\u029e\u0294\3\2\2\2\u029e"+
"\u0295\3\2\2\2\u029ft\3\2\2\2\u02a0\u02a8\5w<\2\u02a1\u02a3\5{>\2\u02a2"+
"\u02a1\3\2\2\2\u02a3\u02a6\3\2\2\2\u02a4\u02a2\3\2\2\2\u02a4\u02a5\3\2"+
"\2\2\u02a5\u02a7\3\2\2\2\u02a6\u02a4\3\2\2\2\u02a7\u02a9\5w<\2\u02a8\u02a4"+
"\3\2\2\2\u02a8\u02a9\3\2\2\2\u02a9v\3\2\2\2\u02aa\u02ad\7\62\2\2\u02ab"+
"\u02ad\5y=\2\u02ac\u02aa\3\2\2\2\u02ac\u02ab\3\2\2\2\u02adx\3\2\2\2\u02ae"+
"\u02af\t\3\2\2\u02afz\3\2\2\2\u02b0\u02b3\5w<\2\u02b1\u02b3\7a\2\2\u02b2"+
"\u02b0\3\2\2\2\u02b2\u02b1\3\2\2\2\u02b3|\3\2\2\2\u02b4\u02b6\7a\2\2\u02b5"+
"\u02b4\3\2\2\2\u02b6\u02b7\3\2\2\2\u02b7\u02b5\3\2\2\2\u02b7\u02b8\3\2"+
"\2\2\u02b8~\3\2\2\2\u02b9\u02ba\7\62\2\2\u02ba\u02bb\t\4\2\2\u02bb\u02bc"+
"\5\u0081A\2\u02bc\u0080\3\2\2\2\u02bd\u02c5\5\u0083B\2\u02be\u02c0\5\u0085"+
"C\2\u02bf\u02be\3\2\2\2\u02c0\u02c3\3\2\2\2\u02c1\u02bf\3\2\2\2\u02c1"+
"\u02c2\3\2\2\2\u02c2\u02c4\3\2\2\2\u02c3\u02c1\3\2\2\2\u02c4\u02c6\5\u0083"+
"B\2\u02c5\u02c1\3\2\2\2\u02c5\u02c6\3\2\2\2\u02c6\u0082\3\2\2\2\u02c7"+
"\u02c8\t\5\2\2\u02c8\u0084\3\2\2\2\u02c9\u02cc\5\u0083B\2\u02ca\u02cc"+
"\7a\2\2\u02cb\u02c9\3\2\2\2\u02cb\u02ca\3\2\2\2\u02cc\u0086\3\2\2\2\u02cd"+
"\u02cf\7\62\2\2\u02ce\u02d0\5}?\2\u02cf\u02ce\3\2\2\2\u02cf\u02d0\3\2"+
"\2\2\u02d0\u02d1\3\2\2\2\u02d1\u02d2\5\u0089E\2\u02d2\u0088\3\2\2\2\u02d3"+
"\u02db\5\u008bF\2\u02d4\u02d6\5\u008dG\2\u02d5\u02d4\3\2\2\2\u02d6\u02d9"+
"\3\2\2\2\u02d7\u02d5\3\2\2\2\u02d7\u02d8\3\2\2\2\u02d8\u02da\3\2\2\2\u02d9"+
"\u02d7\3\2\2\2\u02da\u02dc\5\u008bF\2\u02db\u02d7\3\2\2\2\u02db\u02dc"+
"\3\2\2\2\u02dc\u008a\3\2\2\2\u02dd\u02de\t\6\2\2\u02de\u008c\3\2\2\2\u02df"+
"\u02e2\5\u008bF\2\u02e0\u02e2\7a\2\2\u02e1\u02df\3\2\2\2\u02e1\u02e0\3"+
"\2\2\2\u02e2\u008e\3\2\2\2\u02e3\u02e4\7\62\2\2\u02e4\u02e5\t\7\2\2\u02e5"+
"\u02e6\5\u0091I\2\u02e6\u0090\3\2\2\2\u02e7\u02ef\5\u0093J\2\u02e8\u02ea"+
"\5\u0095K\2\u02e9\u02e8\3\2\2\2\u02ea\u02ed\3\2\2\2\u02eb\u02e9\3\2\2"+
"\2\u02eb\u02ec\3\2\2\2\u02ec\u02ee\3\2\2\2\u02ed\u02eb\3\2\2\2\u02ee\u02f0"+
"\5\u0093J\2\u02ef\u02eb\3\2\2\2\u02ef\u02f0\3\2\2\2\u02f0\u0092\3\2\2"+
"\2\u02f1\u02f2\t\b\2\2\u02f2\u0094\3\2\2\2\u02f3\u02f6\5\u0093J\2\u02f4"+
"\u02f6\7a\2\2\u02f5\u02f3\3\2\2\2\u02f5\u02f4\3\2\2\2\u02f6\u0096\3\2"+
"\2\2\u02f7\u02fa\5\u0099M\2\u02f8\u02fa\5\u00a5S\2\u02f9\u02f7\3\2\2\2"+
"\u02f9\u02f8\3\2\2\2\u02fa\u0098\3\2\2\2\u02fb\u02fc\5u;\2\u02fc\u02fe"+
"\7\60\2\2\u02fd\u02ff\5u;\2\u02fe\u02fd\3\2\2\2\u02fe\u02ff\3\2\2\2\u02ff"+
"\u0301\3\2\2\2\u0300\u0302\5\u009bN\2\u0301\u0300\3\2\2\2\u0301\u0302"+
"\3\2\2\2\u0302\u0304\3\2\2\2\u0303\u0305\5\u00a3R\2\u0304\u0303\3\2\2"+
"\2\u0304\u0305\3\2\2\2\u0305\u0317\3\2\2\2\u0306\u0307\7\60\2\2\u0307"+
"\u0309\5u;\2\u0308\u030a\5\u009bN\2\u0309\u0308\3\2\2\2\u0309\u030a\3"+
"\2\2\2\u030a\u030c\3\2\2\2\u030b\u030d\5\u00a3R\2\u030c\u030b\3\2\2\2"+
"\u030c\u030d\3\2\2\2\u030d\u0317\3\2\2\2\u030e\u030f\5u;\2\u030f\u0311"+
"\5\u009bN\2\u0310\u0312\5\u00a3R\2\u0311\u0310\3\2\2\2\u0311\u0312\3\2"+
"\2\2\u0312\u0317\3\2\2\2\u0313\u0314\5u;\2\u0314\u0315\5\u00a3R\2\u0315"+
"\u0317\3\2\2\2\u0316\u02fb\3\2\2\2\u0316\u0306\3\2\2\2\u0316\u030e\3\2"+
"\2\2\u0316\u0313\3\2\2\2\u0317\u009a\3\2\2\2\u0318\u0319\5\u009dO\2\u0319"+
"\u031a\5\u009fP\2\u031a\u009c\3\2\2\2\u031b\u031c\t\t\2\2\u031c\u009e"+
"\3\2\2\2\u031d\u031f\5\u00a1Q\2\u031e\u031d\3\2\2\2\u031e\u031f\3\2\2"+
"\2\u031f\u0320\3\2\2\2\u0320\u0321\5u;\2\u0321\u00a0\3\2\2\2\u0322\u0323"+
"\t\n\2\2\u0323\u00a2\3\2\2\2\u0324\u0325\t\13\2\2\u0325\u00a4\3\2\2\2"+
"\u0326\u0327\5\u00a7T\2\u0327\u0329\5\u00a9U\2\u0328\u032a\5\u00a3R\2"+
"\u0329\u0328\3\2\2\2\u0329\u032a\3\2\2\2\u032a\u00a6\3\2\2\2\u032b\u032d"+
"\5\177@\2\u032c\u032e\7\60\2\2\u032d\u032c\3\2\2\2\u032d\u032e\3\2\2\2"+
"\u032e\u0337\3\2\2\2\u032f\u0330\7\62\2\2\u0330\u0332\t\4\2\2\u0331\u0333"+
"\5\u0081A\2\u0332\u0331\3\2\2\2\u0332\u0333\3\2\2\2\u0333\u0334\3\2\2"+
"\2\u0334\u0335\7\60\2\2\u0335\u0337\5\u0081A\2\u0336\u032b\3\2\2\2\u0336"+
"\u032f\3\2\2\2\u0337\u00a8\3\2\2\2\u0338\u0339\5\u00abV\2\u0339\u033a"+
"\5\u009fP\2\u033a\u00aa\3\2\2\2\u033b\u033c\t\f\2\2\u033c\u00ac\3\2\2"+
"\2\u033d\u033e\7v\2\2\u033e\u033f\7t\2\2\u033f\u0340\7w\2\2\u0340\u0347"+
"\7g\2\2\u0341\u0342\7h\2\2\u0342\u0343\7c\2\2\u0343\u0344\7n\2\2\u0344"+
"\u0345\7u\2\2\u0345\u0347\7g\2\2\u0346\u033d\3\2\2\2\u0346\u0341\3\2\2"+
"\2\u0347\u00ae\3\2\2\2\u0348\u0349\7)\2\2\u0349\u034a\5\u00b1Y\2\u034a"+
"\u034b\7)\2\2\u034b\u0351\3\2\2\2\u034c\u034d\7)\2\2\u034d\u034e\5\u00b9"+
"]\2\u034e\u034f\7)\2\2\u034f\u0351\3\2\2\2\u0350\u0348\3\2\2\2\u0350\u034c"+
"\3\2\2\2\u0351\u00b0\3\2\2\2\u0352\u0353\n\r\2\2\u0353\u00b2\3\2\2\2\u0354"+
"\u0356\7$\2\2\u0355\u0357\5\u00b5[\2\u0356\u0355\3\2\2\2\u0356\u0357\3"+
"\2\2\2\u0357\u0358\3\2\2\2\u0358\u0359\7$\2\2\u0359\u00b4\3\2\2\2\u035a"+
"\u035c\5\u00b7\\\2\u035b\u035a\3\2\2\2\u035c\u035d\3\2\2\2\u035d\u035b"+
"\3\2\2\2\u035d\u035e\3\2\2\2\u035e\u00b6\3\2\2\2\u035f\u0362\n\16\2\2"+
"\u0360\u0362\5\u00b9]\2\u0361\u035f\3\2\2\2\u0361\u0360\3\2\2\2\u0362"+
"\u00b8\3\2\2\2\u0363\u0364\7^\2\2\u0364\u0368\t\17\2\2\u0365\u0368\5\u00bb"+
"^\2\u0366\u0368\5\u00bd_\2\u0367\u0363\3\2\2\2\u0367\u0365\3\2\2\2\u0367"+
"\u0366\3\2\2\2\u0368\u00ba\3\2\2\2\u0369\u036a\7^\2\2\u036a\u0375\5\u008b"+
"F\2\u036b\u036c\7^\2\2\u036c\u036d\5\u008bF\2\u036d\u036e\5\u008bF\2\u036e"+
"\u0375\3\2\2\2\u036f\u0370\7^\2\2\u0370\u0371\5\u00bf`\2\u0371\u0372\5"+
"\u008bF\2\u0372\u0373\5\u008bF\2\u0373\u0375\3\2\2\2\u0374\u0369\3\2\2"+
"\2\u0374\u036b\3\2\2\2\u0374\u036f\3\2\2\2\u0375\u00bc\3\2\2\2\u0376\u0377"+
"\7^\2\2\u0377\u0378\7w\2\2\u0378\u0379\5\u0083B\2\u0379\u037a\5\u0083"+
"B\2\u037a\u037b\5\u0083B\2\u037b\u037c\5\u0083B\2\u037c\u00be\3\2\2\2"+
"\u037d\u037e\t\20\2\2\u037e\u00c0\3\2\2\2\u037f\u0380\7p\2\2\u0380\u0381"+
"\7w\2\2\u0381\u0382\7n\2\2\u0382\u0383\7n\2\2\u0383\u00c2\3\2\2\2\u0384"+
"\u0385\7*\2\2\u0385\u00c4\3\2\2\2\u0386\u0387\7+\2\2\u0387\u00c6\3\2\2"+
"\2\u0388\u0389\7}\2\2\u0389\u00c8\3\2\2\2\u038a\u038b\7\177\2\2\u038b"+
"\u00ca\3\2\2\2\u038c\u038d\7]\2\2\u038d\u00cc\3\2\2\2\u038e\u038f\7_\2"+
"\2\u038f\u00ce\3\2\2\2\u0390\u0391\7=\2\2\u0391\u00d0\3\2\2\2\u0392\u0393"+
"\7.\2\2\u0393\u00d2\3\2\2\2\u0394\u0395\7\60\2\2\u0395\u00d4\3\2\2\2\u0396"+
"\u0397\7?\2\2\u0397\u00d6\3\2\2\2\u0398\u0399\7@\2\2\u0399\u00d8\3\2\2"+
"\2\u039a\u039b\7>\2\2\u039b\u00da\3\2\2\2\u039c\u039d\7#\2\2\u039d\u00dc"+
"\3\2\2\2\u039e\u039f\7\u0080\2\2\u039f\u00de\3\2\2\2\u03a0\u03a1\7A\2"+
"\2\u03a1\u00e0\3\2\2\2\u03a2\u03a3\7<\2\2\u03a3\u00e2\3\2\2\2\u03a4\u03a5"+
"\7?\2\2\u03a5\u03a6\7?\2\2\u03a6\u00e4\3\2\2\2\u03a7\u03a8\7>\2\2\u03a8"+
"\u03a9\7?\2\2\u03a9\u00e6\3\2\2\2\u03aa\u03ab\7@\2\2\u03ab\u03ac\7?\2"+
"\2\u03ac\u00e8\3\2\2\2\u03ad\u03ae\7#\2\2\u03ae\u03af\7?\2\2\u03af\u00ea"+
"\3\2\2\2\u03b0\u03b1\7(\2\2\u03b1\u03b2\7(\2\2\u03b2\u00ec\3\2\2\2\u03b3"+
"\u03b4\7~\2\2\u03b4\u03b5\7~\2\2\u03b5\u00ee\3\2\2\2\u03b6\u03b7\7-\2"+
"\2\u03b7\u03b8\7-\2\2\u03b8\u00f0\3\2\2\2\u03b9\u03ba\7/\2\2\u03ba\u03bb"+
"\7/\2\2\u03bb\u00f2\3\2\2\2\u03bc\u03bd\7-\2\2\u03bd\u00f4\3\2\2\2\u03be"+
"\u03bf\7/\2\2\u03bf\u00f6\3\2\2\2\u03c0\u03c1\7,\2\2\u03c1\u00f8\3\2\2"+
"\2\u03c2\u03c3\7\61\2\2\u03c3\u00fa\3\2\2\2\u03c4\u03c5\7(\2\2\u03c5\u00fc"+
"\3\2\2\2\u03c6\u03c7\7~\2\2\u03c7\u00fe\3\2\2\2\u03c8\u03c9\7`\2\2\u03c9"+
"\u0100\3\2\2\2\u03ca\u03cb\7\'\2\2\u03cb\u0102\3\2\2\2\u03cc\u03cd\7-"+
"\2\2\u03cd\u03ce\7?\2\2\u03ce\u0104\3\2\2\2\u03cf\u03d0\7/\2\2\u03d0\u03d1"+
"\7?\2\2\u03d1\u0106\3\2\2\2\u03d2\u03d3\7,\2\2\u03d3\u03d4\7?\2\2\u03d4"+
"\u0108\3\2\2\2\u03d5\u03d6\7\61\2\2\u03d6\u03d7\7?\2\2\u03d7\u010a\3\2"+
"\2\2\u03d8\u03d9\7(\2\2\u03d9\u03da\7?\2\2\u03da\u010c\3\2\2\2\u03db\u03dc"+
"\7~\2\2\u03dc\u03dd\7?\2\2\u03dd\u010e\3\2\2\2\u03de\u03df\7`\2\2\u03df"+
"\u03e0\7?\2\2\u03e0\u0110\3\2\2\2\u03e1\u03e2\7\'\2\2\u03e2\u03e3\7?\2"+
"\2\u03e3\u0112\3\2\2\2\u03e4\u03e5\7>\2\2\u03e5\u03e6\7>\2\2\u03e6\u03e7"+
"\7?\2\2\u03e7\u0114\3\2\2\2\u03e8\u03e9\7@\2\2\u03e9\u03ea\7@\2\2\u03ea"+
"\u03eb\7?\2\2\u03eb\u0116\3\2\2\2\u03ec\u03ed\7@\2\2\u03ed\u03ee\7@\2"+
"\2\u03ee\u03ef\7@\2\2\u03ef\u03f0\7?\2\2\u03f0\u0118\3\2\2\2\u03f1\u03f5"+
"\5\u011b\u008e\2\u03f2\u03f4\5\u011d\u008f\2\u03f3\u03f2\3\2\2\2\u03f4"+
"\u03f7\3\2\2\2\u03f5\u03f3\3\2\2\2\u03f5\u03f6\3\2\2\2\u03f6\u011a\3\2"+
"\2\2\u03f7\u03f5\3\2\2\2\u03f8\u03ff\t\21\2\2\u03f9\u03fa\n\22\2\2\u03fa"+
"\u03ff\6\u008e\2\2\u03fb\u03fc\t\23\2\2\u03fc\u03fd\t\24\2\2\u03fd\u03ff"+
"\6\u008e\3\2\u03fe\u03f8\3\2\2\2\u03fe\u03f9\3\2\2\2\u03fe\u03fb\3\2\2"+
"\2\u03ff\u011c\3\2\2\2\u0400\u0407\t\25\2\2\u0401\u0402\n\22\2\2\u0402"+
"\u0407\6\u008f\4\2\u0403\u0404\t\23\2\2\u0404\u0405\t\24\2\2\u0405\u0407"+
"\6\u008f\5\2\u0406\u0400\3\2\2\2\u0406\u0401\3\2\2\2\u0406\u0403\3\2\2"+
"\2\u0407\u011e\3\2\2\2\u0408\u0409\7B\2\2\u0409\u0120\3\2\2\2\u040a\u040b"+
"\7\60\2\2\u040b\u040c\7\60\2\2\u040c\u040d\7\60\2\2\u040d\u0122\3\2\2"+
"\2\u040e\u0410\t\26\2\2\u040f\u040e\3\2\2\2\u0410\u0411\3\2\2\2\u0411"+
"\u040f\3\2\2\2\u0411\u0412\3\2\2\2\u0412\u0413\3\2\2\2\u0413\u0414\b\u0092"+
"\2\2\u0414\u0124\3\2\2\2\u0415\u0416\7\61\2\2\u0416\u0417\7,\2\2\u0417"+
"\u041b\3\2\2\2\u0418\u041a\13\2\2\2\u0419\u0418\3\2\2\2\u041a\u041d\3"+
"\2\2\2\u041b\u041c\3\2\2\2\u041b\u0419\3\2\2\2\u041c\u041e\3\2\2\2\u041d"+
"\u041b\3\2\2\2\u041e\u041f\7,\2\2\u041f\u0420\7\61\2\2\u0420\u0421\3\2"+
"\2\2\u0421\u0422\b\u0093\2\2\u0422\u0126\3\2\2\2\u0423\u0424\7\61\2\2"+
"\u0424\u0425\7\61\2\2\u0425\u0429\3\2\2\2\u0426\u0428\n\27\2\2\u0427\u0426"+
"\3\2\2\2\u0428\u042b\3\2\2\2\u0429\u0427\3\2\2\2\u0429\u042a\3\2\2\2\u042a"+
"\u042c\3\2\2\2\u042b\u0429\3\2\2\2\u042c\u042d\b\u0094\2\2\u042d\u0128"+
"\3\2\2\2\64\2\u0280\u0284\u0288\u028c\u0290\u0297\u029c\u029e\u02a4\u02a8"+
"\u02ac\u02b2\u02b7\u02c1\u02c5\u02cb\u02cf\u02d7\u02db\u02e1\u02eb\u02ef"+
"\u02f5\u02f9\u02fe\u0301\u0304\u0309\u030c\u0311\u0316\u031e\u0329\u032d"+
"\u0332\u0336\u0346\u0350\u0356\u035d\u0361\u0367\u0374\u03f5\u03fe\u0406"+
"\u0411\u041b\u0429\3\b\2\2";
public static final ATN _ATN =
new ATNDeserializer().deserialize(_serializedATN.toCharArray());
static {
_decisionToDFA = new DFA[_ATN.getNumberOfDecisions()];
for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
_decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i);
}
}
}

@@ -1,201 +0,0 @@
THROW=44
STATIC=38
INTERFACE=28
AND_ASSIGN=93
BREAK=4
BYTE=5
ELSE=15
IF=22
ENUM=16
SUB=82
BANG=69
LPAREN=57
DOT=65
CASE=6
AT=101
LINE_COMMENT=105
StringLiteral=55
ELLIPSIS=102
LBRACK=61
PUBLIC=35
THROWS=45
NullLiteral=56
RSHIFT_ASSIGN=98
LBRACE=59
GOTO=23
SUB_ASSIGN=90
SEMI=63
CHAR=8
ASSIGN=66
COMMENT=104
IMPORT=25
BITOR=86
CATCH=7
MUL_ASSIGN=91
DOUBLE=14
PROTECTED=34
LONG=29
COMMA=64
BITAND=85
PRIVATE=33
CONTINUE=11
DIV=84
FloatingPointLiteral=52
LE=74
CharacterLiteral=54
VOLATILE=49
EXTENDS=17
INSTANCEOF=26
NEW=31
ADD=81
LT=68
CLASS=9
DO=13
FINALLY=19
Identifier=100
CONST=10
PACKAGE=32
OR_ASSIGN=94
TRY=47
IntegerLiteral=51
SYNCHRONIZED=42
MUL=83
FOR=21
FINAL=18
RPAREN=58
CARET=87
URSHIFT_ASSIGN=99
BOOLEAN=3
NOTEQUAL=76
RBRACK=62
RBRACE=60
AND=77
THIS=43
SWITCH=41
VOID=48
TRANSIENT=46
INC=79
FLOAT=20
NATIVE=30
DIV_ASSIGN=92
BooleanLiteral=53
ABSTRACT=1
STRICTFP=39
INT=27
QUESTION=71
RETURN=36
LSHIFT_ASSIGN=97
ADD_ASSIGN=89
WS=103
GE=75
SUPER=40
OR=78
DEC=80
MOD=88
XOR_ASSIGN=95
ASSERT=2
EQUAL=73
IMPLEMENTS=24
COLON=72
GT=67
SHORT=37
MOD_ASSIGN=96
WHILE=50
TILDE=70
DEFAULT=12
'import'=25
'-'=82
')'=58
'super'=40
'else'=15
'%'=88
'!'=69
'>'=67
'public'=35
'=='=73
'--'=80
'|'=86
'['=61
':'=72
'...'=102
'throw'=44
'case'=6
'.'=65
'this'=43
'*'=83
'switch'=41
'synchronized'=42
'&'=85
'double'=14
'break'=4
'short'=37
'<='=74
'enum'=16
'try'=47
'?'=71
'if'=22
'extends'=17
'goto'=23
'}'=60
'instanceof'=26
';'=63
'||'=78
'>>='=98
'class'=9
'return'=36
'&='=93
'catch'=7
'native'=30
'continue'=11
'strictfp'=39
'/'=84
'*='=91
'+'=81
'final'=18
'protected'=34
'static'=38
'@'=101
'transient'=46
'~'=70
'assert'=2
']'=62
'<'=68
'++'=79
'>>>='=99
'>='=75
'long'=29
'boolean'=3
'const'=10
'abstract'=1
'implements'=24
'volatile'=49
'throws'=45
'/='=92
','=64
'-='=90
'do'=13
'package'=32
'('=57
'null'=56
'int'=27
'|='=94
'for'=21
'^'=87
'<<='=97
'='=66
'byte'=5
'&&'=77
'^='=95
'void'=48
'while'=50
'{'=59
'float'=20
'!='=76
'new'=31
'char'=8
'finally'=19
'interface'=28
'%='=96
'private'=33
'+='=89
'default'=12

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@@ -1,4 +0,0 @@
all:
java -jar ./antlr-4.4-complete.jar Java8.g4
javac -cp ./antlr-4.4-complete.jar:. *.java

@@ -1,35 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="CONSOLE" class="de.dhbwstuttgart.logger.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="de.dhbwstuttgart.logger.PatternLayout">
<param name="ConversionPattern" value="%-15C{1} %-5p [%-9c] %m%n"/>
</layout>
</appender>
<logger name="codegen">
<level value="INFO"/>
<appender-ref ref="CONSOLE"/>
</logger>
<logger name="parser">
<level value="OFF"/>
<appender-ref ref="CONSOLE"/>
</logger>
<logger name="inference">
<level value="WARN"/>
<appender-ref ref="CONSOLE"/>
</logger>
<logger name="bytecode">
<level value="INFO"/>
<appender-ref ref="CONSOLE"/>
</logger>
</log4j:configuration>

25
doc/Generics/generics.tex Normal file

@@ -0,0 +1,25 @@
\documentclass{article}
\begin{document}
\section{Generics sind notwendig}
Generics können nicht ignoriert werden.
Folgender Fall ist Typisierbar:
\begin{program}
<T> T m1(T x){
return m2(x);
}
m2(x){
m1(1);
m2("Test");
return m1(x);
}
\end{program}
Beim weglassen des Generics T wäre es aber nicht mehr möglich.
Dann erhält jeder Constraint, welcher in Verbindung mit der Methode m1 steht
den selben TPH.
\end{document}

@@ -55,7 +55,7 @@
<li><a href="de/dhbwstuttgart/typeinference/unify/CSubstitutionSet.html" title="class in de.dhbwstuttgart.typeinference.unify" target="classFrame">CSubstitutionSet</a></li>
<li><a href="de/dhbwstuttgart/myexception/CTypeReconstructionException.html" title="class in de.dhbwstuttgart.myexception" target="classFrame">CTypeReconstructionException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/unify/CVectorSet.html" title="class in de.dhbwstuttgart.typeinference.unify" target="classFrame">CVectorSet</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/DebugException.html" title="class in de.dhbwstuttgart.typeinference.exceptions" target="classFrame">DebugException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/DebugException.html" title="class in de.dhbwstuttgart.exceptions" target="classFrame">DebugException</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/misc/DeclId.html" title="class in de.dhbwstuttgart.syntaxtree.misc" target="classFrame">DeclId</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/DivideOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator" target="classFrame">DivideOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/DoubleLiteral.html" title="class in de.dhbwstuttgart.syntaxtree.statement" target="classFrame">DoubleLiteral</a></li>
@@ -203,7 +203,7 @@
<li><a href="syntaxTree/NodeEqualTest.html" title="class in syntaxTree" target="classFrame">NodeEqualTest</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/NotEqualOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator" target="classFrame">NotEqualOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/NotExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement" target="classFrame">NotExpr</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/NotImplementedException.html" title="class in de.dhbwstuttgart.typeinference.exceptions" target="classFrame">NotImplementedException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/NotImplementedException.html" title="class in de.dhbwstuttgart.exceptions" target="classFrame">NotImplementedException</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/Null.html" title="class in de.dhbwstuttgart.syntaxtree.statement" target="classFrame">Null</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/type/ObjectType.html" title="class in de.dhbwstuttgart.syntaxtree.type" target="classFrame">ObjectType</a></li>
<li><a href="de/dhbwstuttgart/typeinference/OderConstraint.html" title="class in de.dhbwstuttgart.typeinference" target="classFrame">OderConstraint</a></li>
@@ -228,7 +228,7 @@
<li><a href="de/dhbwstuttgart/typeinference/assumptions/ParameterAssumption.html" title="class in de.dhbwstuttgart.typeinference.assumptions" target="classFrame">ParameterAssumption</a></li>
<li><a href="plugindevelopment/ParameterInsertTest.html" title="class in plugindevelopment" target="classFrame">ParameterInsertTest</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/ParameterList.html" title="class in de.dhbwstuttgart.syntaxtree" target="classFrame">ParameterList</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions" target="classFrame">ParserError</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions" target="classFrame">ParserError</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/PlusOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator" target="classFrame">PlusOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/PositivExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement" target="classFrame">PositivExpr</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/PostDecExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement" target="classFrame">PostDecExpr</a></li>
@@ -282,7 +282,7 @@
<li><a href="de/dhbwstuttgart/typeinference/assumptions/TypeAssumptions.html" title="class in de.dhbwstuttgart.typeinference.assumptions" target="classFrame">TypeAssumptions</a></li>
<li><a href="plugindevelopment/TypeInsertTests/LargeSourceCodeTests/TypedMatrixSimpleTest.html" title="class in plugindevelopment.TypeInsertTests.LargeSourceCodeTests" target="classFrame">TypedMatrixSimpleTest</a></li>
<li><a href="plugindevelopment/TypeInsertTests/LargeSourceCodeTests/TypedMatrixTest.html" title="class in plugindevelopment.TypeInsertTests.LargeSourceCodeTests" target="classFrame">TypedMatrixTest</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.typeinference.exceptions" target="classFrame">TypeinferenceException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.exceptions" target="classFrame">TypeinferenceException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/TypeinferenceResultSet.html" title="class in de.dhbwstuttgart.typeinference" target="classFrame">TypeinferenceResultSet</a></li>
<li><a href="de/dhbwstuttgart/typeinference/TypeInsertable.html" title="interface in de.dhbwstuttgart.typeinference" target="classFrame"><span class="interfaceName">TypeInsertable</span></a></li>
<li><a href="de/dhbwstuttgart/typeinference/typedeployment/TypeInsertPoint.html" title="class in de.dhbwstuttgart.typeinference.typedeployment" target="classFrame">TypeInsertPoint</a></li>

@@ -55,7 +55,7 @@
<li><a href="de/dhbwstuttgart/typeinference/unify/CSubstitutionSet.html" title="class in de.dhbwstuttgart.typeinference.unify">CSubstitutionSet</a></li>
<li><a href="de/dhbwstuttgart/myexception/CTypeReconstructionException.html" title="class in de.dhbwstuttgart.myexception">CTypeReconstructionException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/unify/CVectorSet.html" title="class in de.dhbwstuttgart.typeinference.unify">CVectorSet</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/DebugException.html" title="class in de.dhbwstuttgart.typeinference.exceptions">DebugException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/DebugException.html" title="class in de.dhbwstuttgart.exceptions">DebugException</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/misc/DeclId.html" title="class in de.dhbwstuttgart.syntaxtree.misc">DeclId</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/DivideOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator">DivideOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/DoubleLiteral.html" title="class in de.dhbwstuttgart.syntaxtree.statement">DoubleLiteral</a></li>
@@ -203,7 +203,7 @@
<li><a href="syntaxTree/NodeEqualTest.html" title="class in syntaxTree">NodeEqualTest</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/NotEqualOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator">NotEqualOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/NotExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">NotExpr</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/NotImplementedException.html" title="class in de.dhbwstuttgart.typeinference.exceptions">NotImplementedException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/NotImplementedException.html" title="class in de.dhbwstuttgart.exceptions">NotImplementedException</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/Null.html" title="class in de.dhbwstuttgart.syntaxtree.statement">Null</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/type/ObjectType.html" title="class in de.dhbwstuttgart.syntaxtree.type">ObjectType</a></li>
<li><a href="de/dhbwstuttgart/typeinference/OderConstraint.html" title="class in de.dhbwstuttgart.typeinference">OderConstraint</a></li>
@@ -228,7 +228,7 @@
<li><a href="de/dhbwstuttgart/typeinference/assumptions/ParameterAssumption.html" title="class in de.dhbwstuttgart.typeinference.assumptions">ParameterAssumption</a></li>
<li><a href="plugindevelopment/ParameterInsertTest.html" title="class in plugindevelopment">ParameterInsertTest</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/ParameterList.html" title="class in de.dhbwstuttgart.syntaxtree">ParameterList</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/operator/PlusOp.html" title="class in de.dhbwstuttgart.syntaxtree.operator">PlusOp</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/PositivExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">PositivExpr</a></li>
<li><a href="de/dhbwstuttgart/syntaxtree/statement/PostDecExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">PostDecExpr</a></li>
@@ -282,7 +282,7 @@
<li><a href="de/dhbwstuttgart/typeinference/assumptions/TypeAssumptions.html" title="class in de.dhbwstuttgart.typeinference.assumptions">TypeAssumptions</a></li>
<li><a href="plugindevelopment/TypeInsertTests/LargeSourceCodeTests/TypedMatrixSimpleTest.html" title="class in plugindevelopment.TypeInsertTests.LargeSourceCodeTests">TypedMatrixSimpleTest</a></li>
<li><a href="plugindevelopment/TypeInsertTests/LargeSourceCodeTests/TypedMatrixTest.html" title="class in plugindevelopment.TypeInsertTests.LargeSourceCodeTests">TypedMatrixTest</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.typeinference.exceptions">TypeinferenceException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.exceptions">TypeinferenceException</a></li>
<li><a href="de/dhbwstuttgart/typeinference/TypeinferenceResultSet.html" title="class in de.dhbwstuttgart.typeinference">TypeinferenceResultSet</a></li>
<li><a href="de/dhbwstuttgart/typeinference/TypeInsertable.html" title="interface in de.dhbwstuttgart.typeinference"><span class="interfaceName">TypeInsertable</span></a></li>
<li><a href="de/dhbwstuttgart/typeinference/typedeployment/TypeInsertPoint.html" title="class in de.dhbwstuttgart.typeinference.typedeployment">TypeInsertPoint</a></li>

@@ -567,11 +567,11 @@ implements <a href="../../../de/dhbwstuttgart/core/MyCompilerAPI.html" title="in
<li class="blockList">
<h4>parse2SyntaxTree</h4>
<pre>private&nbsp;<a href="../../../de/dhbwstuttgart/syntaxtree/SourceFile.html" title="class in de.dhbwstuttgart.syntaxtree">SourceFile</a>&nbsp;parse2SyntaxTree(java.io.Reader&nbsp;fileContent)
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></pre>
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></pre>
<div class="block">Parst den Inhalt einer Datei zu einem Syntaxbaum.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></code></dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></code></dd>
</dl>
</li>
</ul>
@@ -582,7 +582,7 @@ implements <a href="../../../de/dhbwstuttgart/core/MyCompilerAPI.html" title="in
<li class="blockList">
<h4>parse</h4>
<pre>public&nbsp;void&nbsp;parse(<a href="../../../de/dhbwstuttgart/typeinference/Menge.html" title="class in de.dhbwstuttgart.typeinference">Menge</a>&lt;java.lang.String&gt;&nbsp;filenames)
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></pre>
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></pre>
<div class="block">Diese Funktion nimmt einen Menge von Dateinamen. Alle diese Dateien werden zu einem SyntaxBaum geparst.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -590,7 +590,7 @@ implements <a href="../../../de/dhbwstuttgart/core/MyCompilerAPI.html" title="in
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filenames</code> - - Eine Liste von Quellcodedateien, welche gseparst werden sollen</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></code></dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></code></dd>
</dl>
</li>
</ul>

@@ -237,7 +237,7 @@ var activeTableTab = "activeTableTab";
<h4>typeReconstruction</h4>
<pre><a href="../../../de/dhbwstuttgart/typeinference/Menge.html" title="class in de.dhbwstuttgart.typeinference">Menge</a>&lt;<a href="../../../de/dhbwstuttgart/typeinference/TypeinferenceResultSet.html" title="class in de.dhbwstuttgart.typeinference">TypeinferenceResultSet</a>&gt;&nbsp;typeReconstruction()
throws java.lang.NullPointerException,
<a href="../../../de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.typeinference.exceptions">TypeinferenceException</a></pre>
<a href="../../../de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.exceptions">TypeinferenceException</a></pre>
<div class="block">Author: Jörg Bäuerle<br/>
Ruft den Typrekonstruktionsalgorithmus auf.</div>
<dl>
@@ -247,7 +247,7 @@ var activeTableTab = "activeTableTab";
<dd><code>java.lang.NullPointerException</code> - Wenn noch kein abstrakter Syntaxbaum vorhanden
ist. @throws CTypeReconstructionException Wenn ein Fehler bei der
Typrekonstruktion auftritt.</dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.typeinference.exceptions">TypeinferenceException</a></code></dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/TypeinferenceException.html" title="class in de.dhbwstuttgart.exceptions">TypeinferenceException</a></code></dd>
</dl>
</li>
</ul>
@@ -280,13 +280,13 @@ var activeTableTab = "activeTableTab";
<li class="blockList">
<h4>parse</h4>
<pre>void&nbsp;parse(<a href="../../../de/dhbwstuttgart/typeinference/Menge.html" title="class in de.dhbwstuttgart.typeinference">Menge</a>&lt;java.lang.String&gt;&nbsp;filenames)
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></pre>
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></pre>
<div class="block">Parst zusammenhängende JavaKlassen in verschiedenen Dateien.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filenames</code> - - Eine Liste von Quellcodedateien, welche gseparst werden sollen</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></code></dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></code></dd>
</dl>
</li>
</ul>
@@ -297,7 +297,7 @@ var activeTableTab = "activeTableTab";
<li class="blockList">
<h4>parse</h4>
<pre><a href="../../../de/dhbwstuttgart/syntaxtree/SourceFile.html" title="class in de.dhbwstuttgart.syntaxtree">SourceFile</a>&nbsp;parse(java.lang.String&nbsp;sourceCode)
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></pre>
throws <a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></pre>
<div class="block">Parst den SourceCode einer Datei.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
@@ -305,7 +305,7 @@ var activeTableTab = "activeTableTab";
<dt><span class="returnLabel">Returns:</span></dt>
<dd>den aus dem sourceCode generierten Syntaxbaum</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.typeinference.exceptions">ParserError</a></code></dd>
<dd><code><a href="../../../de/dhbwstuttgart/typeinference/exceptions/ParserError.html" title="class in de.dhbwstuttgart.exceptions">ParserError</a></code></dd>
</dl>
</li>
</ul>

@@ -100,7 +100,7 @@ var activeTableTab = "activeTableTab";
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.parser.JavaClassName</li>
<li>de.dhbwstuttgart.typecheck.JavaClassName</li>
</ul>
</li>
</ul>

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.parser.JavaClassName</title>
<title>Uses of Class de.dhbwstuttgart.typecheck.JavaClassName</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
@@ -70,7 +70,7 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.parser.JavaClassName" class="title">Uses of Class<br>de.dhbwstuttgart.parser.JavaClassName</h2>
<h2 title="Uses of Class de.dhbwstuttgart.typecheck.JavaClassName" class="title">Uses of Class<br>de.dhbwstuttgart.parser.JavaClassName</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">

@@ -91,7 +91,7 @@
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#de.dhbwstuttgart.typeinference.exceptions">de.dhbwstuttgart.typeinference.exceptions</a></td>
<td class="colFirst"><a href="#de.dhbwstuttgart.exceptions">de.dhbwstuttgart.exceptions</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
@@ -160,12 +160,12 @@
</tbody>
</table>
</li>
<li class="blockList"><a name="de.dhbwstuttgart.typeinference.exceptions">
<li class="blockList"><a name="de.dhbwstuttgart.exceptions">
<!-- -->
</a>
<h3>Uses of <a href="../../../../de/dhbwstuttgart/parser/JavaParser.yyException.html" title="class in de.dhbwstuttgart.parser">JavaParser.yyException</a> in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a></h3>
<h3>Uses of <a href="../../../../de/dhbwstuttgart/parser/JavaParser.yyException.html" title="class in de.dhbwstuttgart.parser">JavaParser.yyException</a> in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a></h3>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a> with parameters of type <a href="../../../../de/dhbwstuttgart/parser/JavaParser.yyException.html" title="class in de.dhbwstuttgart.parser">JavaParser.yyException</a></span><span class="tabEnd">&nbsp;</span></caption>
<caption><span>Constructors in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a> with parameters of type <a href="../../../../de/dhbwstuttgart/parser/JavaParser.yyException.html" title="class in de.dhbwstuttgart.parser">JavaParser.yyException</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>

@@ -107,7 +107,7 @@
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#de.dhbwstuttgart.typeinference.exceptions">de.dhbwstuttgart.typeinference.exceptions</a></td>
<td class="colFirst"><a href="#de.dhbwstuttgart.exceptions">de.dhbwstuttgart.exceptions</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
@@ -238,11 +238,11 @@
</tbody>
</table>
</li>
<li class="blockList"><a name="de.dhbwstuttgart.typeinference.exceptions">
<li class="blockList"><a name="de.dhbwstuttgart.exceptions">
<!-- -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../de/dhbwstuttgart/parser/package-summary.html">de.dhbwstuttgart.parser</a> used by <a href="../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a></span><span class="tabEnd">&nbsp;</span></caption>
<caption><span>Classes in <a href="../../../de/dhbwstuttgart/parser/package-summary.html">de.dhbwstuttgart.parser</a> used by <a href="../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>

@@ -69,9 +69,9 @@
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Method</a></li>
<li><a href="#methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
@@ -100,7 +100,7 @@
<li><a href="../../../de/dhbwstuttgart/syntaxtree/GTVDeclarationContext.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.GTVDeclarationContext</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.Class</a></li>
<li><a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.ClassOrInterface</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.BasicAssumptionClass</li>
@@ -137,7 +137,7 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.<a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">Class</a></h3>
@@ -173,7 +173,7 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
</a>
<h3>Method Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.<a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">Class</a></h3>
@@ -287,9 +287,9 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Method</a></li>
<li><a href="#methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>

@@ -106,7 +106,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../de/dhbwstuttgart/syntaxtree/GTVDeclarationContext.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.GTVDeclarationContext</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.Class</li>
<li>de.dhbwstuttgart.syntaxtree.ClassOrInterface</li>
</ul>
</li>
</ul>

@@ -75,7 +75,7 @@ var activeTableTab = "activeTableTab";
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
@@ -106,7 +106,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../de/dhbwstuttgart/syntaxtree/GTVDeclarationContext.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.GTVDeclarationContext</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.Class</a></li>
<li><a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">de.dhbwstuttgart.syntaxtree.ClassOrInterface</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.Interface</li>
@@ -148,7 +148,7 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.<a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">Class</a></h3>
@@ -205,7 +205,7 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.<a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class in de.dhbwstuttgart.syntaxtree">Class</a></h3>
@@ -356,7 +356,7 @@ extends <a href="../../../de/dhbwstuttgart/syntaxtree/Class.html" title="class i
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.Class">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.ClassOrInterface">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.Class</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.ClassOrInterface</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
@@ -70,7 +70,7 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.Class" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.Class</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.ClassOrInterface" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.Class</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">

@@ -111,7 +111,7 @@
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#de.dhbwstuttgart.typeinference.exceptions">de.dhbwstuttgart.typeinference.exceptions</a></td>
<td class="colFirst"><a href="#de.dhbwstuttgart.exceptions">de.dhbwstuttgart.exceptions</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
@@ -1296,12 +1296,12 @@
</tbody>
</table>
</li>
<li class="blockList"><a name="de.dhbwstuttgart.typeinference.exceptions">
<li class="blockList"><a name="de.dhbwstuttgart.exceptions">
<!-- -->
</a>
<h3>Uses of <a href="../../../../de/dhbwstuttgart/syntaxtree/SyntaxTreeNode.html" title="class in de.dhbwstuttgart.syntaxtree">SyntaxTreeNode</a> in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a></h3>
<h3>Uses of <a href="../../../../de/dhbwstuttgart/syntaxtree/SyntaxTreeNode.html" title="class in de.dhbwstuttgart.syntaxtree">SyntaxTreeNode</a> in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a></h3>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a> with parameters of type <a href="../../../../de/dhbwstuttgart/syntaxtree/SyntaxTreeNode.html" title="class in de.dhbwstuttgart.syntaxtree">SyntaxTreeNode</a></span><span class="tabEnd">&nbsp;</span></caption>
<caption><span>Constructors in <a href="../../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a> with parameters of type <a href="../../../../de/dhbwstuttgart/syntaxtree/SyntaxTreeNode.html" title="class in de.dhbwstuttgart.syntaxtree">SyntaxTreeNode</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>

@@ -115,7 +115,7 @@
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#de.dhbwstuttgart.typeinference.exceptions">de.dhbwstuttgart.typeinference.exceptions</a></td>
<td class="colFirst"><a href="#de.dhbwstuttgart.exceptions">de.dhbwstuttgart.exceptions</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
@@ -367,11 +367,11 @@
</tbody>
</table>
</li>
<li class="blockList"><a name="de.dhbwstuttgart.typeinference.exceptions">
<li class="blockList"><a name="de.dhbwstuttgart.exceptions">
<!-- -->
</a>
<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing classes, and an explanation">
<caption><span>Classes in <a href="../../../de/dhbwstuttgart/syntaxtree/package-summary.html">de.dhbwstuttgart.syntaxtree</a> used by <a href="../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.typeinference.exceptions</a></span><span class="tabEnd">&nbsp;</span></caption>
<caption><span>Classes in <a href="../../../de/dhbwstuttgart/syntaxtree/package-summary.html">de.dhbwstuttgart.syntaxtree</a> used by <a href="../../../de/dhbwstuttgart/typeinference/exceptions/package-summary.html">de.dhbwstuttgart.exceptions</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.BoolLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.BoolLiteral</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.CharLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.CharLiteral</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.DoubleLiteral</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.FloatLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.FloatLiteral</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.IntLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.NumberLiteral</li>
</ul>
</li>
</ul>

@@ -112,7 +112,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Expr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Expr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar</li>
<li>de.dhbwstuttgart.syntaxtree.statement.LocalVar</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.NegativeExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.NegativeExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.NotExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.NotExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.Null</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.Null</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.PositivExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.PositivExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.PostDecExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostDecExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.PostIncExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostIncExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.PreDecExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreDecExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/UnaryExpr.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.UnaryExpr</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.PreIncExpr</li>
<li>de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreIncExpr</li>
</ul>
</li>
</ul>

@@ -115,7 +115,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/statement/Literal.html" title="class in de.dhbwstuttgart.syntaxtree.statement">de.dhbwstuttgart.syntaxtree.statement.Literal</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.statement.StringLiteral</li>
<li>de.dhbwstuttgart.syntaxtree.statement.literal.StringLiteral</li>
</ul>
</li>
</ul>

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.BoolLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.BoolLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.BoolLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.BoolLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.BoolLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.BoolLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.BoolLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.BoolLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.CharLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.CharLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.CharLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.CharLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.CharLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.CharLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.CharLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.CharLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.DoubleLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.DoubleLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.DoubleLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.DoubleLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.FloatLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.FloatLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.FloatLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.FloatLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.FloatLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.FloatLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.FloatLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.FloatLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.IntLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.NumberLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.IntLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.IntLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.NumberLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.IntLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.IntLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.NumberLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.LocalVar</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.LocalVar" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.LocalOrFieldVar</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.LocalVar</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.NegativeExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.NegativeExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.NegativeExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.NegativeExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.NegativeExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.NegativeExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.NegativeExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.NegativeExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.NotExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.NotExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.NotExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.NotExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.NotExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.NotExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.NotExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.NotExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.Null</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.Null</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.Null" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.Null</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.Null" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.Null</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.Null</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.Null</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.PositivExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PositivExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.PositivExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PositivExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PositivExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PositivExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.PositivExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.PositivExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.PostDecExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostDecExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.PostDecExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PostDecExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostDecExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PostDecExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.PostDecExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostDecExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.PostIncExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostIncExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.PostIncExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PostIncExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostIncExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PostIncExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.PostIncExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.PostIncExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.PreDecExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreDecExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.PreDecExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PreDecExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreDecExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PreDecExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.PreDecExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreDecExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.PreIncExpr</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreIncExpr</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.PreIncExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PreIncExpr</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreIncExpr" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.PreIncExpr</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.PreIncExpr</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.javaInternal.PreIncExpr</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -3,7 +3,7 @@
<html lang="de">
<head>
<!-- Generated by javadoc (1.8.0_05) on Tue May 12 19:56:24 CEST 2015 -->
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.StringLiteral</title>
<title>Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.StringLiteral</title>
<meta name="date" content="2015-05-12">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
@@ -70,9 +70,9 @@
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.StringLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.StringLiteral</h2>
<h2 title="Uses of Class de.dhbwstuttgart.syntaxtree.statement.literal.StringLiteral" class="title">Uses of Class<br>de.dhbwstuttgart.syntaxtree.statement.StringLiteral</h2>
</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.StringLiteral</div>
<div class="classUseContainer">No usage of de.dhbwstuttgart.syntaxtree.statement.literal.StringLiteral</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->

@@ -109,10 +109,10 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/type/ObjectType.html" title="class in de.dhbwstuttgart.syntaxtree.type">de.dhbwstuttgart.syntaxtree.type.ObjectType</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.html" title="class in de.dhbwstuttgart.syntaxtree.type">de.dhbwstuttgart.syntaxtree.type.GenericTypeVar</a></li>
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.html" title="class in de.dhbwstuttgart.syntaxtree.type">de.dhbwstuttgart.syntaxtree.type.GenericRefType</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.type.BoundedGenericTypeVar</li>
<li>de.dhbwstuttgart.syntaxtree.GenericTypeVar</li>
</ul>
</li>
</ul>
@@ -174,7 +174,7 @@ extends <a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.htm
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.type.GenericTypeVar">
<li class="blockList"><a name="fields.inherited.from.class.de.dhbwstuttgart.syntaxtree.type.GenericRefType">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.type.<a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.html" title="class in de.dhbwstuttgart.syntaxtree.type">GenericTypeVar</a></h3>
@@ -265,7 +265,7 @@ extends <a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.htm
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.type.GenericTypeVar">
<li class="blockList"><a name="methods.inherited.from.class.de.dhbwstuttgart.syntaxtree.type.GenericRefType">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;de.dhbwstuttgart.syntaxtree.type.<a href="../../../../de/dhbwstuttgart/syntaxtree/type/GenericTypeVar.html" title="class in de.dhbwstuttgart.syntaxtree.type">GenericTypeVar</a></h3>

@@ -109,7 +109,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/type/ObjectType.html" title="class in de.dhbwstuttgart.syntaxtree.type">de.dhbwstuttgart.syntaxtree.type.ObjectType</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.type.GenericTypeVar</li>
<li>de.dhbwstuttgart.syntaxtree.type.GenericRefType</li>
</ul>
</li>
</ul>

@@ -109,7 +109,7 @@ var activeTableTab = "activeTableTab";
<li><a href="../../../../de/dhbwstuttgart/syntaxtree/type/ObjectType.html" title="class in de.dhbwstuttgart.syntaxtree.type">de.dhbwstuttgart.syntaxtree.type.ObjectType</a></li>
<li>
<ul class="inheritance">
<li>de.dhbwstuttgart.syntaxtree.type.RefType</li>
<li>de.dhbwstuttgart.syntaxtree.type.RefTypeOrTPH</li>
</ul>
</li>
</ul>

Some files were not shown because too many files have changed in this diff Show More