pub struct DeleteOutcome {
pub wraps_dispatched: usize,
pub wraps_total: usize,
pub cooperative_hide_sent: bool,
pub blobs_dispatched: usize,
pub any_network_action: bool,
}Expand description
Outcome of a delete-own-* operation.
Vector’s deletion is layered and best-effort: any subset of the layers may be available depending on whether we hold retained ephemeral keys, whether the message has attachments, etc. The outcome reports what was attempted so the caller can show an honest post-action summary.
Fields§
§wraps_dispatched: usizeNumber of retained wraps for which we dispatched a NIP-09 deletion task (Layer 1 — relay-level nuke). Zero when the message predates retention or was sent from a different device.
wraps_total: usizeTotal wraps we had keys for at delete time (= wraps_dispatched for now; reserved for future “skipped due to error” reporting).
cooperative_hide_sent: boolWhether we sent a cooperative-hide notice (Layer 2). Always true for own deletions in groups/DMs that succeed; tells live Vector clients to drop the row from local UI.
blobs_dispatched: usizeNumber of Blossom blobs we asked the upload server to delete. Best-effort: actual server response is logged, not surfaced.
any_network_action: boolTrue iff at least one of (wrap nuke, cooperative hide, blob delete) was attempted. False means the only thing the operation could do is a local-state drop — caller can use this to surface “we couldn’t actually remove this from the network” copy.
Trait Implementations§
Source§impl Clone for DeleteOutcome
impl Clone for DeleteOutcome
Source§fn clone(&self) -> DeleteOutcome
fn clone(&self) -> DeleteOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DeleteOutcome
impl Debug for DeleteOutcome
Source§impl Default for DeleteOutcome
impl Default for DeleteOutcome
Source§fn default() -> DeleteOutcome
fn default() -> DeleteOutcome
Auto Trait Implementations§
impl Freeze for DeleteOutcome
impl RefUnwindSafe for DeleteOutcome
impl Send for DeleteOutcome
impl Sync for DeleteOutcome
impl Unpin for DeleteOutcome
impl UnsafeUnpin for DeleteOutcome
impl UnwindSafe for DeleteOutcome
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,
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