Expand description
radium
provides a series of helpers for a uniform API over both atomic
types like AtomicUsize
, and non-atomic types like Cell<T>
.
This crate is #![no_std]
-compatible, and uses no non-core types.
For details, see the documentation for Radium
.
The types
module provides type names that are atomic where the target
supports it, and fall back to Cell
when the target does not.
The if_atomic!
macro provides a means of conditional compilation based on
the presence of atomic instructions. It is a substitute for the
cfg(target_has_atomic)
or cfg(accessible)
attribute tests, which are not
yet stabilized.
@kneecaw - https://twitter.com/kneecaw/status/1132695060812849154
Feelin’ lazy: Has someone already written a helper trait abstracting operations over
AtomicUsize
andCell<usize>
for generic code which may not care about atomicity?
@ManishEarth - https://twitter.com/ManishEarth/status/1132706585300496384
no but call the crate radium
(since people didn’t care that it was radioactive and used it in everything)
Modules
Macros
Conditional compilation based on the presence of atomic instructions.
Traits
A maybe-atomic shared mutable fundamental type T
.