Einsetzen von Generischen Variablen angepasst

This commit is contained in:
JanUlrich 2015-01-20 13:35:56 +01:00
parent 6c4090bc4b
commit 3a58694a02
2 changed files with 7 additions and 3 deletions

View File

@ -111,7 +111,7 @@ class GenericVarPatch {
ret += p.getInsertString(rs);
if(it1.hasNext())ret += ", ";
}
if(this.genericVarDeclarations.size()>0)ret+=", ";
if(this.genericVarExtendDeclarations.size()>0)ret+=", ";
Iterator<GenericVarExtendsDeclarationPatch> it2 = this.genericVarExtendDeclarations.iterator();
while(it2.hasNext()){
GenericVarExtendsDeclarationPatch p = it2.next();

View File

@ -68,7 +68,7 @@ public class TypeInsertSet {
/*
* Ablauf:
* 1. Alle TypePlaceholder im einzusetzenden Typ ermitteln.
* 2. Alle Constraints die mit diesen TPHs zusammenhängen ermitteln
* 2. Alle Constraints die mit diesen TPHs zusammenhängen ermitteln (Das kann möglicherweise wegfallen)
* 3. Alle TPHs, aus Schritt 1 und 2 zusammenfügen.
* 4. Kontrollieren, welche TPHs in dem InsertKontext noch nicht bekannt sind.
* 5. Alle Unbekannten TPHs herausfiltern (von den Pairs nur TA2)
@ -76,13 +76,15 @@ public class TypeInsertSet {
*/
GenericVarPatch gPatch = new GenericVarPatch();//Set der Einzusetzenden generischen Variablendeklarationen
//Schritt 1:
Vector<TypePlaceholder> involvedTPHs = tip.getInsertType().getUnresolvedTPH(resultSet);//.getInvolvedTypePlaceholder();
Vector<TypePlaceholder> involvedTPHs = tip.getInsertType().getInvolvedTypePlaceholder();//.getInvolvedTypePlaceholder();
/*
//Schritt 2:
Vector<Pair> pairs = new Vector<>();
for(Pair pair : this.resultSet.getConstraintsFor(involvedTPHs)){
//gPatch.add(pair); //Schritt 6 (Teil 2)
pairs.add(pair);
}
*/
//Schritt 3:
Vector<TypePlaceholder> allTPHs = new Vector<>();
for(TypePlaceholder tph : involvedTPHs){
@ -91,12 +93,14 @@ public class TypeInsertSet {
}
}
//TODO: Schritt 4 (Es wird nicht kontrolliert, ob der TPH in dem Kontext schon bekannt ist)
/*
// und Schritt 5: (Es werden nur die TPHs übernommen, welche noch nicht in den involvedTPHs vorkommen)
for(Pair pair : pairs)for(Type t : pair.getTypes())for(TypePlaceholder tph : t.getInvolvedTypePlaceholder()){
if(!allTPHs.contains(tph)){
allTPHs.add(tph);
}
}
*/
//gPatch.addPairs(pairs);
gPatch.addTPHs(allTPHs);