[][src]Struct rustc_data_structures::sync::Atomic

pub struct Atomic<T: Copy>(_);

This is a single threaded variant of AtomicU64, AtomicUsize, etc. It differs from AtomicCell in that it has explicit ordering arguments and is only intended for use with the native atomic types. You should use this type through the AtomicU64, AtomicUsize, etc, type aliases as it's not intended to be used separately.

Methods

impl<T: Copy> Atomic<T>[src]

pub fn new(v: T) -> Self[src]

impl<T: Copy> Atomic<T>[src]

pub fn into_inner(self) -> T[src]

pub fn load(&self, _: Ordering) -> T[src]

pub fn store(&self, val: T, _: Ordering)[src]

pub fn swap(&self, val: T, _: Ordering) -> T[src]

impl<T: Copy + PartialEq> Atomic<T>[src]

pub fn compare_exchange(
    &self,
    current: T,
    new: T,
    _: Ordering,
    _: Ordering
) -> Result<T, T>
[src]

impl<T: Add<Output = T> + Copy> Atomic<T>[src]

pub fn fetch_add(&self, val: T, _: Ordering) -> T[src]

Trait Implementations

impl<T: Debug + Copy> Debug for Atomic<T>[src]

Auto Trait Implementations

impl<T> Send for Atomic<T> where
    T: Send

impl<T> Unpin for Atomic<T> where
    T: Unpin

impl<T> !Sync for Atomic<T>

impl<T> UnwindSafe for Atomic<T> where
    T: UnwindSafe

impl<T> !RefUnwindSafe for Atomic<T>

Blanket Implementations

impl<T> Erased for T[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<E> SpecializationError for E[src]