Documentation
use std::sync::atomic::Ordering;

use atomium::{Atomic, atomium};

atomium! {
    #[repr(u8)]
    #[derive(PartialEq, Debug)]
    pub enum MyEnum {
        A, B, C
    }
}

#[test]
fn test() {
    let atom = Atomic::new(MyEnum::A);
    assert_eq!(atom.load(Ordering::SeqCst), MyEnum::A);
    atom.store(MyEnum::B, Ordering::SeqCst);
    assert_eq!(atom.load(Ordering::SeqCst), MyEnum::B);
}