pub struct ContextProviderId(/* private fields */);Expand description
Validated context provider identity: the LOCAL id an extension declares
(the full runtime address is composed as extension:<plugin>:<id>).
Newtype invariants (enforced by ContextProviderId::parse, the ONLY
constructor — fail closed on any violation):
- non-empty;
- at most
CONTEXT_PROVIDER_ID_MAX_BYTESbytes; - ASCII-safe: printable ASCII only (no control chars, no whitespace, no non-ASCII);
- no
':'so the composed runtime address stays reverse-parseable.
Comparison is EXACT byte equality; there is no public mutable access to the inner string.
Implementations§
Trait Implementations§
Source§impl Clone for ContextProviderId
impl Clone for ContextProviderId
Source§impl Debug for ContextProviderId
impl Debug for ContextProviderId
Source§impl Display for ContextProviderId
impl Display for ContextProviderId
impl Eq for ContextProviderId
Source§impl Hash for ContextProviderId
impl Hash for ContextProviderId
Source§impl PartialEq for ContextProviderId
impl PartialEq for ContextProviderId
impl StructuralPartialEq for ContextProviderId
Auto Trait Implementations§
impl Freeze for ContextProviderId
impl RefUnwindSafe for ContextProviderId
impl Send for ContextProviderId
impl Sync for ContextProviderId
impl Unpin for ContextProviderId
impl UnsafeUnpin for ContextProviderId
impl UnwindSafe for ContextProviderId
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
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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.