File tree Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -170,9 +170,13 @@ class SubstitutionMap {
170
170
bool hasArchetypes () const ;
171
171
172
172
// / Query whether any replacement types in the map contain an opened
173
- // / existential.
173
+ // / existential or opened element .
174
174
bool hasLocalArchetypes () const ;
175
175
176
+ // / Query whether any replacement types in the map contain an opaque
177
+ // / return type.
178
+ bool hasOpaqueArchetypes () const ;
179
+
176
180
// / Query whether any replacement types in the map contain dynamic Self.
177
181
bool hasDynamicSelf () const ;
178
182
Original file line number Diff line number Diff line change @@ -140,6 +140,14 @@ bool SubstitutionMap::hasLocalArchetypes() const {
140
140
return false ;
141
141
}
142
142
143
+ bool SubstitutionMap::hasOpaqueArchetypes () const {
144
+ for (Type replacementTy : getReplacementTypesBuffer ()) {
145
+ if (replacementTy && replacementTy->hasOpaqueArchetype ())
146
+ return true ;
147
+ }
148
+ return false ;
149
+ }
150
+
143
151
bool SubstitutionMap::hasDynamicSelf () const {
144
152
for (Type replacementTy : getReplacementTypesBuffer ()) {
145
153
if (replacementTy && replacementTy->hasDynamicSelfType ())
You can’t perform that action at this time.
0 commit comments