Interface: TypeOrigin
Store the origin of a data type where it first appeared in the version chain.
A data type is identified by the name of the module and the name of the struct/enum in combination.
Undefined behavior
Directly modifying any field is undefined behavior. The fields are only public for read-only access.