Crate portable_atomic_enum

Source
Expand description

An attribute to create an atomic wrapper around a C-style enum.

§Example


#[atomic_enum]
#[derive(Clone, Copy, Debug, PartialEq)]
enum CatState {
    Dead = 0,
    BothDeadAndAlive,
    Alive,
}

let state = AtomicCatState::new(CatState::Dead);
state.store(CatState::Alive, Ordering::Relaxed);
assert_eq!(state.load(Ordering::Relaxed), CatState::Alive);

Modules§

atomic
Atomic types

Attribute Macros§

atomic_enum
Creates an atomic wrapper around a C-style enum.