pub struct MirroredHashMap<K, V, Codec = Default> { /* private fields */ }Expand description
A hash map that is mirroring an observable hash map.
Implementations§
Source§impl<K, V, Codec> MirroredHashMap<K, V, Codec>
impl<K, V, Codec> MirroredHashMap<K, V, Codec>
Sourcepub async fn borrow(&self) -> Result<MirroredHashMapRef<'_, K, V>, RecvError>
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn borrow(&self) -> Result<MirroredHashMapRef<'_, K, V>, RecvError>
Returns a reference to the current value of the hash map.
Updates are paused while the read lock is held.
This method returns an error if the observed hash map has been dropped or the connection to it failed before it was marked as done by calling ObservableHashMap::done. In this case the mirrored contents at the point of loss of connection can be obtained using detach.
Sourcepub async fn borrow_and_update(
&mut self,
) -> Result<MirroredHashMapRef<'_, K, V>, RecvError>
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn borrow_and_update( &mut self, ) -> Result<MirroredHashMapRef<'_, K, V>, RecvError>
Returns a reference to the current value of the hash map and marks it as seen.
Thus changed will not return immediately until the value changes after this method returns.
Updates are paused while the read lock is held.
This method returns an error if the observed hash map has been dropped or the connection to it failed before it was marked as done by calling ObservableHashMap::done. In this case the mirrored contents at the point of loss of connection can be obtained using detach.
Sourcepub async fn detach(self) -> HashMap<K, V>
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn detach(self) -> HashMap<K, V>
Stops updating the hash map and returns its current contents.
Sourcepub async fn changed(&mut self)
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn changed(&mut self)
Waits for a change and marks the newest value as seen.
This also returns when connection to the observed hash map has been lost or the hash map has been marked as done.
Sourcepub async fn subscribe(
&self,
buffer: usize,
) -> Result<HashMapSubscription<K, V, Codec>, RecvError>
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn subscribe( &self, buffer: usize, ) -> Result<HashMapSubscription<K, V, Codec>, RecvError>
Subscribes to change events from this mirrored hash map.
The current contents of the hash map is included with the subscription.
buffer specifies the maximum size of the event buffer for this subscription in number of events.
If it is exceeded the subscription is shed and the receiver gets a RecvError::Lagged.
Sourcepub async fn subscribe_incremental(
&self,
buffer: usize,
) -> Result<HashMapSubscription<K, V, Codec>, RecvError>
👎Deprecated: remoc-obs has been integrated into remoc as module remoc::robs. Please update your references.
pub async fn subscribe_incremental( &self, buffer: usize, ) -> Result<HashMapSubscription<K, V, Codec>, RecvError>
Subscribes to change events from this mirrored hash map with incremental sending of the current contents.
The current contents of the hash map are sent incrementally.
buffer specifies the maximum size of the event buffer for this subscription in number of events.
If it is exceeded the subscription is shed and the receiver gets a RecvError::Lagged.