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

eine Variable korrigiert
TODO eingefuegt
compare muss fuer ale moeglichen Faelle aus calculatePairSets erstellt werden
This commit is contained in:
Martin Plümicke 2018-03-03 01:07:25 +01:00
parent 9f3439a15e
commit cba489f279

View File

@ -48,7 +48,7 @@ public class OrderingUnifyPair extends Ordering<Set<UnifyPair>> {
hs.add(up); hs.add(up);
Set<UnifyPair> greaterRes = unifyTask.applyTypeUnificationRules(hs, fc); Set<UnifyPair> greaterRes = unifyTask.applyTypeUnificationRules(hs, fc);
long greaterLen = greaterRes.stream().filter(x -> !(x.getLhsType() instanceof PlaceholderType && x.getRhsType() instanceof PlaceholderType)).count(); long greaterLen = greaterRes.stream().filter(x -> !(x.getLhsType() instanceof PlaceholderType && x.getRhsType() instanceof PlaceholderType)).count();
if (greaterLen == 0) return new Pair<>(1, smallerRes); if (greaterLen == 0) return new Pair<>(1, greaterRes);
else return new Pair<>(0, new HashSet<>()); else return new Pair<>(0, new HashSet<>());
} }
} }
@ -65,6 +65,7 @@ public class OrderingUnifyPair extends Ordering<Set<UnifyPair>> {
else return si.get(); else return si.get();
} }
else { else {
//TODO 2018-03-02: hier muessen mehree =. eingefuegt werden und alle weiteren Faelle pruefen
Optional<UnifyPair> lseq = left.stream() Optional<UnifyPair> lseq = left.stream()
.filter(x -> (x.getLhsType() instanceof PlaceholderType && x.getPairOp() == PairOperator.EQUALSDOT)).findFirst(); .filter(x -> (x.getLhsType() instanceof PlaceholderType && x.getPairOp() == PairOperator.EQUALSDOT)).findFirst();
Optional<UnifyPair> rseq = right.stream() Optional<UnifyPair> rseq = right.stream()