File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -3958,6 +3958,24 @@ void Metadata::dump() const {
3958
3958
printf (" Labels: %s.\n " , tuple->Labels );
3959
3959
}
3960
3960
3961
+ if (auto *existential = dyn_cast<ExistentialTypeMetadata>(this )) {
3962
+ printf (" Is class bounded: %s.\n " ,
3963
+ existential->isClassBounded () ? " true" : " false" );
3964
+ auto protocols = existential->getProtocols ();
3965
+ bool first = true ;
3966
+ printf (" Protocols: " );
3967
+ for (auto protocol : protocols) {
3968
+ if (!first)
3969
+ printf (" & " );
3970
+ printf (" %s" , protocol.getName ());
3971
+ first = false ;
3972
+ }
3973
+ if (auto *superclass = existential->getSuperclassConstraint ())
3974
+ if (auto *contextDescriptor = superclass->getTypeContextDescriptor ())
3975
+ printf (" Superclass constraint: %s.\n " , contextDescriptor->Name .get ());
3976
+ printf (" \n " );
3977
+ }
3978
+
3961
3979
printf (" Generic Args: %p.\n " , getGenericArgs ());
3962
3980
3963
3981
#if SWIFT_OBJC_INTEROP
You can’t perform that action at this time.
0 commit comments