generic-atomics 0.1.3

Generic Atomic types for types that implement num-primitive traits
Documentation
generic-atomics-0.1.3 has been yanked.

Generic Atomics

crate documentation MSRV

Generic Atomic type for types that implement num-primitive traits.

Compatibility

The crate is tested for stable and nightly compiler.

Current MSRV is 1.97.1.

Usage

Add this to your Cargo.toml:

[dependencies]
generic-atomics = "0.1"

and this to your crate root:

extern crate atomic_traits;

Example

use generic_atomics::{
    Atomic, IntoAtomicFloat, UseUpdateToAdd,
};
use std::sync::atomic::Ordering;

fn main() {
    let fourtytwo = 42.0f64;
    let one = 1f64;
    let af = fourtytwo.into_atomic_float();
    af.fetch_add_via_update(one, Ordering::Relaxed);
    assert_eq!(fourtytwo + one, af.load(Ordering::Relaxed));
}

Context

This crate started from atomic_float and the code generated by the macros of atomic-traits, unlike atomic_float this provides a generic AtomicFlaot<T: PrimitiveFloat> that implements the atomic-traits.