pub enum Registration {
Unknown,
NoSliceForProducer,
Unregistered,
Registered(Box<SubjectFacts>),
NotApplicable,
}Expand description
Whether the registry recognises this subject.
RFC 09 §5.1 O2 asks an observer to classify by degrading — “unregistered”
and “no slice for this producer” are distinct rungs, each weakening the
claim rather than discarding the key — and O4 is why a bool cannot be
honest here: it renders “we have not loaded a registry yet” identically to
“this subject is not registered”. That is the false-verdict failure of
RFC 05 §3.1 / RFC 12 §9 applied to a badge — silence is never a verdict,
and neither is a not-yet-asked question.
Variants§
Unknown
No slice set loaded yet. We have not asked. Render as “—”, never “wild”.
NoSliceForProducer
Slices are loaded, but none declares this producer.
Unregistered
The producer’s slice is loaded and does not declare this subject. “A subject that is not registered does not exist” (RFC 08) — for a conforming producer. On the wire it is simply unregistered traffic.
Registered(Box<SubjectFacts>)
NotApplicable
The key has no registry surface to check: not under the base, unparsed, or on a verbatim plane (the slice carries subjects, not plane keys).
Trait Implementations§
Source§impl Clone for Registration
impl Clone for Registration
Source§fn clone(&self) -> Registration
fn clone(&self) -> Registration
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 Registration
impl Debug for Registration
impl Eq for Registration
Source§impl PartialEq for Registration
impl PartialEq for Registration
impl StructuralPartialEq for Registration
Auto Trait Implementations§
impl Freeze for Registration
impl RefUnwindSafe for Registration
impl Send for Registration
impl Sync for Registration
impl Unpin for Registration
impl UnsafeUnpin for Registration
impl UnwindSafe for Registration
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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
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> 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