pub enum Entry<'a, K> {
Occupied(OccupiedEntry<'a, K>),
Vacant(VacantEntry<'a, K>),
}
client
only.Expand description
A view into a single object, with enough context to create or update it
See Api::entry
for more information.
Variants§
Occupied(OccupiedEntry<'a, K>)
An object that either exists on the server, or has been created locally (and is awaiting synchronization)
Vacant(VacantEntry<'a, K>)
An object that does not exist
Implementations§
Source§impl<'a, K> Entry<'a, K>
impl<'a, K> Entry<'a, K>
Sourcepub fn get(&self) -> Option<&K>
pub fn get(&self) -> Option<&K>
Borrow the object, if it exists (on the API, or queued for creation using Entry::or_insert
)
Sourcepub fn get_mut(&mut self) -> Option<&mut K>
pub fn get_mut(&mut self) -> Option<&mut K>
Borrow the object mutably, if it exists (on the API, or queued for creation using Entry::or_insert
)
OccupiedEntry::commit
must be called afterwards for any changes to be persisted.
Sourcepub fn and_modify(self, f: impl FnOnce(&mut K)) -> Self
pub fn and_modify(self, f: impl FnOnce(&mut K)) -> Self
Let f
modify the object, if it exists (on the API, or queued for creation using Entry::or_insert
)
OccupiedEntry::commit
must be called afterwards for any changes to be persisted.
Sourcepub fn or_insert(self, default: impl FnOnce() -> K) -> OccupiedEntry<'a, K>where
K: Resource,
pub fn or_insert(self, default: impl FnOnce() -> K) -> OccupiedEntry<'a, K>where
K: Resource,
Create a new object if it does not already exist
OccupiedEntry::commit
must be called afterwards for the change to be persisted.
Trait Implementations§
Auto Trait Implementations§
impl<'a, K> Freeze for Entry<'a, K>where
K: Freeze,
impl<'a, K> !RefUnwindSafe for Entry<'a, K>
impl<'a, K> Send for Entry<'a, K>where
K: Send,
impl<'a, K> Sync for Entry<'a, K>where
K: Sync,
impl<'a, K> Unpin for Entry<'a, K>where
K: Unpin,
impl<'a, K> !UnwindSafe for Entry<'a, K>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more