From b99c022b5048a84283cae50620b70dd775ba714e Mon Sep 17 00:00:00 2001 From: AluAli <memtoo@gmx.de> Date: Fri, 5 Mar 2021 09:12:19 +0100 Subject: [PATCH] modified: src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java modified: src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java --- .../dhbwstuttgart/bytecode/TPHExtractor.java | 1 + .../FamilyOfGeneratedGenerics.java | 41 +++++++++++-------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java b/src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java index b908afa6f..2923da742 100644 --- a/src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java +++ b/src/main/java/de/dhbwstuttgart/bytecode/TPHExtractor.java @@ -55,6 +55,7 @@ public class TPHExtractor extends AbstractASTWalker { boolean inLocalOrParamOrReturn = false; public final ArrayList<MethodAndTPH> ListOfMethodsAndTph = new ArrayList<>(); + public Set<Pair> oldConstraints = new HashSet<>(); // Alle Constraints in einer Menge (und- & Oder-Constraints) final ArrayList<ResultPair<TypePlaceholder, TypePlaceholder>> allPairs = new ArrayList<>(); public final ArrayList<TPHConstraint> allCons = new ArrayList<>(); private ResultSet resultSet; diff --git a/src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java b/src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java index 544d43bec..6b3cd99b0 100644 --- a/src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java +++ b/src/main/java/de/dhbwstuttgart/bytecode/insertGenerics/FamilyOfGeneratedGenerics.java @@ -136,7 +136,7 @@ public class FamilyOfGeneratedGenerics { listOfThisMethod = getMethodConstraints(cs,cs_cl,posOfTPHsForThisMethod,listOfMethodsAndTph); tempMethodConstraintsWithPosition.put(currentMethod, listOfThisMethod); - List<MethodConstraint> newMCList = firstLineMethodDefinition(cs, posOfTphs, resSet); + List<MethodConstraint> newMCList = firstLineMethodDefinition(cs, posOfTphs, method, resSet); } } @@ -477,29 +477,36 @@ public class FamilyOfGeneratedGenerics { } */ - public static List<MethodConstraint> firstLineMethodDefinition(List<TPHConstraint> allConstraints, HashMap<String, List<PairTphMethod<PositionFinder.Position, String>>> posOfTphs, ResultSet resSet) { + public static List<MethodConstraint> firstLineMethodDefinition(List<TPHConstraint> allConstraints, HashMap<String, List<PairTphMethod<PositionFinder.Position, String>>> posOfTphs, MethodAndTPH methodAndTPH, ResultSet resSet) { List<MethodConstraint> tempMC= new ArrayList<>(); -// MethodAndTPH methAndTphs = methodAndTPH; -// Set undCons = methAndTphs.constraints.getUndConstraints(); -// Iterator it = undCons.iterator(); + MethodAndTPH methAndTphs = methodAndTPH; + Set<Pair> undCons = methAndTphs.constraints.getUndConstraints(); + List<Set<Pair>> orCons = methAndTphs.constraints.getOderConstraints(); + Iterator<Pair> it = undCons.iterator(); + while(it.hasNext()) { + Pair p = it.next(); + String ta1 = ((TypePlaceholder) p.TA1).getName(); + String ta2 = ((TypePlaceholder) p.TA2).getName(); + + System.out.println(p); + + } + +// Set res = resSet.results; +// Iterator it = res.iterator(); +// System.out.println("res: " + res.size() + res); +// System.out.println("booooooooo"); // while(it.hasNext()) { // System.out.println(it.next()); // } - Set res = resSet.results; - Iterator it = res.iterator(); - System.out.println("res: " + res.size() + res); - System.out.println("booooooooo"); - while(it.hasNext()) { - System.out.println(it.next()); - } - System.out.println("booooooooo2"); +// System.out.println("booooooooo2"); // for(TPHConstraint tphC: allConstraints) { // } - Predicate<Pair> filterUndConstraints = ab -> resSet.resolveType((TypePlaceholder)(ab.TA1)).resolvedType instanceof TypePlaceholder; - System.out.println(filterUndConstraints); - Predicate<Pair> the = x -> resSet.resolveType((TypePlaceholder)(x.TA1)).resolvedType instanceof TypePlaceholder; - ResultPair rp = y -> resSet.resolveType((TypePlaceholder)(y.TA1)).getResultPair(); +// Predicate<Pair> filterUndConstraints = ab -> resSet.resolveType((TypePlaceholder)(ab.TA1)).resolvedType instanceof TypePlaceholder; +// System.out.println(filterUndConstraints); +// Predicate<Pair> the = x -> resSet.resolveType((TypePlaceholder)(x.TA1)).resolvedType instanceof TypePlaceholder; +// ResultPair rp = y -> resSet.resolveType((TypePlaceholder)(y.TA1)).getResultPair(); // (resultSet.resolveType((TypePlaceholder)(cs.TA1)).resolvedType instanceof TypePlaceholder)