pub enum BackendMethod {
TakedownAccount,
SuspendAccount,
RestoreAccount,
ApplyLabel,
NegateLabel,
}Expand description
Backend method enum. The set is fixed; the resolver rejects
any other string. OzoneBackend (#86–#90) implements three
of these (TakedownAccount, SuspendAccount, RestoreAccount)
against bsky-PDS’s com.atproto.admin.updateSubjectStatus;
ApplyLabel and NegateLabel return Unsupported at runtime
per A5 (#89) — labels stay native to cairn-mod’s
subscribeLabels.
Variants§
TakedownAccount
Permanently take down the account at the PDS side.
SuspendAccount
Suspend the account (semantics vary by backend; bsky-PDS expresses suspension via takedown with a scheduled lift, which v1.7 doesn’t yet implement).
RestoreAccount
Restore (un-takedown / un-suspend) the account.
ApplyLabel
Apply a label at the PDS side. Not implemented by
OzoneBackend in v1.7 (#89): cairn-mod’s labels stay
native to its subscribeLabels surface. Mapping a
cairn-mod action to this method is syntactically valid
but emits a config-load warning so operators see the
mismatch.
NegateLabel
Negate a previously-applied label at the PDS side. Same
Unsupported posture as Self::ApplyLabel.
Implementations§
Source§impl BackendMethod
impl BackendMethod
Sourcepub fn as_wire_str(self) -> &'static str
pub fn as_wire_str(self) -> &'static str
Wire-string form. Inverse of the module-private
from_wire_str parser; call sites that need a string
for logs / audit context use this method.
Sourcepub fn is_implemented_by_ozone_v1_7(self) -> bool
pub fn is_implemented_by_ozone_v1_7(self) -> bool
Whether OzoneBackend (the v1.7 backend) implements this
method. Returns false for the label methods that
OzoneBackend will reject at runtime per A5 (#89). The
resolver uses this to emit a config-load warning when an
action_map entry maps to an unimplemented method.
Sourcepub fn returns_action_id(self) -> bool
pub fn returns_action_id(self) -> bool
Whether the trait method for this backend method returns
Result<BackendActionId, BackendError> (true) versus
Result<(), BackendError> (false).
Used by the dispatch path in crate::pds_admin::dispatch
to project a backend-call result into the unified
Result<Option<BackendActionId>, BackendError> shape that
crate::pds_admin::audit::record_pds_admin_call expects.
Per #87 — single-source the convention so call sites don’t
need to remember which methods carry an id.
takedown_account and suspend_account synthesize a
client-side id (per #87’s synthesize_action_id) so they
“return” one. restore_account takes a prior id and
returns nothing semantically new. The label methods don’t
participate in the id surface.
Trait Implementations§
Source§impl Clone for BackendMethod
impl Clone for BackendMethod
impl Copy for BackendMethod
Source§impl Debug for BackendMethod
impl Debug for BackendMethod
impl Eq for BackendMethod
Source§impl Hash for BackendMethod
impl Hash for BackendMethod
Source§impl Ord for BackendMethod
impl Ord for BackendMethod
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for BackendMethod
impl PartialEq for BackendMethod
Source§impl PartialOrd for BackendMethod
impl PartialOrd for BackendMethod
Source§impl Serialize for BackendMethod
impl Serialize for BackendMethod
impl StructuralPartialEq for BackendMethod
Auto Trait Implementations§
impl Freeze for BackendMethod
impl RefUnwindSafe for BackendMethod
impl Send for BackendMethod
impl Sync for BackendMethod
impl Unpin for BackendMethod
impl UnsafeUnpin for BackendMethod
impl UnwindSafe for BackendMethod
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);