Skip to content

Latest commit

 

History

History
15 lines (12 loc) · 795 Bytes

ii.23.2.14-typespec.md

File metadata and controls

15 lines (12 loc) · 795 Bytes

II.23.2.14 TypeSpec

The signature in the Blob heap indexed by a TypeSpec token has the following format

TypeSpecBlob ::=
PTR CustomMod* VOID
| PTR CustomMod* Type
| FNPTR MethodDefSig
| FNPTR MethodRefSig
| ARRAY Type ArrayShape
| SZARRAY CustomMod* Type
| GENERICINST ( CLASS | VALUETYPE ) TypeDefOrRefOrSpecEncoded GenArgCount Type Type*

For compactness, the ELEMENT_TYPE_ prefixes have been omitted from this list. So, for example, PTR is shorthand for ELEMENT_TYPE_PTR. (§II.23.1.16) Note that a TypeSpecBlob does not begin with a calling-convention byte, so it differs from the various other signatures that are stored into Metadata.