From the Existential Metadata section of the ABI Stability manifesto:
Existential type metadata contains the number of witness tables present, whether the type is class-constrained, and a protocol descriptor for each protocol constraint. A protocol descriptor describes an individual protocol constraint, such as whether it is class-constrained, the size of conforming witness tables, and protocol descriptors for any protocols it refines. Protocol descriptors are layout compatible with the Objective-C runtime's protocol records on Apple platforms. The format of the existential type metadata needs to be reviewed as part of the ABI definition.
The text was updated successfully, but these errors were encountered:
Joe Groff reviewed this: "The details of existential type metadata for the most part can be private to the runtime. We should be able to ensure it's fully opaque and adjust the format in the future without breaking ABI."