[−][src]Struct sp_runtime::offchain::storage::StorageValueRef
An abstraction over local storage value.
Implementations
impl<'a> StorageValueRef<'a>
[src]
pub fn persistent(key: &'a [u8]) -> Self
[src]
Create a new reference to a value in the persistent local storage.
pub fn local(key: &'a [u8]) -> Self
[src]
Create a new reference to a value in the fork-aware local storage.
pub fn set(&self, value: &impl Encode)
[src]
Set the value of the storage to encoding of given parameter.
Note that the storage may be accessed by workers running concurrently,
if you happen to write a get-check-set
pattern you should most likely
be using mutate
instead.
pub fn clear(&mut self)
[src]
Remove the associated value from the storage.
pub fn get<T: Decode>(&self) -> Option<Option<T>>
[src]
Retrieve & decode the value from storage.
Note that if you want to do some checks based on the value
and write changes after that you should rather be using mutate
.
The function returns None
if the value was not found in storage,
otherwise a decoding of the value to requested type.
pub fn mutate<T, E, F>(&self, f: F) -> Result<Result<T, T>, E> where
T: Codec,
F: FnOnce(Option<Option<T>>) -> Result<T, E>,
[src]
T: Codec,
F: FnOnce(Option<Option<T>>) -> Result<T, E>,
Retrieve & decode the value and set it to a new one atomically.
Function f
should return a new value that we should attempt to write to storage.
This function returns:
Ok(Ok(T))
in case the value has been successfully set.Ok(Err(T))
in case the value was calculated by the passed closuref
, but it could not be stored.Err(_)
in casef
returns an error.
Auto Trait Implementations
impl<'a> RefUnwindSafe for StorageValueRef<'a>
impl<'a> Send for StorageValueRef<'a>
impl<'a> Sync for StorageValueRef<'a>
impl<'a> Unpin for StorageValueRef<'a>
impl<'a> UnwindSafe for StorageValueRef<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> CheckedConversion for T
[src]
fn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>,
[src]
Self: TryFrom<T>,
fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
[src]
Self: TryInto<T>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
[src]
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
fn from_ref(outer: &Outer) -> &T
[src]
Get a reference to the inner from the outer.
fn from_mut(outer: &mut Outer) -> &mut T
[src]
Get a mutable reference to the inner from the outer.
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,
[src]
T: RefUnwindSafe,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> SaturatedConversion for T
[src]
fn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
[src]
Self: UniqueSaturatedFrom<T>,
fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
[src]
Self: UniqueSaturatedInto<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
[src]
T: UncheckedFrom<S>,
fn unchecked_into(self) -> T
[src]
impl<T, S> UniqueSaturatedInto<T> for S where
S: TryInto<T>,
T: Bounded,
[src]
S: TryInto<T>,
T: Bounded,
fn unique_saturated_into(self) -> T
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,