pub struct CircleSnapshotImageReclaimTarget {
pub circle_id: CircleId,
pub snapshot_author: StoreDeviceRegistrationRef,
pub control: CircleControlCoord,
pub snapshot: CircleSnapshotRef,
pub image: SnapshotImageRef,
}Expand description
The exact image of one generation of a device’s standalone Circle snapshot stream.
Only the image ciphertext is ever a reclaim target. A reader reconstructs the stream by walking it from generation zero along each metadata object’s create-once successor slot and stopping at the first slot that is absent, so deleting any generation’s metadata hides every later generation from every reader — the metadata chain is permanent regardless of how superseded the generation is.
Fields§
§circle_id: CircleId§control: CircleControlCoord§snapshot: CircleSnapshotRef§image: SnapshotImageRefImplementations§
Source§impl CircleSnapshotImageReclaimTarget
impl CircleSnapshotImageReclaimTarget
Sourcepub fn snapshot_owner(
&self,
store_root_hash: ObjectHash,
) -> Result<SnapshotObjectOwner, StoreProtocolError>
pub fn snapshot_owner( &self, store_root_hash: ObjectHash, ) -> Result<SnapshotObjectOwner, StoreProtocolError>
The ownership record’s owner for this image: the device-authorized activation of the author’s per-Circle snapshot stream, at this generation. Derived from the target’s own identity rather than carried in it, so an ownership record can only close against the generation that published it.
Trait Implementations§
Source§impl Clone for CircleSnapshotImageReclaimTarget
impl Clone for CircleSnapshotImageReclaimTarget
Source§fn clone(&self) -> CircleSnapshotImageReclaimTarget
fn clone(&self) -> CircleSnapshotImageReclaimTarget
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'de> Deserialize<'de> for CircleSnapshotImageReclaimTarget
impl<'de> Deserialize<'de> for CircleSnapshotImageReclaimTarget
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CircleSnapshotImageReclaimTarget
impl PartialEq for CircleSnapshotImageReclaimTarget
Source§fn eq(&self, other: &CircleSnapshotImageReclaimTarget) -> bool
fn eq(&self, other: &CircleSnapshotImageReclaimTarget) -> bool
self and other values to be equal, and is used by ==.impl Eq for CircleSnapshotImageReclaimTarget
impl StructuralPartialEq for CircleSnapshotImageReclaimTarget
Auto Trait Implementations§
impl Freeze for CircleSnapshotImageReclaimTarget
impl RefUnwindSafe for CircleSnapshotImageReclaimTarget
impl Send for CircleSnapshotImageReclaimTarget
impl Sync for CircleSnapshotImageReclaimTarget
impl Unpin for CircleSnapshotImageReclaimTarget
impl UnsafeUnpin for CircleSnapshotImageReclaimTarget
impl UnwindSafe for CircleSnapshotImageReclaimTarget
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.