mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
AST: Generalize Requirement::isSatisfied() to Requirement::checkRequirement()
This commit is contained in:
@@ -405,10 +405,19 @@ bool GenericSignatureImpl::isRequirementSatisfied(
|
||||
LookUpConformanceInSignature(this));
|
||||
}
|
||||
|
||||
// FIXME: Need to check conditional requirements here.
|
||||
ArrayRef<Requirement> conditionalRequirements;
|
||||
SmallVector<Requirement, 2> subReqs;
|
||||
switch (requirement.checkRequirement(subReqs, allowMissing)) {
|
||||
case CheckRequirementResult::Success:
|
||||
return true;
|
||||
|
||||
return requirement.isSatisfied(conditionalRequirements, allowMissing);
|
||||
case CheckRequirementResult::ConditionalConformance:
|
||||
// FIXME: Need to check conditional requirements here.
|
||||
return true;
|
||||
|
||||
case CheckRequirementResult::RequirementFailure:
|
||||
case CheckRequirementResult::SubstitutionFailure:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
SmallVector<Requirement, 4>
|
||||
|
||||
Reference in New Issue
Block a user