Compare commits
No commits in common. "4318856fa83326826fe43fd033c2b55e4bb5d259" and "b76e1e46f038940cb93a4bc941b6d73b17585dec" have entirely different histories.
4318856fa8
...
b76e1e46f0
@ -103,22 +103,22 @@ public class TYPE {
|
||||
|
||||
var subPatternList = recordPattern.getSubPattern();
|
||||
var resolver = new GenericsResolverSameName();
|
||||
var refType = (RefType) recordPattern.getType();
|
||||
|
||||
var allClasses = blockInformation.getAvailableClasses();
|
||||
var typename = refType.getName().getClassName();
|
||||
|
||||
ClassOrInterface allClass = allClasses.stream().filter(c -> c.getClassName().getClassName().equals(typename)).findFirst().orElseThrow();
|
||||
|
||||
int counter = 0;
|
||||
for (Pattern el : subPatternList){
|
||||
if (el instanceof RecordPattern){
|
||||
constraintSet.addAll(addRecursiveParameterConstraints((RecordPattern) el, blockInformation));
|
||||
} else {
|
||||
} else if (recordPattern.getType() instanceof RefType refType){
|
||||
var allClasses = blockInformation.getAvailableClasses();
|
||||
var typename = refType.getName().getClassName();
|
||||
|
||||
for (ClassOrInterface allClass : allClasses) {
|
||||
var className = allClass.getClassName().getClassName();
|
||||
if(className.equals(typename)){
|
||||
FormalParameter param = (FormalParameter) allClass.getConstructors().getFirst().getParameterList().getParameterAt(counter);
|
||||
FieldAssumption assumption = new FieldAssumption(param.getName(), allClass, param.getType(), blockInformation.getCurrentTypeScope());
|
||||
|
||||
var fieldCons = new Pair(el.getType(), assumption.getType(resolver), PairOperator.SMALLERDOT);
|
||||
var fieldCons = new Pair(el.getType(), assumption.getType(resolver), PairOperator.EQUALSDOT);
|
||||
var recvCons = new Pair(refType, assumption.getReceiverType(resolver), PairOperator.EQUALSDOT);
|
||||
constraintSet.addUndConstraint(fieldCons);
|
||||
constraintSet.addUndConstraint(recvCons);
|
||||
@ -129,6 +129,9 @@ public class TYPE {
|
||||
PairOperator.EQUALSDOT));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
counter++;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user