pub struct StaticTag(/* private fields */);
Expand description
A static tag enables creating a tag in a static variable.
static TAG: StaticTag = StaticTag::new();
let first_get = TAG.get();
let second_get = TAG.get();
assert_eq!(first_get, second_get);
Implementations§
source§impl StaticTag
impl StaticTag
sourcepub fn get(&self) -> Tag
pub fn get(&self) -> Tag
Get the actual Tag out of this StaticTag. Repeated calls to this function return the same tag.
This is not a trivial getter. The Tag is lazily constructed so even subsequent calls to this getter must do some work to check if the Tag exists or not. For very hot code paths it is advised to cache the return value somewhere, for example in a relevant command’s state.
Auto Trait Implementations§
impl RefUnwindSafe for StaticTag
impl Send for StaticTag
impl Sync for StaticTag
impl Unpin for StaticTag
impl UnwindSafe for StaticTag
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more