pub enum EndpointKind {
NoteOfKind(&'static str),
EntityOfKind(&'static str),
EntityOfType {
kind: &'static str,
entity_type: &'static str,
},
}Expand description
Match spec for one end of an EdgeEndpointRule.
Identifies a substrate + kind pair that the rule applies to. Note that
kind strings refer to the pack-declared note kinds / entity kinds — not
the closed EdgeRelation set, which is universal.
Variants§
NoteOfKind(&'static str)
A note whose kind field equals the given string (e.g. "task").
EntityOfKind(&'static str)
An entity whose kind field equals the given string (e.g. "concept").
EntityOfType
An entity whose base kind AND entity_type subtype both match the
given strings (e.g. kind: "concept", entity_type: "theorem"). Both
fields must match — enforcing the (EntityKind, entity_type) registry
invariant required by ADR-001:102. Required for granular entity subtypes
(formal-math theorem/definition, AMR gene/drug/pathogen): EntityOfKind
only sees the base kind ("concept"), so an EntityOfKind("theorem")
rule is silently inert. Additive — tightens nothing in the closed relation
set.
Trait Implementations§
Source§impl Clone for EndpointKind
impl Clone for EndpointKind
Source§fn clone(&self) -> EndpointKind
fn clone(&self) -> EndpointKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for EndpointKind
Source§impl Debug for EndpointKind
impl Debug for EndpointKind
impl Eq for EndpointKind
Source§impl PartialEq for EndpointKind
impl PartialEq for EndpointKind
impl StructuralPartialEq for EndpointKind
Auto Trait Implementations§
impl Freeze for EndpointKind
impl RefUnwindSafe for EndpointKind
impl Send for EndpointKind
impl Sync for EndpointKind
impl Unpin for EndpointKind
impl UnsafeUnpin for EndpointKind
impl UnwindSafe for EndpointKind
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> 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