@@ -198,6 +198,11 @@ class GenericSignature {
198198
199199 // / Whether this generic signature involves a type variable.
200200 bool hasTypeVariable () const ;
201+
202+ // / Returns the generic environment that provides fresh contextual types
203+ // / (archetypes) that correspond to the interface types in this generic
204+ // / signature.
205+ GenericEnvironment *getGenericEnvironment () const ;
201206};
202207
203208// / A reference to a canonical generic signature.
@@ -317,11 +322,6 @@ class alignas(1 << TypeAlignInBits) GenericSignatureImpl final
317322 // / Retrieve the requirement machine for the given generic signature.
318323 RequirementMachine *getRequirementMachine () const ;
319324
320- // / Returns the generic environment that provides fresh contextual types
321- // / (archetypes) that correspond to the interface types in this generic
322- // / signature.
323- GenericEnvironment *getGenericEnvironment () const ;
324-
325325 // / Collects a set of requirements on a type parameter. Used by
326326 // / GenericEnvironment for building archetypes.
327327 GenericSignature::LocalRequirements getLocalRequirements (Type depType) const ;
@@ -456,6 +456,11 @@ class alignas(1 << TypeAlignInBits) GenericSignatureImpl final
456456
457457 // / Returns the canonical generic signature. The result is cached.
458458 CanGenericSignature getCanonicalSignature () const ;
459+
460+ // / Returns the generic environment that provides fresh contextual types
461+ // / (archetypes) that correspond to the interface types in this generic
462+ // / signature.
463+ GenericEnvironment *getGenericEnvironment () const ;
459464};
460465
461466void simple_display (raw_ostream &out, GenericSignature sig);
0 commit comments