Commits

Andrew Trick committed a98de1ba1ce
Add an Optional metadata kind for runtime casts. Reuses the enum metadata layout and builder because most of the logic is also required for Optional (generic arg and payload). We may want to optimize this at some point (Optional doesn't have a Parent), but I don't see much opportunity. Note that with this approach there will be no change in metadata layout. Changing the kind still breaks the ABI of course. Also leaves the MirrorData summary string as "(Enum Value)". We should consider changing it.