@@ -201,6 +201,18 @@ class GenericSignature {
201201 // / signature.
202202 GenericEnvironment *getGenericEnvironment () const ;
203203
204+ // / Return the requirements of this generic signature that are not also
205+ // / satisfied by \c otherSig.
206+ // /
207+ // / \param otherSig Another generic signature whose generic parameters are
208+ // / equivalent to or a subset of the generic parameters in this signature.
209+ SmallVector<Requirement, 4 >
210+ requirementsNotSatisfiedBy (GenericSignature otherSig) const ;
211+
212+ // / Return the canonical version of the given type under this generic
213+ // / signature.
214+ CanType getCanonicalTypeInContext (Type type) const ;
215+
204216 // / Check invariants.
205217 void verify () const ;
206218};
@@ -373,18 +385,6 @@ class alignas(1 << TypeAlignInBits) GenericSignatureImpl final
373385 bool isRequirementSatisfied (
374386 Requirement requirement, bool allowMissing = false ) const ;
375387
376- // / Return the requirements of this generic signature that are not also
377- // / satisfied by \c otherSig.
378- // /
379- // / \param otherSig Another generic signature whose generic parameters are
380- // / equivalent to or a subset of the generic parameters in this signature.
381- SmallVector<Requirement, 4 > requirementsNotSatisfiedBy (
382- GenericSignature otherSig) const ;
383-
384- // / Return the canonical version of the given type under this generic
385- // / signature.
386- CanType getCanonicalTypeInContext (Type type) const ;
387-
388388 bool isCanonicalTypeInContext (Type type) const ;
389389 bool isCanonicalTypeInContext (Type type,
390390 GenericSignatureBuilder &builder) const ;
@@ -462,6 +462,18 @@ class alignas(1 << TypeAlignInBits) GenericSignatureImpl final
462462 // / (archetypes) that correspond to the interface types in this generic
463463 // / signature.
464464 GenericEnvironment *getGenericEnvironment () const ;
465+
466+ // / Return the requirements of this generic signature that are not also
467+ // / satisfied by \c otherSig.
468+ // /
469+ // / \param otherSig Another generic signature whose generic parameters are
470+ // / equivalent to or a subset of the generic parameters in this signature.
471+ SmallVector<Requirement, 4 >
472+ requirementsNotSatisfiedBy (GenericSignature otherSig) const ;
473+
474+ // / Return the canonical version of the given type under this generic
475+ // / signature.
476+ CanType getCanonicalTypeInContext (Type type) const ;
465477};
466478
467479void simple_display (raw_ostream &out, GenericSignature sig);
0 commit comments