#unique-identifier #non-static #type-id #key

type-key

Unique type identifier for any non-static type

2 releases (1 stable)

1.0.0 Jun 22, 2023
0.1.0 Jun 22, 2023

#5 in #non-static


Used in 3 crates (2 directly)

MIT license

3KB

TypeKey

Unique type identifier for any non-static type (unlike core::any::Any)

Usage

use type_key::TypeKey;

let a = 1;
let closure = || &a;

let key = TypeKey::of_val(&closure);

Implementation detail

The TypeKey wraps TypeId of closure in TypeKey::of. Since the closure captures its environment, the returned TypeId is unique for each type.

License

MIT

No runtime deps