pub struct BackendLabel(/* private fields */);Expand description
A label identifying a cache backend.
Used for:
- Backend identification in
Backend::label() - Response source tracking in
ResponseSource::Backend - Metrics labels for composed backends (e.g., “composition.moka”)
§Example
use hitbox_core::BackendLabel;
let label = BackendLabel::new("moka");
let composed = label.compose(&BackendLabel::new("inner"));
assert_eq!(composed.as_str(), "moka.inner");Implementations§
Source§impl BackendLabel
impl BackendLabel
Sourcepub fn new(s: impl Into<SmolStr>) -> BackendLabel
pub fn new(s: impl Into<SmolStr>) -> BackendLabel
Creates a new backend label.
Sourcepub const fn new_static(s: &'static str) -> BackendLabel
pub const fn new_static(s: &'static str) -> BackendLabel
Creates a backend label from a static string (no allocation).
Sourcepub fn as_smol_str(&self) -> &SmolStr
pub fn as_smol_str(&self) -> &SmolStr
Returns a reference to the inner SmolStr.
Sourcepub fn compose(&self, other: &BackendLabel) -> BackendLabel
pub fn compose(&self, other: &BackendLabel) -> BackendLabel
Composes two labels with a dot separator: “self.other”.
Used for hierarchical naming in composition backends, e.g., “composition.moka” or “outer.inner.redis”.
Trait Implementations§
Source§impl AsRef<str> for BackendLabel
impl AsRef<str> for BackendLabel
Source§impl Clone for BackendLabel
impl Clone for BackendLabel
Source§fn clone(&self) -> BackendLabel
fn clone(&self) -> BackendLabel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BackendLabel
impl Debug for BackendLabel
Source§impl Default for BackendLabel
impl Default for BackendLabel
Source§fn default() -> BackendLabel
fn default() -> BackendLabel
Returns the “default value” for a type. Read more
Source§impl Display for BackendLabel
impl Display for BackendLabel
Source§impl From<&str> for BackendLabel
impl From<&str> for BackendLabel
Source§fn from(s: &str) -> BackendLabel
fn from(s: &str) -> BackendLabel
Converts to this type from the input type.
Source§impl From<SmolStr> for BackendLabel
impl From<SmolStr> for BackendLabel
Source§fn from(s: SmolStr) -> BackendLabel
fn from(s: SmolStr) -> BackendLabel
Converts to this type from the input type.
Source§impl From<String> for BackendLabel
impl From<String> for BackendLabel
Source§fn from(s: String) -> BackendLabel
fn from(s: String) -> BackendLabel
Converts to this type from the input type.
Source§impl Hash for BackendLabel
impl Hash for BackendLabel
Source§impl PartialEq for BackendLabel
impl PartialEq for BackendLabel
impl Eq for BackendLabel
impl StructuralPartialEq for BackendLabel
Auto Trait Implementations§
impl Freeze for BackendLabel
impl RefUnwindSafe for BackendLabel
impl Send for BackendLabel
impl Sync for BackendLabel
impl Unpin for BackendLabel
impl UnwindSafe for BackendLabel
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<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
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.