Java Compliance auf JRE 8 erhöhen

This commit is contained in:
JanUlrich 2015-05-26 10:13:35 +02:00
parent a6d9fdcafd
commit 2b6ffdef11
15 changed files with 301 additions and 329 deletions

View File

@ -3,7 +3,7 @@
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry excluding=".classpath|.cvsignore|.externalToolBuilders/|.project|.settings/|Papers/|bin/|doc/|examples/|lib/|notizen/|src/|test/|tools/" including="log4j.xml" kind="src" path=""/> <classpathentry excluding=".classpath|.cvsignore|.externalToolBuilders/|.project|.settings/|Papers/|bin/|doc/|examples/|lib/|notizen/|src/|test/|tools/" including="log4j.xml" kind="src" path=""/>
<classpathentry kind="src" path="test"/> <classpathentry kind="src" path="test"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="lib" path="lib/junit-4.0.jar" sourcepath="/home/janulrich/.m2/repository/junit/junit/4.0/junit-4.0-sources.jar"/> <classpathentry kind="lib" path="lib/junit-4.0.jar" sourcepath="/home/janulrich/.m2/repository/junit/junit/4.0/junit-4.0-sources.jar"/>
<classpathentry kind="lib" path="lib/cloning.jar"/> <classpathentry kind="lib" path="lib/cloning.jar"/>
<classpathentry kind="lib" path="lib/bcel-5.2.jar"/> <classpathentry kind="lib" path="lib/bcel-5.2.jar"/>

View File

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

View File

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

View File

@ -1,17 +1,11 @@
// ino.module.StringLiteral.8653.package
package de.dhbwstuttgart.syntaxtree.statement; package de.dhbwstuttgart.syntaxtree.statement;
// ino.end
// ino.module.StringLiteral.8653.import
import java.util.Hashtable;
import de.dhbwstuttgart.typeinference.Menge; import de.dhbwstuttgart.typeinference.Menge;
import de.dhbwstuttgart.logger.Logger; import de.dhbwstuttgart.logger.Logger;
import de.dhbwstuttgart.myexception.CTypeReconstructionException;
import de.dhbwstuttgart.myexception.JVMCodeException;
import de.dhbwstuttgart.syntaxtree.Class;
import de.dhbwstuttgart.syntaxtree.SyntaxTreeNode; import de.dhbwstuttgart.syntaxtree.SyntaxTreeNode;
import de.dhbwstuttgart.syntaxtree.type.CharacterType;
import de.dhbwstuttgart.syntaxtree.type.GenericTypeVar; import de.dhbwstuttgart.syntaxtree.type.GenericTypeVar;
import de.dhbwstuttgart.syntaxtree.type.RefType; import de.dhbwstuttgart.syntaxtree.type.RefType;
import de.dhbwstuttgart.syntaxtree.type.Type; import de.dhbwstuttgart.syntaxtree.type.Type;
@ -19,20 +13,11 @@ import de.dhbwstuttgart.typeinference.ConstraintsSet;
import de.dhbwstuttgart.typeinference.JavaCodeResult; import de.dhbwstuttgart.typeinference.JavaCodeResult;
import de.dhbwstuttgart.typeinference.ResultSet; import de.dhbwstuttgart.typeinference.ResultSet;
import de.dhbwstuttgart.typeinference.assumptions.TypeAssumptions; import de.dhbwstuttgart.typeinference.assumptions.TypeAssumptions;
import de.dhbwstuttgart.typeinference.exceptions.TypeinferenceException;
import de.dhbwstuttgart.typeinference.unify.CSubstitutionSet;
// ino.class.StringLiteral.26227.declaration
public class StringLiteral extends Literal public class StringLiteral extends Literal
// ino.end
// ino.class.StringLiteral.26227.body
{ {
// ino.attribute.string.26231.declaration
private String string; private String string;
// ino.end
// ino.attribute.parserlog.26234.declaration // ino.attribute.parserlog.26234.declaration
protected static Logger parserlog = Logger.getLogger("parser"); protected static Logger parserlog = Logger.getLogger("parser");
@ -108,5 +93,10 @@ public class StringLiteral extends Literal
return ret; return ret;
} }
@Override
public String toString(){
return "\""+this.string+"\"";
}
} }
// ino.end // ino.end

View File

@ -6,18 +6,22 @@ import de.dhbwstuttgart.typeinference.Menge;
import de.dhbwstuttgart.logger.*; import de.dhbwstuttgart.logger.*;
import de.dhbwstuttgart.typeinference.unify.Unifier; import de.dhbwstuttgart.typeinference.unify.Unifier;
interface Constraint{
public class ConstraintsSet extends UndMenge<Pair>{ }
public class ConstraintsSet{
private UndMenge<Pair> set = new UndMenge<>();
private static final Logger log = Logger.getLogger(ConstraintsSet.class.getName()); private static final Logger log = Logger.getLogger(ConstraintsSet.class.getName());
public void add(ConstraintsSet CSet){ public void add(ConstraintsSet CSet){
for(KomplexeMenge<Pair> i : CSet.set){ for(KomplexeMenge<Pair> i : CSet.set.set){
this.addItems(i); this.set.addItems(i);
} }
} }
public void add(KomplexeMenge<Pair> constraint){ public void add(KomplexeMenge<Pair> constraint){
this.addItems(constraint); this.set.addItems(constraint);
} }
@ -62,27 +66,60 @@ public class ConstraintsSet extends UndMenge<Pair>{
} }
*/ */
/**
*
* @param unify
*/
public void filterWrongConstraints(Unifier unify) { public void filterWrongConstraints(Unifier unify) {
/*
Menge<KomplexeMenge<Pair>> newSet = new Menge<KomplexeMenge<Pair>>();
for(OderMenge<Pair> orSet : this.getOrSets()){
OderMenge<Pair> filtered = this.filterOrSet(unify, orSet);
newSet.add(filtered);
}
for(KomplexeMenge<Pair> i : this.set.set){
newSet.addAll(i.getAndSets());
}
this.set.set = newSet;
Menge<KomplexeMenge<Pair>> newSet = new Menge<KomplexeMenge<Pair>>(); Menge<KomplexeMenge<Pair>> newSet = new Menge<KomplexeMenge<Pair>>();
for(OderMenge<Pair> orSet : this.getOrSets()){ for(OderMenge<Pair> orSet : this.getOrSets()){
Menge<Menge<Pair>> res = unify.apply(orSet.getItems()); Menge<Menge<Pair>> res = unify.apply(orSet.getItems());
if(res.size()>0){ if(res.size()>0){
newSet.add(orSet); newSet.add(orSet);
}else{ }else{
Logger.getLogger("Filter").debug("Ausgesondertes Constraint: "+orSet, Section.TYPEINFERENCE); Logger.getLogger(this.getClass().getName())
.debug("Ausgesondertes Constraint: "+orSet, Section.TYPEINFERENCE);
} }
} }
for(KomplexeMenge<Pair> i : set){ for(KomplexeMenge<Pair> i : set){
newSet.addAll(i.getAndSets()); newSet.addAll(i.getAndSets());
} }
this.set = newSet; this.set = newSet;
/*
for(OderConstraint constraint : this){
constraint.filterWrongConstraints(unify);
}
*/ */
} }
private OderMenge<Pair> filterOrSet(Unifier unify, OderMenge<Pair> orMenge){
/*
OderMenge<Pair> ret = new OderMenge<Pair>();
for(OderMenge<Pair> m : orMenge.getOrSets()){
ret.addItems(this.filterOrSet(unify, m));
}
for(UndMenge<Pair> m : orMenge.getAndSets()){
Menge<Menge<Pair>> res = unify.apply(m.getItems());
if(res.size()>0){
ret.addItems(m);
}else{
Logger.getLogger(this.getClass().getName())
.debug("Ausgesondertes Constraint: "+m, Section.TYPEINFERENCE);
}
}
return ret;
*/
return orMenge;
}
/** /**
* Nimmt alle UndConstraints und filtert mithilfe dieser die falschen Constraints aus den OderConstraints * Nimmt alle UndConstraints und filtert mithilfe dieser die falschen Constraints aus den OderConstraints
* @param unifier * @param unifier

View File

@ -9,7 +9,8 @@ import de.dhbwstuttgart.syntaxtree.type.Type;
import de.dhbwstuttgart.syntaxtree.type.TypePlaceholder; import de.dhbwstuttgart.syntaxtree.type.TypePlaceholder;
import de.dhbwstuttgart.typeinference.unify.Unifier; import de.dhbwstuttgart.typeinference.unify.Unifier;
public class OderConstraint extends OderMenge<Pair>{ public class OderConstraint{
private OderMenge<Pair> oSet = new OderMenge<Pair>();
//private Menge<UndConstraint> oderConstraintPairs; //private Menge<UndConstraint> oderConstraintPairs;
private final static Logger logger = Logger.getLogger(OderConstraint.class.getName()); private final static Logger logger = Logger.getLogger(OderConstraint.class.getName());
@ -58,10 +59,10 @@ public class OderConstraint extends OderMenge<Pair>{
*/ */
public void addConstraint(ConstraintPair toAdd){ public void addConstraint(ConstraintPair toAdd){
//oderConstraintPairs.add(new SingleConstraint(toAdd)); //oderConstraintPairs.add(new SingleConstraint(toAdd));
this.addItem(toAdd.getPair()); this.oSet.addItem(toAdd.getPair());
} }
public void addConstraint(UndConstraint methodConstraint) { public void addConstraint(UndConstraint methodConstraint) {
this.addItems(methodConstraint);//oderConstraintPairs.add(methodConstraint); this.oSet.addItems(methodConstraint.getConstraints());//oderConstraintPairs.add(methodConstraint);
} }
//TODO: Funktionalität ¼r filter implementieren //TODO: Funktionalität ¼r filter implementieren
@ -90,6 +91,10 @@ public class OderConstraint extends OderMenge<Pair>{
*/ */
} }
public void addItems(UndConstraint uCons) {
}
/* /*
@Override @Override
public String toString(){ public String toString(){

View File

@ -22,9 +22,6 @@ interface KomplexeMenge<A>{
void addItems(KomplexeMenge<A> item); void addItems(KomplexeMenge<A> item);
void addItem(A item); void addItem(A item);
Menge<Menge<A>> cartesianProduct(); Menge<Menge<A>> cartesianProduct();
Menge<A> getItems();
Menge<OderMenge<A>> getOrSets();
Menge<UndMenge<A>> getAndSets();
} }
public class OderMenge<A> implements KomplexeMenge<A>{ public class OderMenge<A> implements KomplexeMenge<A>{
@ -35,6 +32,7 @@ public class OderMenge<A> implements KomplexeMenge<A>{
set.add(item); set.add(item);
} }
/*
public Menge<A> getItems(){ public Menge<A> getItems(){
Menge<A> ret = new Menge<>(); Menge<A> ret = new Menge<>();
for(KomplexeMenge<A> i : set){ for(KomplexeMenge<A> i : set){
@ -42,6 +40,7 @@ public class OderMenge<A> implements KomplexeMenge<A>{
} }
return ret; return ret;
} }
*/
@Override @Override
public void addItem(A item) { public void addItem(A item) {
@ -57,13 +56,14 @@ public class OderMenge<A> implements KomplexeMenge<A>{
return ret; return ret;
} }
/*
@Override @Override
public Menge<OderMenge<A>> getOrSets() { public Menge<OderMenge<A>> getOrSets() {
Menge<OderMenge<A>> ret = new Menge<>(); Menge<OderMenge<A>> ret = new Menge<>();
ret.add(this); ret.add(this);
for(KomplexeMenge<A> i : set){ //for(KomplexeMenge<A> i : set){
ret.addAll(i.getOrSets()); // ret.addAll(i.getOrSets());
} //}
return ret; return ret;
} }
@ -75,12 +75,13 @@ public class OderMenge<A> implements KomplexeMenge<A>{
} }
return ret; return ret;
} }
*/
@Override @Override
public String toString(){ public String toString(){
String ret = "["; String ret = "[";
for(KomplexeMenge<A> i : set){ for(KomplexeMenge<A> i : set){
ret += i.toString() + " |\n"; ret += i.toString() + " | ";
} }
return ret + "]"; return ret + "]";
} }

View File

@ -37,7 +37,7 @@ public class SingleConstraint extends EinzelElement<Pair>{
} }
public Pair getPair(){ public Pair getPair(){
return this.getItems().firstElement(); return this.cartesianProduct().firstElement().firstElement();
} }
/* /*

View File

@ -11,17 +11,23 @@ import de.dhbwstuttgart.typeinference.unify.Unifier;
* @author janulrich * @author janulrich
* *
*/ */
public class UndConstraint extends UndMenge<Pair> implements Iterable<Pair>{ public class UndConstraint{
private UndMenge<Pair> uSet = new UndMenge<Pair>();
public UndConstraint(ConstraintType p1, ConstraintType p2) { public UndConstraint(ConstraintType p1, ConstraintType p2) {
//super(p1, p2); //super(p1, p2);
this.addItem(new SingleConstraint(p1,p2).getPair()); this.uSet.addItem(new SingleConstraint(p1,p2).getPair());
} }
public UndConstraint() { public UndConstraint() {
super(); super();
} }
UndMenge<Pair> getConstraints(){
return uSet;
}
/* /*
@Override @Override
public Menge<UndConstraint> getUndConstraints() { public Menge<UndConstraint> getUndConstraints() {
@ -35,11 +41,14 @@ public class UndConstraint extends UndMenge<Pair> implements Iterable<Pair>{
public String toString(){ public String toString(){
//String ret = super.toString(); //String ret = super.toString();
//return ret.replace('|', ','); //return ret.replace('|', ',');
/*
String ret = "["; String ret = "[";
for(Pair p : this.getItems()){ for(Pair p : this.uSet.getItems()){
ret += p.toString()+ ", "; ret += p.toString()+ ", ";
} }
return ret+"]"; return ret+"]";
*/
return uSet.toString();
} }
/* /*
@ -52,18 +61,18 @@ public class UndConstraint extends UndMenge<Pair> implements Iterable<Pair>{
UndConstraint filterUndConstraints(){ UndConstraint filterUndConstraints(){
return this; return this;
} }
*/
@Override @Override
public Iterator<Pair> iterator() { public Iterator<Pair> iterator() {
return this.getItems().iterator(); return this.uSet.getItems().iterator();
} }
*/
public void addConstraint(ConstraintType type, ConstraintType type2) { public void addConstraint(ConstraintType type, ConstraintType type2) {
this.addItem(new ConstraintPair(type,type2).getPair()); this.uSet.addItem(new ConstraintPair(type,type2).getPair());
} }
public void addConstraint(ConstraintPair constraintPair) { public void addConstraint(ConstraintPair constraintPair) {
this.addItem(constraintPair.getPair()); this.uSet.addItem(constraintPair.getPair());
} }
} }

View File

@ -17,6 +17,7 @@ public class UndMenge<A> implements KomplexeMenge<A>{
set.add(new EinzelElement<A>(item)); set.add(new EinzelElement<A>(item));
} }
/*
public Menge<A> getItems(){ public Menge<A> getItems(){
Menge<A> ret = new Menge<>(); Menge<A> ret = new Menge<>();
for(KomplexeMenge<A> i : set){ for(KomplexeMenge<A> i : set){
@ -24,6 +25,7 @@ public class UndMenge<A> implements KomplexeMenge<A>{
} }
return ret; return ret;
} }
*/
@Override @Override
public Menge<Menge<A>> cartesianProduct() { public Menge<Menge<A>> cartesianProduct() {
@ -43,9 +45,11 @@ public class UndMenge<A> implements KomplexeMenge<A>{
ret = cartesianProduct; ret = cartesianProduct;
} }
} }
if(ret == null)return new Menge<Menge<A>>();
return ret; return ret;
} }
/*
@Override @Override
public Menge<OderMenge<A>> getOrSets() { public Menge<OderMenge<A>> getOrSets() {
Menge<OderMenge<A>> ret = new Menge<>(); Menge<OderMenge<A>> ret = new Menge<>();
@ -59,16 +63,16 @@ public class UndMenge<A> implements KomplexeMenge<A>{
public Menge<UndMenge<A>> getAndSets() { public Menge<UndMenge<A>> getAndSets() {
Menge<UndMenge<A>> ret = new Menge<>(); Menge<UndMenge<A>> ret = new Menge<>();
ret.add(this); ret.add(this);
for(KomplexeMenge<A> i : set){ //for(KomplexeMenge<A> i : set){
ret.addAll(i.getAndSets()); // ret.addAll(i.getAndSets());
} //}
return ret; return ret;
} }
*/
public String toString(){ public String toString(){
String ret = "["; String ret = "[";
for(KomplexeMenge<A> item : set){ for(KomplexeMenge<A> item : set){
ret += item.toString() + "\n"; ret += item.toString() + " , ";
} }
return ret + "]"; return ret + "]";
} }
@ -87,12 +91,14 @@ class EinzelElement<A> implements KomplexeMenge<A>{
} }
/*
@Override @Override
public Menge<A> getItems() { public Menge<A> getItems() {
Menge<A> ret = new Menge<>(); Menge<A> ret = new Menge<>();
ret.add(item); ret.add(item);
return ret; return ret;
} }
*/
@Override @Override
public void addItem(A item) { public void addItem(A item) {
@ -109,6 +115,7 @@ class EinzelElement<A> implements KomplexeMenge<A>{
return ret; return ret;
} }
/*
@Override @Override
public Menge<OderMenge<A>> getOrSets() { public Menge<OderMenge<A>> getOrSets() {
Menge<OderMenge<A>> ret = new Menge<>(); Menge<OderMenge<A>> ret = new Menge<>();
@ -120,5 +127,11 @@ class EinzelElement<A> implements KomplexeMenge<A>{
Menge<UndMenge<A>> ret = new Menge<>(); Menge<UndMenge<A>> ret = new Menge<>();
return ret; return ret;
} }
*/
@Override
public String toString(){
return item.toString();
}
} }

View File

@ -645,18 +645,19 @@ public class Unify
cSet.addItems(orConstraints); cSet.addItems(orConstraints);
} }
if(filter){ SectionLogger log = Logger.getSectionLogger(Unify.class.getName(), Section.UNIFY);
SectionLogger log = Logger.getSectionLogger(Unify.class.getName(), Section.UNIFY);
Unifier filterUnify = (pairs)->{ if(filter){
String pairsString = pairs.toString(); Unifier filterUnify = (pairs)->{
Menge<Menge<Pair>> retValue = new Menge<>(); String pairsString = pairs.toString();
retValue = Unify.unifyFiltered(pairs,fc_tto,false); Menge<Menge<Pair>> retValue = new Menge<>();
//Unify.unify(pairs, fc_tto, (i)->{}); retValue = Unify.unifyFiltered(pairs,fc_tto,false);
log.debug("Filtere Constraints:\n"+pairsString); //Unify.unify(pairs, fc_tto, (i)->{});
log.debug("Ergebnis: "+ retValue); log.debug("Filtere Constraints:\n"+pairsString);
return retValue;}; log.debug("Ergebnis: "+ retValue);
log.debug("Filtere 'WrongConstraints' auf: "+cSet); return retValue;};
log.debug("Filtere mithilfe von 'filterWrongConstraints': "+cSet);
cSet.filterWrongConstraints(filterUnify); cSet.filterWrongConstraints(filterUnify);
} }
@ -672,6 +673,10 @@ public class Unify
} }
*/ */
Menge<Menge<Pair>> bigCartProductErg = cSet.cartesianProduct();
if(filter)log.debug("Karthesisches Produkt nach Filterung: "+bigCartProductErg);
/*
//Hier wird aus den in Schritt 4, Teil 1 erzeugten Vektoren das Kartesische Produkt gebildet. //Hier wird aus den in Schritt 4, Teil 1 erzeugten Vektoren das Kartesische Produkt gebildet.
Menge<Pair> helpvp; Menge<Pair> helpvp;
Menge<Menge<Pair>> bigCartProductErg = new Menge<Menge<Pair>>(); Menge<Menge<Pair>> bigCartProductErg = new Menge<Menge<Pair>>();
@ -691,6 +696,7 @@ public class Unify
} }
} }
} }
*/
//Schritt 5: Einsetzen der Subst Regel //Schritt 5: Einsetzen der Subst Regel
//Hier werden die TPHs substituiert, und dann nach geänderten und nicht geänderten Sets sortiert. //Hier werden die TPHs substituiert, und dann nach geänderten und nicht geänderten Sets sortiert.

View File

@ -78,4 +78,15 @@ public class KarthesischesProduktTest {
//System.out.println("undMenge:"+oM3.cartesianProduct()); //System.out.println("undMenge:"+oM3.cartesianProduct());
assertTrue(oM3.cartesianProduct().size()==0); assertTrue(oM3.cartesianProduct().size()==0);
} }
@Test
public void test6(){
OderMenge<String> oM1 = new OderMenge<>();
OderMenge<String> oM2 = new OderMenge<>();
UndMenge<String> oM3 = new UndMenge<>();
oM3.addItems(oM1);
oM3.addItems(oM2);
//System.out.println("undMenge:"+oM3.cartesianProduct());
assertTrue(oM3.cartesianProduct().size()==0);
}
} }

View File

@ -846,24 +846,18 @@ Typeinference: Prozessing statement: TPH B [var] - TYPEINFERENCE
de.dhbwstuttgart.syntaxtree.Class: Erstellte Constraints: [de.dhbwstuttgart.typeinference.SingleConstraint@7106e68e de.dhbwstuttgart.syntaxtree.Class: Erstellte Constraints: [de.dhbwstuttgart.typeinference.SingleConstraint@7106e68e
[[ [[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Test), ] | (TPH B <. Test), ] | [
[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Klasse1), ] | (TPH B <. Klasse1), ] | [
[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Klasse2), ] | (TPH B <. Klasse2), ] | ]
]
[[ [[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Test), ] | (TPH B <. Test), ] | [
[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Klasse1), ] | (TPH B <. Klasse1), ] | [
[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Klasse2), ] | (TPH B <. Klasse2), ] | ]
]
de.dhbwstuttgart.typeinference.SingleConstraint@7eda2dbb de.dhbwstuttgart.typeinference.SingleConstraint@7eda2dbb
de.dhbwstuttgart.typeinference.SingleConstraint@6576fe71 de.dhbwstuttgart.typeinference.SingleConstraint@6576fe71
] - TYPEINFERENCE ] - TYPEINFERENCE
@ -945,24 +939,18 @@ Typeinference: Übriggebliebene Konstraints:
[de.dhbwstuttgart.typeinference.SingleConstraint@7106e68e [de.dhbwstuttgart.typeinference.SingleConstraint@7106e68e
[[ [[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Test), ] | (TPH B <. Test), ] | [
[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Klasse1), ] | (TPH B <. Klasse1), ] | [
[
(void <. TPH ABI), (void <. TPH ABI),
(TPH B <. Klasse2), ] | (TPH B <. Klasse2), ] | ]
]
[[ [[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Test), ] | (TPH B <. Test), ] | [
[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Klasse1), ] | (TPH B <. Klasse1), ] | [
[
(void <. TPH ABJ), (void <. TPH ABJ),
(TPH B <. Klasse2), ] | (TPH B <. Klasse2), ] | ]
]
de.dhbwstuttgart.typeinference.SingleConstraint@7eda2dbb de.dhbwstuttgart.typeinference.SingleConstraint@7eda2dbb
de.dhbwstuttgart.typeinference.SingleConstraint@6576fe71 de.dhbwstuttgart.typeinference.SingleConstraint@6576fe71
de.dhbwstuttgart.typeinference.SingleConstraint@76fb509a de.dhbwstuttgart.typeinference.SingleConstraint@76fb509a
@ -1382,15 +1370,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
[[ [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -1459,10 +1443,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Test)Equal, (TPH B = Test)Equal,
@ -1530,10 +1512,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -1547,8 +1527,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -1580,8 +1559,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2061,15 +2039,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
[[ [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2138,10 +2112,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse1)Equal, (TPH B = Klasse1)Equal,
@ -2209,10 +2181,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -2226,8 +2196,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2259,8 +2228,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2740,15 +2708,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
[[ [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2817,10 +2781,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse2)Equal, (TPH B = Klasse2)Equal,
@ -2888,10 +2850,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -2905,8 +2865,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -2938,8 +2897,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -3419,15 +3377,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
[[ [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -3496,10 +3450,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Test)Equal, (TPH B = Test)Equal,
@ -3567,10 +3519,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -3584,8 +3534,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -3617,8 +3566,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4098,15 +4046,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
[[ [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4175,10 +4119,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse1)Equal, (TPH B = Klasse1)Equal,
@ -4246,10 +4188,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -4263,8 +4203,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4296,8 +4235,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4777,15 +4715,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
[[ [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4854,10 +4788,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse2)Equal, (TPH B = Klasse2)Equal,
@ -4925,10 +4857,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -4942,8 +4872,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -4975,8 +4904,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -5456,15 +5384,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
[[ [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (TPH B = ? extends Test), ] | ]
(TPH B = ? extends Test), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -5533,10 +5457,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Test)Equal, (TPH B = Test)Equal,
@ -5604,10 +5526,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Test)] - UNIFY (TPH B = ? extends Test)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Test), ] | (TPH B = Test), ] | [
[ (Test = ? extends Test), ] | ] - TYPEINFERENCE
(Test = ? extends Test), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -5621,8 +5541,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -5654,8 +5573,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -6135,15 +6053,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
[[ [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (TPH B = ? extends Klasse1), ] | ]
(TPH B = ? extends Klasse1), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -6212,10 +6126,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse1)Equal, (TPH B = Klasse1)Equal,
@ -6283,10 +6195,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse1)] - UNIFY (TPH B = ? extends Klasse1)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse1), ] | (TPH B = Klasse1), ] | [
[ (Klasse1 = ? extends Klasse1), ] | ] - TYPEINFERENCE
(Klasse1 = ? extends Klasse1), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -6300,8 +6210,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -6333,8 +6242,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -6814,15 +6722,11 @@ de.dhbwstuttgart.typeinference.unify.Unify: Menge E ist leer! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
[[ [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (TPH B = ? extends Klasse2), ] | ]
(TPH B = ? extends Klasse2), ] |
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -6891,10 +6795,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(TPH B = Klasse2)Equal, (TPH B = Klasse2)Equal,
@ -6962,10 +6864,8 @@ de.dhbwstuttgart.typeinference.unify.Unify: Filtere Constraints:
(TPH B = ? extends Klasse2)] - UNIFY (TPH B = ? extends Klasse2)] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: Ergebnis: [] - UNIFY
Filter: Ausgesondertes Constraint: [[ Filter: Ausgesondertes Constraint: [[
(TPH B = Klasse2), ] | (TPH B = Klasse2), ] | [
[ (Klasse2 = ? extends Klasse2), ] | ] - TYPEINFERENCE
(Klasse2 = ? extends Klasse2), ] |
] - TYPEINFERENCE
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
(void <. TPH ABI)Smaller } - UNIFY (void <. TPH ABI)Smaller } - UNIFY
@ -6979,8 +6879,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABI = void), ] | (TPH ABI = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {
@ -7012,8 +6911,7 @@ de.dhbwstuttgart.typeinference.unify.Unify: NACH REDUCE2 - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: de.dhbwstuttgart.typeinference.unify.Unify:
--> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY --> keine Regel anwendbar --> umkopieren !!!!!!!!!!!!!!!!!!!!! - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[ de.dhbwstuttgart.typeinference.unify.Unify: Filtere 'WrongConstraints' auf: [[[
(TPH ABJ = void), ] | (TPH ABJ = void), ] | ]
]
] - UNIFY ] - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY de.dhbwstuttgart.typeinference.unify.Unify: ******************************* - UNIFY
de.dhbwstuttgart.typeinference.unify.Unify: Menge E = { de.dhbwstuttgart.typeinference.unify.Unify: Menge E = {