Currently, std::intrinsics::TypeId exposes equality testing and hashing, and the Any trait allows you to get a TypeId for any 'static data. Previously, Any hid these capabilities through a private supertrait, but changed to privacy rules have made that impossible.
We should consider exposing equality and hashing on TypeId only through a private, internal trait used by Any. This should mitigate ABI stability hazards.
Currently,
std::intrinsics::TypeIdexposes equality testing and hashing, and theAnytrait allows you to get aTypeIdfor any'staticdata. Previously,Anyhid these capabilities through a private supertrait, but changed to privacy rules have made that impossible.We should consider exposing equality and hashing on
TypeIdonly through a private, internal trait used byAny. This should mitigate ABI stability hazards.