Issue by mzabaluev
Tuesday Jan 13, 2015 at 22:40 GMT
For earlier discussion, see rust-lang/rust#21116
This issue was labelled with: A-libs, A-typesystem in the Rust repository
I want to implement a mapping of Box<T: 'static> to GType. That dynamic type system requires process-unique type names. So I'd like to have a process-unique key, preferably a string, available from TypeId or a similar API.
Now, it's likely that TyDesc names are sufficiently unique, and hash collisions on TypeId break the world as Rust knows it (#17179) so the u64 hash value can be used as practically unique, but: 1) uniqueness constraints on any of those are not documented; 2) access to TyDesc is unsafe.
Tuesday Jan 13, 2015 at 22:40 GMT
For earlier discussion, see rust-lang/rust#21116
This issue was labelled with: A-libs, A-typesystem in the Rust repository
I want to implement a mapping of
Box<T: 'static>to GType. That dynamic type system requires process-unique type names. So I'd like to have a process-unique key, preferably a string, available fromTypeIdor a similar API.Now, it's likely that
TyDescnames are sufficiently unique, and hash collisions onTypeIdbreak the world as Rust knows it (#17179) so theu64hash value can be used as practically unique, but: 1) uniqueness constraints on any of those are not documented; 2) access toTyDescis unsafe.