forked from JavaTX/JavaCompilerCore
Anwenden der Regeln endet automatisch
This commit is contained in:
parent
062bc24f90
commit
631614ec69
728
.idea/workspace.xml
generated
728
.idea/workspace.xml
generated
@ -2,13 +2,17 @@
|
|||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="5cf612a7-261d-49e6-bf7a-db4b05e41151" name="Default" comment="">
|
<list default="true" id="5cf612a7-261d-49e6-bf7a-db4b05e41151" name="Default" comment="">
|
||||||
|
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintAbstract.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintAbstract.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java" />
|
||||||
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/test/strucTypes5/SolveTest.java" afterPath="$PROJECT_DIR$/test/strucTypes5/SolveTest.java" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java" afterPath="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest2.java" afterPath="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest2.java" />
|
|
||||||
</list>
|
</list>
|
||||||
<ignored path="$PROJECT_DIR$/bin/" />
|
<ignored path="$PROJECT_DIR$/bin/" />
|
||||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||||
@ -24,21 +28,11 @@
|
|||||||
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
|
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
|
||||||
<component name="FileEditorManager">
|
<component name="FileEditorManager">
|
||||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||||
<file leaf-file-name="SolveTest.java" pinned="false" current-in-tab="false">
|
<file leaf-file-name="SolveTest.java" pinned="false" current-in-tab="true">
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
|
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="-165">
|
<state relative-caret-position="-259">
|
||||||
<caret line="7" column="22" lean-forward="true" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
|
<caret line="133" column="0" lean-forward="true" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
</file>
|
|
||||||
<file leaf-file-name="SolveTest_Dev.java" pinned="false" current-in-tab="false">
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest_Dev.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="336">
|
|
||||||
<caret line="294" column="44" lean-forward="false" selection-start-line="294" selection-start-column="44" selection-end-line="294" selection-end-column="44" />
|
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
</folding>
|
</folding>
|
||||||
@ -46,101 +40,85 @@
|
|||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="Rules.java" pinned="false" current-in-tab="true">
|
<file leaf-file-name="TypeVarRefType.java" pinned="false" current-in-tab="false">
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="423">
|
||||||
|
<caret line="48" column="9" lean-forward="false" selection-start-line="48" selection-start-column="9" selection-end-line="48" selection-end-column="9" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
</file>
|
||||||
|
<file leaf-file-name="Class2String.java" pinned="false" current-in-tab="false">
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="-1605">
|
||||||
|
<caret line="17" column="13" lean-forward="false" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
</file>
|
||||||
|
<file leaf-file-name="Help.java" pinned="false" current-in-tab="false">
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="225">
|
||||||
|
<caret line="15" column="45" lean-forward="false" selection-start-line="15" selection-start-column="45" selection-end-line="15" selection-end-column="45" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
</file>
|
||||||
|
<file leaf-file-name="Ruler.java" pinned="false" current-in-tab="false">
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="210">
|
||||||
|
<caret line="56" column="37" lean-forward="true" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
</file>
|
||||||
|
<file leaf-file-name="Rules.java" pinned="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="319">
|
<state relative-caret-position="136">
|
||||||
<caret line="371" column="0" lean-forward="true" selection-start-line="371" selection-start-column="0" selection-end-line="371" selection-end-column="0" />
|
<caret line="402" column="34" lean-forward="false" selection-start-line="402" selection-start-column="34" selection-end-line="402" selection-end-column="34" />
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
<element signature="e#13279#13280#0" expanded="true" />
|
|
||||||
<element signature="e#13322#13323#0" expanded="true" />
|
|
||||||
<element signature="e#13539#13540#0" expanded="true" />
|
|
||||||
<element signature="e#13575#13576#0" expanded="true" />
|
|
||||||
<element signature="e#13655#13656#0" expanded="true" />
|
|
||||||
<element signature="e#13705#13706#0" expanded="true" />
|
|
||||||
</folding>
|
</folding>
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="TypeVarType.java" pinned="false" current-in-tab="false">
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="319">
|
|
||||||
<caret line="46" column="5" lean-forward="false" selection-start-line="46" selection-start-column="5" selection-end-line="46" selection-end-column="5" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
</file>
|
|
||||||
<file leaf-file-name="ConstraintSubType.java" pinned="false" current-in-tab="false">
|
<file leaf-file-name="ConstraintSubType.java" pinned="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="334">
|
<state relative-caret-position="426">
|
||||||
<caret line="32" column="0" lean-forward="false" selection-start-line="32" selection-start-column="0" selection-end-line="32" selection-end-column="0" />
|
<caret line="39" column="0" lean-forward="false" selection-start-line="39" selection-start-column="0" selection-end-line="39" selection-end-column="0" />
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
<element signature="e#871#872#0" expanded="true" />
|
<element signature="e#1384#1385#0" expanded="true" />
|
||||||
<element signature="e#901#902#0" expanded="true" />
|
|
||||||
<element signature="e#1071#1072#0" expanded="true" />
|
|
||||||
</folding>
|
</folding>
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="ConstraintInterface.java" pinned="false" current-in-tab="false">
|
<file leaf-file-name="InterfaceForConstraint.java" pinned="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintInterface.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="-551">
|
<state relative-caret-position="201">
|
||||||
<caret line="0" column="0" lean-forward="true" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
<caret line="25" column="0" lean-forward="false" selection-start-line="25" selection-start-column="0" selection-end-line="25" selection-end-column="0" />
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="e#490#491#0" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
<element signature="e#520#521#0" expanded="true" />
|
|
||||||
<element signature="e#575#576#0" expanded="true" />
|
|
||||||
<element signature="e#608#609#0" expanded="true" />
|
|
||||||
<element signature="e#653#654#0" expanded="true" />
|
|
||||||
<element signature="e#685#686#0" expanded="true" />
|
|
||||||
<element signature="e#744#745#0" expanded="true" />
|
|
||||||
<element signature="e#781#782#0" expanded="true" />
|
|
||||||
</folding>
|
</folding>
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="TypeVarInterface.java" pinned="false" current-in-tab="false">
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="323">
|
|
||||||
<caret line="53" column="9" lean-forward="true" selection-start-line="53" selection-start-column="9" selection-end-line="53" selection-end-column="9" />
|
|
||||||
<folding>
|
|
||||||
<element signature="e#1630#1631#0" expanded="true" />
|
|
||||||
<element signature="e#1715#1716#0" expanded="true" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
</file>
|
|
||||||
<file leaf-file-name="TypeVarAbstract.java" pinned="false" current-in-tab="false">
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="225">
|
|
||||||
<caret line="15" column="0" lean-forward="true" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
</file>
|
|
||||||
<file leaf-file-name="TypeVarFactory.java" pinned="false" current-in-tab="false">
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="150">
|
|
||||||
<caret line="24" column="87" lean-forward="true" selection-start-line="24" selection-start-column="87" selection-end-line="24" selection-end-column="87" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
</file>
|
|
||||||
</leaf>
|
</leaf>
|
||||||
</component>
|
</component>
|
||||||
<component name="FileTemplateManagerImpl">
|
<component name="FileTemplateManagerImpl">
|
||||||
@ -153,25 +131,6 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="FindInProjectRecents">
|
<component name="FindInProjectRecents">
|
||||||
<findStrings>
|
<findStrings>
|
||||||
<find>methodCa</find>
|
|
||||||
<find>getClass</find>
|
|
||||||
<find>ConstraintM</find>
|
|
||||||
<find>Fehler</find>
|
|
||||||
<find>return</find>
|
|
||||||
<find>generaTe</find>
|
|
||||||
<find>TypeVar</find>
|
|
||||||
<find>gene</find>
|
|
||||||
<find>neue Klas</find>
|
|
||||||
<find>typevarStor</find>
|
|
||||||
<find>neu</find>
|
|
||||||
<find>Not im</find>
|
|
||||||
<find>System</find>
|
|
||||||
<find>out</find>
|
|
||||||
<find>Const</find>
|
|
||||||
<find>Constraints</find>
|
|
||||||
<find>remaining</find>
|
|
||||||
<find>remain</find>
|
|
||||||
<find>neue REs</find>
|
|
||||||
<find>neue Res</find>
|
<find>neue Res</find>
|
||||||
<find>construct</find>
|
<find>construct</find>
|
||||||
<find>***</find>
|
<find>***</find>
|
||||||
@ -182,7 +141,26 @@
|
|||||||
<find>20</find>
|
<find>20</find>
|
||||||
<find>new</find>
|
<find>new</find>
|
||||||
<find>getNeu</find>
|
<find>getNeu</find>
|
||||||
|
<find>subst</find>
|
||||||
|
<find>substi</find>
|
||||||
|
<find>substitu</find>
|
||||||
|
<find>reflect</find>
|
||||||
|
<find>Regel Re</find>
|
||||||
|
<find>Replac</find>
|
||||||
|
<find>SWAP</find>
|
||||||
|
<find>TVar_28</find>
|
||||||
|
<find>TVar_25</find>
|
||||||
|
<find>Reflec</find>
|
||||||
|
<find>Refle</find>
|
||||||
|
<find>remove</find>
|
||||||
|
<find>Remove</find>
|
||||||
|
<find>reflec</find>
|
||||||
|
<find>X</find>
|
||||||
<find>adapt</find>
|
<find>adapt</find>
|
||||||
|
<find>XXX</find>
|
||||||
|
<find>Re</find>
|
||||||
|
<find>adapt2</find>
|
||||||
|
<find>erase</find>
|
||||||
</findStrings>
|
</findStrings>
|
||||||
</component>
|
</component>
|
||||||
<component name="Git.Settings">
|
<component name="Git.Settings">
|
||||||
@ -196,15 +174,10 @@
|
|||||||
<component name="IdeDocumentHistory">
|
<component name="IdeDocumentHistory">
|
||||||
<option name="CHANGED_PATHS">
|
<option name="CHANGED_PATHS">
|
||||||
<list>
|
<list>
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/ConstructTest.jav" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/factoryForSyntaxtree/FactoryForElementes.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/GenericNames.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVar.java" />
|
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest.jav" />
|
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest.jav" />
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/ConstructTest.java" />
|
<option value="$PROJECT_DIR$/test/strucTypes5/ConstructTest.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/InterfaceTemplates/MethodInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/InterfaceTemplates/MethodInterface.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes4/syntaxtree/MethodInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes4/syntaxtree/MethodInterface.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/ResultTuple.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/ResultTuple.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/interfaceTemplates/FieldInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/interfaceTemplates/FieldInterface.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/interfaceTemplates/MethodInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/interfaceTemplates/MethodInterface.java" />
|
||||||
@ -226,27 +199,32 @@
|
|||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMap.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMap.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubTypeGeneric.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubTypeGeneric.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/Construct.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/Construct.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/ConstructInterfaceTemplates.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/ConstructInterfaceTemplates.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/ChangeTypeVars.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/ChangeTypeVars.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarStore.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarStore.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TypeExpr.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TypeExpr.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubstitution.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubstitution.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/MappingAltNeu.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/MappingAltNeu.java" />
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest2.java" />
|
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest2.java" />
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" />
|
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" />
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" />
|
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintInterface.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java" />
|
||||||
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest_Dev.java" />
|
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest_Dev.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintAbstract.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/HelpListAusgabe.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java" />
|
||||||
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java" />
|
||||||
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" />
|
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" />
|
||||||
|
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.java" />
|
||||||
</list>
|
</list>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
@ -491,6 +469,32 @@
|
|||||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
</PATH_ELEMENT>
|
</PATH_ELEMENT>
|
||||||
</PATH>
|
</PATH>
|
||||||
|
<PATH>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="JavaCompilerCore" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="JavaCompilerCore" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="src" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="dhbwstuttgart" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="strucTypes5" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
<PATH_ELEMENT>
|
||||||
|
<option name="myItemId" value="ausgabe" />
|
||||||
|
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||||
|
</PATH_ELEMENT>
|
||||||
|
</PATH>
|
||||||
<PATH>
|
<PATH>
|
||||||
<PATH_ELEMENT>
|
<PATH_ELEMENT>
|
||||||
<option name="myItemId" value="JavaCompilerCore" />
|
<option name="myItemId" value="JavaCompilerCore" />
|
||||||
@ -541,7 +545,7 @@
|
|||||||
<recent name="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5" />
|
<recent name="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5" />
|
||||||
</key>
|
</key>
|
||||||
</component>
|
</component>
|
||||||
<component name="RunManager" selected="JUnit.SolveTest_Dev.run">
|
<component name="RunManager" selected="JUnit.SolveTest.run">
|
||||||
<configuration default="false" name="NewOperatorTest2.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
<configuration default="false" name="NewOperatorTest2.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||||
<pattern>
|
<pattern>
|
||||||
@ -594,32 +598,6 @@
|
|||||||
<patterns />
|
<patterns />
|
||||||
<method />
|
<method />
|
||||||
</configuration>
|
</configuration>
|
||||||
<configuration default="false" name="TypeExprTest.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
|
||||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
|
||||||
<pattern>
|
|
||||||
<option name="PATTERN" value="strucTypes5.*" />
|
|
||||||
<option name="ENABLED" value="true" />
|
|
||||||
</pattern>
|
|
||||||
</extension>
|
|
||||||
<module name="JavaCompilerCore" />
|
|
||||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
|
||||||
<option name="ALTERNATIVE_JRE_PATH" />
|
|
||||||
<option name="PACKAGE_NAME" value="strucTypes5" />
|
|
||||||
<option name="MAIN_CLASS_NAME" value="strucTypes5.TypeExprTest" />
|
|
||||||
<option name="METHOD_NAME" value="run" />
|
|
||||||
<option name="TEST_OBJECT" value="method" />
|
|
||||||
<option name="VM_PARAMETERS" value="-ea" />
|
|
||||||
<option name="PARAMETERS" />
|
|
||||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
|
||||||
<option name="ENV_VARIABLES" />
|
|
||||||
<option name="PASS_PARENT_ENVS" value="true" />
|
|
||||||
<option name="TEST_SEARCH_SCOPE">
|
|
||||||
<value defaultName="singleModule" />
|
|
||||||
</option>
|
|
||||||
<envs />
|
|
||||||
<patterns />
|
|
||||||
<method />
|
|
||||||
</configuration>
|
|
||||||
<configuration default="false" name="NewOperatorTest3" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
<configuration default="false" name="NewOperatorTest3" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||||
<pattern>
|
<pattern>
|
||||||
@ -672,6 +650,32 @@
|
|||||||
<patterns />
|
<patterns />
|
||||||
<method />
|
<method />
|
||||||
</configuration>
|
</configuration>
|
||||||
|
<configuration default="false" name="SolveTest.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||||
|
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||||
|
<pattern>
|
||||||
|
<option name="PATTERN" value="strucTypes5.*" />
|
||||||
|
<option name="ENABLED" value="true" />
|
||||||
|
</pattern>
|
||||||
|
</extension>
|
||||||
|
<module name="JavaCompilerCore" />
|
||||||
|
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||||
|
<option name="ALTERNATIVE_JRE_PATH" />
|
||||||
|
<option name="PACKAGE_NAME" value="strucTypes5" />
|
||||||
|
<option name="MAIN_CLASS_NAME" value="strucTypes5.SolveTest" />
|
||||||
|
<option name="METHOD_NAME" value="run" />
|
||||||
|
<option name="TEST_OBJECT" value="method" />
|
||||||
|
<option name="VM_PARAMETERS" value="-ea" />
|
||||||
|
<option name="PARAMETERS" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||||
|
<option name="ENV_VARIABLES" />
|
||||||
|
<option name="PASS_PARENT_ENVS" value="true" />
|
||||||
|
<option name="TEST_SEARCH_SCOPE">
|
||||||
|
<value defaultName="singleModule" />
|
||||||
|
</option>
|
||||||
|
<envs />
|
||||||
|
<patterns />
|
||||||
|
<method />
|
||||||
|
</configuration>
|
||||||
<configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
|
<configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
|
||||||
<module name="" />
|
<module name="" />
|
||||||
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
|
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
|
||||||
@ -1055,17 +1059,17 @@
|
|||||||
<list size="5">
|
<list size="5">
|
||||||
<item index="0" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
|
<item index="0" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
|
||||||
<item index="1" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
|
<item index="1" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
|
||||||
<item index="2" class="java.lang.String" itemvalue="JUnit.TypeExprTest.run" />
|
<item index="2" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
|
||||||
<item index="3" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
|
<item index="3" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
|
||||||
<item index="4" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
|
<item index="4" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
|
||||||
</list>
|
</list>
|
||||||
<recent_temporary>
|
<recent_temporary>
|
||||||
<list size="5">
|
<list size="5">
|
||||||
<item index="0" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
|
<item index="0" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
|
||||||
<item index="1" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
|
<item index="1" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
|
||||||
<item index="2" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
|
<item index="2" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
|
||||||
<item index="3" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
|
<item index="3" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
|
||||||
<item index="4" class="java.lang.String" itemvalue="JUnit.TypeExprTest.run" />
|
<item index="4" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
|
||||||
</list>
|
</list>
|
||||||
</recent_temporary>
|
</recent_temporary>
|
||||||
</component>
|
</component>
|
||||||
@ -1083,48 +1087,48 @@
|
|||||||
<option name="presentableId" value="Default" />
|
<option name="presentableId" value="Default" />
|
||||||
<updated>1492600650522</updated>
|
<updated>1492600650522</updated>
|
||||||
<workItem from="1492600653626" duration="3746000" />
|
<workItem from="1492600653626" duration="3746000" />
|
||||||
<workItem from="1492623646935" duration="164646000" />
|
<workItem from="1492623646935" duration="191515000" />
|
||||||
</task>
|
</task>
|
||||||
<servers />
|
<servers />
|
||||||
</component>
|
</component>
|
||||||
<component name="TestHistory">
|
<component name="TestHistory">
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 00h 47m 31s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 08h 49m 16s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 29m 15s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 08h 49m 46s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 33m 30s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 08h 53m 38s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 35m 48s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 08h 55m 31s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 37m 14s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 18m 31s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 54m 42s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 18m 58s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 58m 40s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 26m 07s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 01h 58m 57s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 46m 53s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 02h 03m 04s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 47m 59s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
<history-entry file="SolveTest_Dev_run - 2017.05.03 at 02h 04m 50s.xml">
|
<history-entry file="SolveTest_run - 2017.05.03 at 09h 49m 20s.xml">
|
||||||
<configuration name="SolveTest_Dev.run" configurationId="JUnit" />
|
<configuration name="SolveTest.run" configurationId="JUnit" />
|
||||||
</history-entry>
|
</history-entry>
|
||||||
</component>
|
</component>
|
||||||
<component name="TimeTrackingManager">
|
<component name="TimeTrackingManager">
|
||||||
<option name="totallyTimeSpent" value="168392000" />
|
<option name="totallyTimeSpent" value="195261000" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ToolWindowManager">
|
<component name="ToolWindowManager">
|
||||||
<frame x="-2" y="27" width="1442" height="863" extended-state="0" />
|
<frame x="-2" y="27" width="1442" height="863" extended-state="0" />
|
||||||
<editor active="false" />
|
<editor active="true" />
|
||||||
<layout>
|
<layout>
|
||||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Tool Output" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
<window_info id="Tool Output" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||||
@ -1145,10 +1149,10 @@
|
|||||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.35602096" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
<window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.4751309" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32984293" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32984293" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
|
<window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="true" content_ui="tabs" />
|
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="true" content_ui="tabs" />
|
||||||
@ -1183,7 +1187,7 @@
|
|||||||
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.35602096" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.4751309" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
||||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||||
@ -1218,8 +1222,14 @@
|
|||||||
<properties />
|
<properties />
|
||||||
<option name="timeStamp" value="14" />
|
<option name="timeStamp" value="14" />
|
||||||
</line-breakpoint>
|
</line-breakpoint>
|
||||||
|
<line-breakpoint enabled="true" type="java-method">
|
||||||
|
<url>file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java</url>
|
||||||
|
<line>160</line>
|
||||||
|
<properties class="de.dhbwstuttgart.strucTypes5.solve.Rules" />
|
||||||
|
<option name="timeStamp" value="47" />
|
||||||
|
</line-breakpoint>
|
||||||
</breakpoints>
|
</breakpoints>
|
||||||
<option name="time" value="34" />
|
<option name="time" value="57" />
|
||||||
</breakpoint-manager>
|
</breakpoint-manager>
|
||||||
<watches-manager />
|
<watches-manager />
|
||||||
</component>
|
</component>
|
||||||
@ -1228,88 +1238,6 @@
|
|||||||
<option name="FILTER_TARGETS" value="false" />
|
<option name="FILTER_TARGETS" value="false" />
|
||||||
</component>
|
</component>
|
||||||
<component name="editorHistoryManager">
|
<component name="editorHistoryManager">
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/typeinference/unify/Unifikationsalgorithmus.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="60">
|
|
||||||
<caret line="6" column="17" lean-forward="false" selection-start-line="6" selection-start-column="17" selection-end-line="6" selection-end-column="17" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/typeinference/unify/MartelliMontanariUnify.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="330">
|
|
||||||
<caret line="25" column="36" lean-forward="false" selection-start-line="25" selection-start-column="36" selection-end-line="25" selection-end-column="36" />
|
|
||||||
<folding>
|
|
||||||
<element signature="imports" expanded="false" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/NewOperatorTest.jav">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="195">
|
|
||||||
<caret line="13" column="0" lean-forward="true" selection-start-line="13" selection-start-column="0" selection-end-line="13" selection-end-column="0" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/typeinference/unify/GuavaSetOperations.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="90">
|
|
||||||
<caret line="11" column="18" lean-forward="false" selection-start-line="11" selection-start-column="18" selection-end-line="11" selection-end-column="18" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintFactory.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="210">
|
|
||||||
<caret line="22" column="66" lean-forward="false" selection-start-line="22" selection-start-column="66" selection-end-line="22" selection-end-column="66" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/FieldTest.jav">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="120">
|
|
||||||
<caret line="8" column="8" lean-forward="true" selection-start-line="8" selection-start-column="8" selection-end-line="8" selection-end-column="8" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/Start.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="75">
|
|
||||||
<caret line="5" column="13" lean-forward="false" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/Main.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="75">
|
|
||||||
<caret line="5" column="13" lean-forward="false" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/AssumptionTest.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="204">
|
|
||||||
<caret line="44" column="16" lean-forward="false" selection-start-line="44" selection-start-column="16" selection-end-line="44" selection-end-column="16" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/FieldTest.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="263">
|
|
||||||
<caret line="30" column="32" lean-forward="false" selection-start-line="30" selection-start-column="32" selection-end-line="30" selection-end-column="32" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMethod.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMethod.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="60">
|
<state relative-caret-position="60">
|
||||||
@ -1412,14 +1340,6 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="105">
|
|
||||||
<caret line="17" column="13" lean-forward="false" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVar.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVar.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="255">
|
<state relative-caret-position="255">
|
||||||
@ -1470,26 +1390,6 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="120">
|
|
||||||
<caret line="8" column="61" lean-forward="false" selection-start-line="8" selection-start-column="61" selection-end-line="8" selection-end-column="61" />
|
|
||||||
<folding>
|
|
||||||
<element signature="imports" expanded="true" />
|
|
||||||
<element signature="e#503#504#0" expanded="true" />
|
|
||||||
<element signature="e#528#529#0" expanded="true" />
|
|
||||||
<element signature="e#573#574#0" expanded="true" />
|
|
||||||
<element signature="e#601#602#0" expanded="true" />
|
|
||||||
<element signature="e#639#640#0" expanded="true" />
|
|
||||||
<element signature="e#664#665#0" expanded="true" />
|
|
||||||
<element signature="e#709#710#0" expanded="true" />
|
|
||||||
<element signature="e#737#738#0" expanded="true" />
|
|
||||||
<element signature="e#783#784#0" expanded="true" />
|
|
||||||
<element signature="e#865#866#0" expanded="true" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/NewOperatorTest3.java">
|
<entry file="file://$PROJECT_DIR$/test/strucTypes5/NewOperatorTest3.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="150">
|
<state relative-caret-position="150">
|
||||||
@ -1560,16 +1460,6 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="904">
|
|
||||||
<caret line="115" column="33" lean-forward="false" selection-start-line="115" selection-start-column="33" selection-end-line="115" selection-end-column="33" />
|
|
||||||
<folding>
|
|
||||||
<element signature="imports" expanded="true" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/syntaxtree/type/RefType.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/syntaxtree/type/RefType.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="-600">
|
<state relative-caret-position="-600">
|
||||||
@ -1578,35 +1468,14 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubstitution.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="105">
|
<state relative-caret-position="319">
|
||||||
<caret line="7" column="13" lean-forward="false" selection-start-line="7" selection-start-column="13" selection-end-line="7" selection-end-column="13" />
|
<caret line="46" column="5" lean-forward="false" selection-start-line="46" selection-start-column="5" selection-end-line="46" selection-end-column="5" />
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="109">
|
|
||||||
<caret line="10" column="13" lean-forward="false" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
|
|
||||||
<folding>
|
|
||||||
<element signature="imports" expanded="true" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="-4">
|
|
||||||
<caret line="9" column="17" lean-forward="false" selection-start-line="9" selection-start-column="17" selection-end-line="9" selection-end-column="17" />
|
|
||||||
<folding>
|
|
||||||
<element signature="e#344#345#0" expanded="true" />
|
|
||||||
<element signature="e#374#375#0" expanded="true" />
|
|
||||||
</folding>
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarAbstract.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="225">
|
<state relative-caret-position="225">
|
||||||
@ -1615,6 +1484,14 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="150">
|
||||||
|
<caret line="24" column="87" lean-forward="true" selection-start-line="24" selection-start-column="87" selection-end-line="24" selection-end-column="87" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarInterface.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="323">
|
<state relative-caret-position="323">
|
||||||
@ -1643,31 +1520,178 @@
|
|||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java">
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/algo/TI.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="334">
|
<state relative-caret-position="195">
|
||||||
<caret line="32" column="0" lean-forward="false" selection-start-line="32" selection-start-column="0" selection-end-line="32" selection-end-column="0" />
|
<caret line="121" column="0" lean-forward="true" selection-start-line="121" selection-start-column="0" selection-end-line="121" selection-end-column="0" />
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="false" />
|
||||||
<element signature="e#871#872#0" expanded="true" />
|
|
||||||
<element signature="e#901#902#0" expanded="true" />
|
|
||||||
<element signature="e#1071#1072#0" expanded="true" />
|
|
||||||
</folding>
|
</folding>
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="319">
|
|
||||||
<caret line="46" column="5" lean-forward="false" selection-start-line="46" selection-start-column="5" selection-end-line="46" selection-end-column="5" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest_Dev.java">
|
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest_Dev.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="336">
|
<state relative-caret-position="231">
|
||||||
<caret line="294" column="44" lean-forward="false" selection-start-line="294" selection-start-column="44" selection-end-line="294" selection-end-column="44" />
|
<caret line="305" column="17" lean-forward="false" selection-start-line="305" selection-start-column="17" selection-end-line="305" selection-end-column="17" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="false" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubstitution.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="105">
|
||||||
|
<caret line="7" column="13" lean-forward="false" selection-start-line="7" selection-start-column="13" selection-end-line="7" selection-end-column="13" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/internal/runners/model/ReflectiveCallable.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="180">
|
||||||
|
<caret line="15" column="0" lean-forward="false" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/runners/BlockJUnit4ClassRunner.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="315">
|
||||||
|
<caret line="50" column="0" lean-forward="false" selection-start-line="50" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/runner/JUnitCore.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="227">
|
||||||
|
<caret line="81" column="0" lean-forward="false" selection-start-line="81" selection-start-column="0" selection-end-line="81" selection-end-column="0" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/runners/ParentRunner.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="343">
|
||||||
|
<caret line="240" column="0" lean-forward="false" selection-start-line="240" selection-start-column="0" selection-end-line="240" selection-end-column="0" />
|
||||||
|
<folding>
|
||||||
|
<element signature="e#2137#2138#0" expanded="true" />
|
||||||
|
<element signature="e#2181#2182#0" expanded="true" />
|
||||||
|
<element signature="e#5891#6026#0" expanded="true" />
|
||||||
|
<element signature="e#6025#6026#0" expanded="true" />
|
||||||
|
<element signature="e#6429#6593#0" expanded="true" />
|
||||||
|
<element signature="e#6592#6593#0" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/internal/runners/statements/InvokeMethod.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="255">
|
||||||
|
<caret line="21" column="0" lean-forward="false" selection-start-line="21" selection-start-column="0" selection-end-line="21" selection-end-column="0" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="-1605">
|
||||||
|
<caret line="17" column="13" lean-forward="false" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintShouldEqual.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="15">
|
||||||
|
<caret line="22" column="34" lean-forward="false" selection-start-line="22" selection-start-column="34" selection-end-line="22" selection-end-column="34" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/org/junit/runners/model/FrameworkMethod.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="283">
|
||||||
|
<caret line="33" column="0" lean-forward="false" selection-start-line="33" selection-start-column="0" selection-end-line="33" selection-end-column="0" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="225">
|
||||||
|
<caret line="15" column="45" lean-forward="false" selection-start-line="15" selection-start-column="45" selection-end-line="15" selection-end-column="45" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="423">
|
||||||
|
<caret line="48" column="9" lean-forward="false" selection-start-line="48" selection-start-column="9" selection-end-line="48" selection-end-column="9" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintAbstract.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="300">
|
||||||
|
<caret line="20" column="9" lean-forward="true" selection-start-line="20" selection-start-column="9" selection-end-line="20" selection-end-column="9" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
<element signature="e#350#351#0" expanded="true" />
|
||||||
|
<element signature="e#378#379#0" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/InterfaceForConstraint.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="201">
|
||||||
|
<caret line="25" column="0" lean-forward="false" selection-start-line="25" selection-start-column="0" selection-end-line="25" selection-end-column="0" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="jar:///opt/Oracle_Java/jdk1.8.0_102/jre/lib/rt.jar!/sun/reflect/NativeMethodAccessorImpl.class">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="360">
|
||||||
|
<caret line="37" column="33" lean-forward="false" selection-start-line="37" selection-start-column="33" selection-end-line="37" selection-end-column="33" />
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubType.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="426">
|
||||||
|
<caret line="39" column="0" lean-forward="false" selection-start-line="39" selection-start-column="0" selection-end-line="39" selection-end-column="0" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
<element signature="e#1384#1385#0" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="136">
|
||||||
|
<caret line="402" column="34" lean-forward="false" selection-start-line="402" selection-start-column="34" selection-end-line="402" selection-end-column="34" />
|
||||||
|
<folding>
|
||||||
|
<element signature="imports" expanded="true" />
|
||||||
|
</folding>
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state relative-caret-position="210">
|
||||||
|
<caret line="56" column="37" lean-forward="true" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
</folding>
|
</folding>
|
||||||
@ -1676,32 +1700,10 @@
|
|||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
|
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state relative-caret-position="-165">
|
<state relative-caret-position="-259">
|
||||||
<caret line="7" column="22" lean-forward="true" selection-start-line="7" selection-start-column="22" selection-end-line="7" selection-end-column="22" />
|
<caret line="133" column="0" lean-forward="true" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="150">
|
|
||||||
<caret line="24" column="87" lean-forward="true" selection-start-line="24" selection-start-column="87" selection-end-line="24" selection-end-column="87" />
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state relative-caret-position="319">
|
|
||||||
<caret line="371" column="0" lean-forward="true" selection-start-line="371" selection-start-column="0" selection-end-line="371" selection-end-column="0" />
|
|
||||||
<folding>
|
<folding>
|
||||||
<element signature="imports" expanded="true" />
|
<element signature="imports" expanded="true" />
|
||||||
<element signature="e#13279#13280#0" expanded="true" />
|
|
||||||
<element signature="e#13322#13323#0" expanded="true" />
|
|
||||||
<element signature="e#13539#13540#0" expanded="true" />
|
|
||||||
<element signature="e#13575#13576#0" expanded="true" />
|
|
||||||
<element signature="e#13655#13656#0" expanded="true" />
|
|
||||||
<element signature="e#13705#13706#0" expanded="true" />
|
|
||||||
</folding>
|
</folding>
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
@ -28,6 +28,9 @@ public class TI {
|
|||||||
|
|
||||||
public AssumptionMap assresult;
|
public AssumptionMap assresult;
|
||||||
|
|
||||||
|
// Nur zum Test
|
||||||
|
public List<ConstraintAbstract> resultConstraints;
|
||||||
|
|
||||||
|
|
||||||
// Start TypeInference Algorithm, need Assumptions and a Class
|
// Start TypeInference Algorithm, need Assumptions and a Class
|
||||||
public TI(AssumptionMap ass , ClassOrInterface cl) {
|
public TI(AssumptionMap ass , ClassOrInterface cl) {
|
||||||
@ -115,6 +118,7 @@ public class TI {
|
|||||||
// Result of Construct Basis für die Unifikation
|
// Result of Construct Basis für die Unifikation
|
||||||
System.out.println("Result of Solve: ");
|
System.out.println("Result of Solve: ");
|
||||||
System.out.println(newResultConstraints);
|
System.out.println(newResultConstraints);
|
||||||
|
this.resultConstraints = newResultConstraints;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
26
src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java
Normal file
26
src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
package de.dhbwstuttgart.strucTypes5.ausgabe;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by sebastian on 03.05.17.
|
||||||
|
*/
|
||||||
|
public class Help {
|
||||||
|
|
||||||
|
public static void print(String head, List liste) {
|
||||||
|
|
||||||
|
System.out.println("\n");
|
||||||
|
|
||||||
|
System.out.println("---------------");
|
||||||
|
System.out.println(head);
|
||||||
|
System.out.println("-----------------");
|
||||||
|
|
||||||
|
for (Object e : liste) {
|
||||||
|
System.out.println(e + "\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -1,7 +1,38 @@
|
|||||||
package de.dhbwstuttgart.strucTypes5.constraints;
|
package de.dhbwstuttgart.strucTypes5.constraints;
|
||||||
|
|
||||||
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarInterface;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by sebastian on 20.04.17.
|
* Created by sebastian on 20.04.17.
|
||||||
*/
|
*/
|
||||||
public class ConstraintAbstract {
|
public abstract class ConstraintAbstract {
|
||||||
|
|
||||||
|
public boolean replaceTypeVarAbstract(TypeVarAbstract alt, TypeVarAbstract neu) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static TypeVarAbstract helpChange(TypeVarAbstract old, TypeVarAbstract neu, TypeVarAbstract inFrage) {
|
||||||
|
if (inFrage instanceof TypeVarInterface) {
|
||||||
|
((TypeVarInterface) inFrage).getInterfaceForConstraint().replaceTypeVarAbstract(old,neu);
|
||||||
|
return inFrage;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return neu;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static boolean helpChange2(TypeVarAbstract old, TypeVarAbstract neu, TypeVarAbstract inFrage) {
|
||||||
|
if (inFrage instanceof TypeVarInterface) {
|
||||||
|
ConstraintAbstract.helpChange(old,neu,inFrage);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,20 @@ public class ConstraintShouldEqual extends ConstraintAbstract{
|
|||||||
this.t2 = t2;
|
this.t2 = t2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean replaceTypeVarAbstract(TypeVarAbstract alt, TypeVarAbstract neu) {
|
||||||
|
if (t1.equals(alt)) {
|
||||||
|
t1 = ConstraintAbstract.helpChange(alt,neu,t1);
|
||||||
|
}
|
||||||
|
if (t2.equals(alt)) {
|
||||||
|
t2 = ConstraintAbstract.helpChange(alt,neu,t2);
|
||||||
|
}
|
||||||
|
ConstraintAbstract.helpChange2(alt,neu,t1);
|
||||||
|
ConstraintAbstract.helpChange2(alt,neu,t2);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public TypeVarAbstract getT1() {
|
public TypeVarAbstract getT1() {
|
||||||
return t1;
|
return t1;
|
||||||
}
|
}
|
||||||
|
@ -21,6 +21,21 @@ public class ConstraintSubType extends ConstraintAbstract{
|
|||||||
this.superType = superType;
|
this.superType = superType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean replaceTypeVarAbstract(TypeVarAbstract alt, TypeVarAbstract neu) {
|
||||||
|
if (subtype.equals(alt)) {
|
||||||
|
subtype = ConstraintAbstract.helpChange(alt,neu,subtype);
|
||||||
|
}
|
||||||
|
if (superType.equals(alt)) {
|
||||||
|
superType = ConstraintAbstract.helpChange(alt,neu,superType);
|
||||||
|
}
|
||||||
|
ConstraintAbstract.helpChange2(alt,neu,subtype);
|
||||||
|
ConstraintAbstract.helpChange2(alt,neu,superType);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public TypeVarAbstract getSubtype() {
|
public TypeVarAbstract getSubtype() {
|
||||||
return subtype;
|
return subtype;
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ package de.dhbwstuttgart.strucTypes5.constraints;
|
|||||||
import de.dhbwstuttgart.strucTypes5.algo.Type;
|
import de.dhbwstuttgart.strucTypes5.algo.Type;
|
||||||
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -19,6 +20,26 @@ public class InterfaceForConstraint {
|
|||||||
this.generics = generics;
|
this.generics = generics;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public boolean replaceTypeVarAbstract(TypeVarAbstract alt, TypeVarAbstract neu) {
|
||||||
|
|
||||||
|
List<TypeVarAbstract> genericsneu = new ArrayList<>();
|
||||||
|
|
||||||
|
for (TypeVarAbstract tv : generics) {
|
||||||
|
if (tv.equals(alt)) {
|
||||||
|
genericsneu.add(neu);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
genericsneu.add(tv);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
generics = genericsneu;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public TypeVarAbstract getStrucType() {
|
public TypeVarAbstract getStrucType() {
|
||||||
return strucType;
|
return strucType;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,76 @@
|
|||||||
package de.dhbwstuttgart.strucTypes5.solve;
|
package de.dhbwstuttgart.strucTypes5.solve;
|
||||||
|
|
||||||
|
import de.dhbwstuttgart.strucTypes5.ausgabe.Help;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.constraints.ConstraintAbstract;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.constraints.ConstraintInterface;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.constraints.ConstraintSubstitution;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by sebastian on 03.05.17.
|
* Created by sebastian on 03.05.17.
|
||||||
*/
|
*/
|
||||||
public class Ruler {
|
public class Ruler {
|
||||||
|
|
||||||
|
|
||||||
|
List<ConstraintInterface> constraintInterfaceList;
|
||||||
|
List<ConstraintSubstitution> substitutionList;
|
||||||
|
List<ConstraintAbstract> constraintList;
|
||||||
|
|
||||||
|
|
||||||
|
public Ruler(List<ConstraintInterface> constraintInterfaceList, List<ConstraintSubstitution> substitutionList, List<ConstraintAbstract> constraintList) {
|
||||||
|
this.constraintInterfaceList = constraintInterfaceList;
|
||||||
|
this.substitutionList = substitutionList;
|
||||||
|
this.constraintList = constraintList;
|
||||||
|
}
|
||||||
|
|
||||||
|
// gibt nur die Substitionen zurück
|
||||||
|
private List<ConstraintSubstitution> ruleAll(List<ConstraintAbstract> constraints, List<ConstraintSubstitution> substitutions) {
|
||||||
|
|
||||||
|
Rules rules = new Rules();
|
||||||
|
rules.setConstraintInterfaces(constraintInterfaceList);
|
||||||
|
rules.setSubstitutions(substitutions);
|
||||||
|
|
||||||
|
rules.reduceEqual(constraints);
|
||||||
|
rules.adapt2(constraints);
|
||||||
|
rules.adapt1(constraints);
|
||||||
|
rules.erase1(constraints);
|
||||||
|
rules.erase2(constraints);
|
||||||
|
rules.swap(constraints);
|
||||||
|
rules.subst(constraints);
|
||||||
|
rules.reflect(constraints);
|
||||||
|
return rules.getSubstitutions();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void rule() {
|
||||||
|
//System.out.println("StartConstraints: " + constraintList);
|
||||||
|
Help.print("StartConstraints" , constraintList);
|
||||||
|
substitutionList = ruleAll(constraintList,substitutionList);
|
||||||
|
Help.print("Aktuelle Substitutionen: " ,substitutionList);
|
||||||
|
Help.print("Aktuelle Constriants: " , constraintList);
|
||||||
|
|
||||||
|
/*
|
||||||
|
for (int i = 0 ; i < 10 ; i++) {
|
||||||
|
Rules r = new Rules();
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.erase2(constraintList);
|
||||||
|
r.reflect(constraintList);
|
||||||
|
r.reflect(constraintList);
|
||||||
|
r.reflect(constraintList);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,15 +1,16 @@
|
|||||||
package de.dhbwstuttgart.strucTypes5.solve;
|
package de.dhbwstuttgart.strucTypes5.solve;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import de.dhbwstuttgart.strucTypes5.algo.Type;
|
import de.dhbwstuttgart.strucTypes5.algo.Type;
|
||||||
import de.dhbwstuttgart.strucTypes5.constraints.*;
|
import de.dhbwstuttgart.strucTypes5.constraints.*;
|
||||||
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVar;
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVar;
|
||||||
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
|
||||||
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarInterface;
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarInterface;
|
||||||
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarRefType;
|
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarRefType;
|
||||||
import de.dhbwstuttgart.syntaxtree.Generic;
|
|
||||||
import de.dhbwstuttgart.typeinference.constraints.Constraint;
|
import de.dhbwstuttgart.typeinference.constraints.Constraint;
|
||||||
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -27,8 +28,9 @@ public class Rules {
|
|||||||
|
|
||||||
- Rules given by Plümicke
|
- Rules given by Plümicke
|
||||||
- reduce (1/2) reduceEqual implemented
|
- reduce (1/2) reduceEqual implemented
|
||||||
|
- reduce 2 (not implemented)
|
||||||
- adapt1 - implemented
|
- adapt1 - implemented
|
||||||
- adapt2 -
|
- adapt2 - implemented
|
||||||
- erase1 - implemented
|
- erase1 - implemented
|
||||||
- erase2 - implemented
|
- erase2 - implemented
|
||||||
- swap - implemented
|
- swap - implemented
|
||||||
@ -46,6 +48,7 @@ public class Rules {
|
|||||||
if (csst.getSubtype() instanceof TypeVarRefType && csst.getSuperType() instanceof TypeVarRefType) {
|
if (csst.getSubtype() instanceof TypeVarRefType && csst.getSuperType() instanceof TypeVarRefType) {
|
||||||
if (csst.getSubtype().equals(csst.getSuperType())) {
|
if (csst.getSubtype().equals(csst.getSuperType())) {
|
||||||
constraints.remove(cs);
|
constraints.remove(cs);
|
||||||
|
System.out.println("Regel Erase1 "+ cs);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -60,6 +63,7 @@ public class Rules {
|
|||||||
if (csse.getT1() instanceof TypeVarRefType && csse.getT2() instanceof TypeVarRefType) {
|
if (csse.getT1() instanceof TypeVarRefType && csse.getT2() instanceof TypeVarRefType) {
|
||||||
if (csse.getT1().equals(csse.getT2())) {
|
if (csse.getT1().equals(csse.getT2())) {
|
||||||
constraints.remove(cs);
|
constraints.remove(cs);
|
||||||
|
System.out.println("Regel Erase 2" + cs);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -79,6 +83,7 @@ public class Rules {
|
|||||||
if (theta instanceof TypeVarRefType && typeVar instanceof TypeVar) {
|
if (theta instanceof TypeVarRefType && typeVar instanceof TypeVar) {
|
||||||
csse.setT1(typeVar);
|
csse.setT1(typeVar);
|
||||||
csse.setT2(theta);
|
csse.setT2(theta);
|
||||||
|
System.out.println("Regel Swap" + csse);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -100,16 +105,48 @@ public class Rules {
|
|||||||
|
|
||||||
if (t1 instanceof TypeVar) {
|
if (t1 instanceof TypeVar) {
|
||||||
if (t2 instanceof TypeVarRefType || t2 instanceof TypeVarInterface) {
|
if (t2 instanceof TypeVarRefType || t2 instanceof TypeVarInterface) {
|
||||||
ConstraintSubstitution constraintSubstitution = new ConstraintSubstitution(t1 , t2);
|
|
||||||
substitutions.add(constraintSubstitution);
|
if (!occursCheck((TypeVar) t1)) {
|
||||||
// Todo Occors Check
|
ConstraintSubstitution constraintSubstitution = new ConstraintSubstitution(t1, t2);
|
||||||
return;
|
replaceAll(constraints,t1,t2);
|
||||||
|
substitutions.add(constraintSubstitution);
|
||||||
|
System.out.println("Regel Substitution" + constraintSubstitution);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// für substitution
|
||||||
|
public boolean occursCheck(TypeVar t) {
|
||||||
|
for (ConstraintSubstitution cs : substitutions) {
|
||||||
|
if (cs.getT1().equals(t)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void replaceAll(List<ConstraintAbstract> constraints , TypeVarAbstract alt , TypeVarAbstract neu ) {
|
||||||
|
|
||||||
|
System.out.println(String.format("Replace All: %s -> %s" , alt , neu ));
|
||||||
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
// replace
|
||||||
|
cs.replaceTypeVarAbstract(alt,neu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// ToDo Not implemented
|
// ToDo Not implemented
|
||||||
public void reduce(List<ConstraintAbstract> constraints) {
|
public void reduce(List<ConstraintAbstract> constraints) {
|
||||||
for (ConstraintAbstract cs : constraints) {
|
for (ConstraintAbstract cs : constraints) {
|
||||||
@ -118,6 +155,8 @@ public class Rules {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
// Todo wer sagt dass man nicht irgendwo in der mitte anfängt
|
// Todo wer sagt dass man nicht irgendwo in der mitte anfängt
|
||||||
public void reflect(List<ConstraintAbstract> constriants) {
|
public void reflect(List<ConstraintAbstract> constriants) {
|
||||||
for (ConstraintAbstract cs : constriants) {
|
for (ConstraintAbstract cs : constriants) {
|
||||||
@ -126,17 +165,15 @@ public class Rules {
|
|||||||
|
|
||||||
if (t1 instanceof TypeVarRefType || t1 instanceof TypeVarInterface ) {
|
if (t1 instanceof TypeVarRefType || t1 instanceof TypeVarInterface ) {
|
||||||
// Hier muss geschaut werden ob es einen nächsten gibt
|
// Hier muss geschaut werden ob es einen nächsten gibt
|
||||||
List<TypeVar> chain = reflectNext(t1,((ConstraintSubType) cs).getSubtype() , constriants);
|
List<TypeVar> chain = reflectNext(t1,((ConstraintSubType) cs).getSuperType() , constriants);
|
||||||
if (chain != null) {
|
if (chain != null) {
|
||||||
System.out.println("erfolg");
|
System.out.println("Regel Reflect");
|
||||||
System.out.println(chain);
|
System.out.println(chain);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
System.out.println("kein erfolg");
|
System.out.println("kein erfolg Reflect");
|
||||||
return;
|
//return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -162,7 +199,7 @@ public class Rules {
|
|||||||
// Füge Type Var in die Kette ein
|
// Füge Type Var in die Kette ein
|
||||||
// ToDo Substituion
|
// ToDo Substituion
|
||||||
if (tProbNext instanceof TypeVar) {
|
if (tProbNext instanceof TypeVar) {
|
||||||
//chain.add((TypeVar) tProbNext);
|
chain.add((TypeVar) tProbNext);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
System.err.println(Rules.class.getName() + "LogikFehler");
|
System.err.println(Rules.class.getName() + "LogikFehler");
|
||||||
@ -184,8 +221,6 @@ public class Rules {
|
|||||||
else {
|
else {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
// 3. sonst
|
// 3. sonst
|
||||||
else {
|
else {
|
||||||
@ -198,6 +233,70 @@ public class Rules {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
public void reflect(List<ConstraintAbstract> constraints) {
|
||||||
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
|
||||||
|
if (cs instanceof ConstraintSubType) {
|
||||||
|
ConstraintSubType css = (ConstraintSubType) cs;
|
||||||
|
if (css.getSubtype() instanceof TypeVarRefType && css.getSuperType() instanceof TypeVar) {
|
||||||
|
|
||||||
|
List<TypeVarAbstract> reflect = reflectNext(constraints, css.getSubtype(), (TypeVar) css.getSuperType());
|
||||||
|
if (reflect != null) {
|
||||||
|
System.out.println("Reflect für " + reflect + css.getSubtype());
|
||||||
|
for (TypeVarAbstract tv : reflect) {
|
||||||
|
substitutions.add(new ConstraintSubstitution(tv , css.getSubtype()));
|
||||||
|
// Todo Unsauber wg
|
||||||
|
constraints.remove(cs);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<TypeVarAbstract> reflectNext(List<ConstraintAbstract> constraints , TypeVarAbstract startValue ,TypeVar nextPoint) {
|
||||||
|
|
||||||
|
ConstraintSubType next = next(nextPoint,constraints);
|
||||||
|
|
||||||
|
if (next != null) {
|
||||||
|
|
||||||
|
if (next.getSuperType().equals(startValue)) {
|
||||||
|
List<TypeVarAbstract> result = new ArrayList<>();
|
||||||
|
result.add(next.getSubtype());
|
||||||
|
constraints.remove(next); // ?? Sauber?
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
else if (next.getSuperType() instanceof TypeVar ) {
|
||||||
|
List<TypeVarAbstract> result = reflectNext(constraints,startValue,(TypeVar) next.getSuperType());
|
||||||
|
if (result != null) {
|
||||||
|
result.add(next.getSubtype());
|
||||||
|
constraints.remove(next); // ? Sauber
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ConstraintSubType next(TypeVar point, List<ConstraintAbstract> constraints) {
|
||||||
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
if (cs instanceof ConstraintSubType) {
|
||||||
|
if (((ConstraintSubType) cs).getSubtype().equals(point)) {
|
||||||
|
return (ConstraintSubType) cs;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void reduceEqual(List<ConstraintAbstract> constraints) {
|
public void reduceEqual(List<ConstraintAbstract> constraints) {
|
||||||
for (ConstraintAbstract cs : constraints) {
|
for (ConstraintAbstract cs : constraints) {
|
||||||
@ -230,6 +329,7 @@ public class Rules {
|
|||||||
}
|
}
|
||||||
// Lösche element
|
// Lösche element
|
||||||
constraints.remove(cs);
|
constraints.remove(cs);
|
||||||
|
System.out.println("Regel Reduce Equal" + cs);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -250,6 +350,7 @@ public class Rules {
|
|||||||
constraints.remove(cs);
|
constraints.remove(cs);
|
||||||
constraints.add(constraintShouldEqual);
|
constraints.add(constraintShouldEqual);
|
||||||
// Todo Substitution für Types
|
// Todo Substitution für Types
|
||||||
|
System.out.println("Regel Adapt1 " + cs);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -273,6 +374,7 @@ public class Rules {
|
|||||||
public void adapt2(List<ConstraintAbstract> constraints) {
|
public void adapt2(List<ConstraintAbstract> constraints) {
|
||||||
|
|
||||||
List<ConstraintAbstract> newConstraints = new ArrayList<>();
|
List<ConstraintAbstract> newConstraints = new ArrayList<>();
|
||||||
|
List<ConstraintAbstract> constraintsToRemove = new ArrayList<>();
|
||||||
|
|
||||||
for (ConstraintAbstract cs : constraints) {
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
|
||||||
@ -281,20 +383,34 @@ public class Rules {
|
|||||||
ConstraintSubType css = (ConstraintSubType) cs;
|
ConstraintSubType css = (ConstraintSubType) cs;
|
||||||
if (css.getSuperType() instanceof TypeVar) {
|
if (css.getSuperType() instanceof TypeVar) {
|
||||||
if (css.getSubtype() instanceof TypeVarInterface || css.getSubtype() instanceof TypeVarRefType) {
|
if (css.getSubtype() instanceof TypeVarInterface || css.getSubtype() instanceof TypeVarRefType) {
|
||||||
adapt2Next(((ConstraintSubType) cs).getSubtype(), ((ConstraintSubType) cs).getSuperType() , constraints, newConstraints);
|
List<ConstraintAbstract> ctm = adapt2Next(((ConstraintSubType) cs).getSubtype(), ((ConstraintSubType) cs).getSuperType() , constraints, newConstraints);
|
||||||
|
if (ctm != null) {
|
||||||
|
constraintsToRemove.addAll(ctm);
|
||||||
|
constraintsToRemove.add(cs);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
constraintsToRemove = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if (constraintsToRemove != null) {
|
||||||
|
System.out.println("Regel Adapt2" + constraintsToRemove);
|
||||||
|
constraints.removeAll(constraintsToRemove);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
constraints.addAll(newConstraints);
|
constraints.addAll(newConstraints);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void adapt2Next(TypeVarAbstract start , TypeVarAbstract last , List<ConstraintAbstract> remainingConstraints, List<ConstraintAbstract> newConstraints) {
|
public List<ConstraintAbstract> adapt2Next(TypeVarAbstract start , TypeVarAbstract last , List<ConstraintAbstract> constraints, List<ConstraintAbstract> newConstraints) {
|
||||||
|
|
||||||
for (ConstraintAbstract cs : remainingConstraints) {
|
|
||||||
|
|
||||||
|
|
||||||
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
|
||||||
if (cs instanceof ConstraintSubType) {
|
if (cs instanceof ConstraintSubType) {
|
||||||
ConstraintSubType css = (ConstraintSubType) cs;
|
ConstraintSubType css = (ConstraintSubType) cs;
|
||||||
@ -309,6 +425,8 @@ public class Rules {
|
|||||||
System.out.println("adapt2Next : gefunden");
|
System.out.println("adapt2Next : gefunden");
|
||||||
System.out.println(constraintInterface);
|
System.out.println(constraintInterface);
|
||||||
|
|
||||||
|
ArrayList<ConstraintAbstract> constraintsToRemove = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
// Should Equal ermitteln
|
// Should Equal ermitteln
|
||||||
if (constraintInterface.getSuperType() instanceof TypeVarInterface) {
|
if (constraintInterface.getSuperType() instanceof TypeVarInterface) {
|
||||||
@ -321,35 +439,32 @@ public class Rules {
|
|||||||
if (iFGivenGenerics.size() == iFthisGenerics.size()) {
|
if (iFGivenGenerics.size() == iFthisGenerics.size()) {
|
||||||
for (int i = 0 ; i < iFGivenGenerics.size() ; i++ ) {
|
for (int i = 0 ; i < iFGivenGenerics.size() ; i++ ) {
|
||||||
newConstraints.add(new ConstraintShouldEqual(iFGivenGenerics.get(i) , iFthisGenerics.get(i)));
|
newConstraints.add(new ConstraintShouldEqual(iFGivenGenerics.get(i) , iFthisGenerics.get(i)));
|
||||||
|
// Substitution
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
constraintsToRemove.add(css);
|
||||||
|
return constraintsToRemove;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (css.getSuperType() instanceof TypeVar) {
|
else if (css.getSuperType() instanceof TypeVar) {
|
||||||
List<ConstraintAbstract> remConst2 = new ArrayList<>();
|
List<ConstraintAbstract> remConst2 = new ArrayList<>();
|
||||||
remConst2.addAll(remainingConstraints);
|
remConst2.addAll(constraints);
|
||||||
remConst2.remove(cs);
|
remConst2.remove(cs);
|
||||||
adapt2Next(start,css.getSuperType() , remConst2 , newConstraints);
|
adapt2Next(start,css.getSuperType() , remConst2 , newConstraints);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
|
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ public class TypeVarRefType extends TypeVarAbstract {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) return true;
|
if (this == o) return true;
|
||||||
@ -31,6 +32,26 @@ public class TypeVarRefType extends TypeVarAbstract {
|
|||||||
|
|
||||||
return getRefType() != null ? getRefType().equals(that.getRefType()) : that.getRefType() == null;
|
return getRefType() != null ? getRefType().equals(that.getRefType()) : that.getRefType() == null;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object o) {
|
||||||
|
if (this == o) return true;
|
||||||
|
if (!(o instanceof TypeVarRefType)) return false;
|
||||||
|
|
||||||
|
TypeVarRefType that = (TypeVarRefType) o;
|
||||||
|
|
||||||
|
if (that.toString().equals(this.toString())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
package strucTypes5;
|
package strucTypes5;
|
||||||
|
|
||||||
import de.dhbwstuttgart.parser.JavaTXParser;
|
import de.dhbwstuttgart.parser.JavaTXParser;
|
||||||
|
import de.dhbwstuttgart.strucTypes3.SubTypeConstraint;
|
||||||
import de.dhbwstuttgart.strucTypes5.algo.TI;
|
import de.dhbwstuttgart.strucTypes5.algo.TI;
|
||||||
import de.dhbwstuttgart.strucTypes5.assumptions.AssumptionMap;
|
import de.dhbwstuttgart.strucTypes5.assumptions.AssumptionMap;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.constraints.*;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.solve.Ruler;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.solve.Rules;
|
||||||
|
import de.dhbwstuttgart.strucTypes5.typeVars.*;
|
||||||
import de.dhbwstuttgart.syntaxtree.ClassOrInterface;
|
import de.dhbwstuttgart.syntaxtree.ClassOrInterface;
|
||||||
import de.dhbwstuttgart.syntaxtree.SourceFile;
|
import de.dhbwstuttgart.syntaxtree.SourceFile;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
@ -54,20 +59,112 @@ public class SolveTest {
|
|||||||
// Take The Generatet Constraints from ti:
|
// Take The Generatet Constraints from ti:
|
||||||
// Try To Solve
|
// Try To Solve
|
||||||
|
|
||||||
|
System.out.println("\n \n \n \n Starte einfach Unifikation ");
|
||||||
|
System.out.println("Gegegeben Constraints: " + ti1.resultConstraints);
|
||||||
|
|
||||||
|
// Generate Interfaces Give
|
||||||
|
TypeVarRefType myInteger = (TypeVarRefType) getTypeVar(ti1.resultConstraints , "TVar_MyInteger");
|
||||||
|
TypeVarAbstract v2 = getTypeVar(ti1.resultConstraints , "TVar_2");
|
||||||
|
TypeVarAbstract v5 = getTypeVar(ti1.resultConstraints , "TVar_5");
|
||||||
|
System.out.println(myInteger.toString());
|
||||||
|
System.out.println(v2.toString());
|
||||||
|
System.out.println(v5.toString());
|
||||||
|
|
||||||
|
// Generiere Interface 1
|
||||||
|
List<TypeVarAbstract> generics = new ArrayList<>();
|
||||||
|
generics.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
|
||||||
|
generics.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
|
||||||
|
InterfaceForConstraint if1 = new InterfaceForConstraint(v2, generics);
|
||||||
|
ConstraintInterface constraintInterface = new ConstraintInterface(TypeVarFactory.makeTypeVar(myInteger.getRefType()) , TypeVarFactory.makeTypeVar(if1) );
|
||||||
|
List<ConstraintInterface> interfaces = new ArrayList<>();
|
||||||
|
interfaces.add(constraintInterface);
|
||||||
|
|
||||||
|
|
||||||
|
// Generiere Interface 2
|
||||||
|
List<TypeVarAbstract> generics2 = new ArrayList<>();
|
||||||
|
generics2.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
|
||||||
|
generics2.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
|
||||||
|
InterfaceForConstraint if2 = new InterfaceForConstraint(v5, generics);
|
||||||
|
ConstraintInterface constraintInterface2 = new ConstraintInterface(TypeVarFactory.makeTypeVar(myInteger.getRefType()) , TypeVarFactory.makeTypeVar(if2) );
|
||||||
|
interfaces.add(constraintInterface2);
|
||||||
|
|
||||||
|
System.out.println(interfaces);
|
||||||
|
|
||||||
|
|
||||||
|
System.out.println("Manuell Test");
|
||||||
|
|
||||||
|
/*
|
||||||
|
Rules rules = new Rules();
|
||||||
|
rules.setConstraintInterfaces(interfaces);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
rules.adapt2(ti1.resultConstraints);
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
rules.swap(ti1.resultConstraints);
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
rules.swap(ti1.resultConstraints);
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
rules.subst(ti1.resultConstraints);
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
rules.subst(ti1.resultConstraints);
|
||||||
|
System.out.println(ti1.resultConstraints);
|
||||||
|
|
||||||
|
|
||||||
|
System.out.println(rules.substitutions);
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
List<ConstraintSubstitution> substitutions = new ArrayList<>();
|
||||||
|
Ruler ruler = new Ruler(interfaces,substitutions,ti1.resultConstraints);
|
||||||
|
|
||||||
|
System.out.println("start ...");
|
||||||
|
|
||||||
|
|
||||||
|
while (ti1.resultConstraints.size() > 0) {
|
||||||
|
ruler.rule();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} catch (Exception exc) {
|
} catch (Exception exc) {
|
||||||
exc.printStackTrace();
|
exc.printStackTrace();
|
||||||
fail();
|
fail();
|
||||||
}
|
}
|
||||||
assertTrue("Tests durchlaufen", filenames.size() > 0);
|
assertTrue("Tests durchlaufen", filenames.size() > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private TypeVarAbstract getTypeVar(List<ConstraintAbstract> constraints , String name) {
|
||||||
|
for (ConstraintAbstract cs : constraints) {
|
||||||
|
if (cs instanceof ConstraintSubType) {
|
||||||
|
ConstraintSubType css = (ConstraintSubType) cs;
|
||||||
|
if (css.getSubtype().toString().equals(name)) {
|
||||||
|
return css.getSubtype();
|
||||||
|
}
|
||||||
|
else if (css.getSuperType().toString().equals(name)) {
|
||||||
|
return css.getSuperType();
|
||||||
|
}
|
||||||
|
else if (css.getSuperType() instanceof TypeVarInterface) {
|
||||||
|
TypeVarInterface tcv = (TypeVarInterface) css.getSuperType();
|
||||||
|
if (tcv.getInterfaceForConstraint().getStrucType().toString().equals(name)) {
|
||||||
|
return tcv.getInterfaceForConstraint().getStrucType();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user