[−][src]Trait atomic_traits::fetch::Update
Fetches the value, and applies a function to it that returns an optional new value.
Associated Types
type Type
The underlying type
Required methods
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
Fetches the value, and applies a function to it that returns an optional new value.
Returns a Result
of Ok(previous_value)
if the function returned Some(_)
, else Err(previous_value)
.
Implementations on Foreign Types
impl Update for AtomicIsize
[src]
type Type = isize
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicUsize
[src]
type Type = usize
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicI8
[src]
type Type = i8
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicI16
[src]
type Type = i16
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicI32
[src]
type Type = i32
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicI64
[src]
type Type = i64
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicU8
[src]
type Type = u8
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicU16
[src]
type Type = u16
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicU32
[src]
type Type = u32
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
impl Update for AtomicU64
[src]
type Type = u64
fn fetch_update<F>(
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,
[src]
&self,
f: F,
fetch_order: Ordering,
set_order: Ordering
) -> Result<Self::Type, Self::Type> where
F: FnMut(Self::Type) -> Option<Self::Type>,