define_handle_map_deleter

Macro define_handle_map_deleter 

Source
macro_rules! define_handle_map_deleter {
    ($HANDLE_MAP_NAME:ident, $destructor_name:ident) => { ... };
}
Expand description

Define a (public) destructor for a type that lives inside a lazy_static ConcurrentHandleMap.

Note that this is actually totally safe, unlike the other define_blah_destructor macros.

A critical difference, however, is that this dtor takes an err out parameter to indicate failure. This difference is why the name is different as well (deleter vs destructor).

ยงExample

struct Thing(Vec<i32>);
// Somewhere...
lazy_static! {
    static ref THING_HANDLES: ConcurrentHandleMap<Thing> = ConcurrentHandleMap::new();
}
define_handle_map_deleter!(THING_HANDLES, mylib_destroy_thing);