pub struct Parts<'a> {
pub system: Option<&'a str>,
pub kind: &'a str,
pub id: Option<&'a str>,
}Expand description
A link decomposed against a declared system set.
Fields§
§system: Option<&'a str>The external system, if the head names a declared one.
kind: &'a str§id: Option<&'a str>Verbatim remainder; None for singleton links (self).
Implementations§
Source§impl<'a> Parts<'a>
impl<'a> Parts<'a>
Sourcepub fn namespace(&self) -> &'a str
pub fn namespace(&self) -> &'a str
What allowed-kind policy matches on: the system for external links
(graph), the kind for KB-native ones (person).
pub fn is_external(&self) -> bool
Sourcepub fn recognized(&self, kinds: &[&str], singletons: &[&str]) -> bool
pub fn recognized(&self, kinds: &[&str], singletons: &[&str]) -> bool
Whether this link’s head names something the caller knows: a declared
system (already encoded — parts only sets system for declared
ones), an id-carrying kind, or a singleton kind. The ONE predicate
both validation (prose leniency, unrecognized warnings) and
navigation (which prose brackets become graph edges) must share —
two implementations here means backlinks and validation disagree.
Trait Implementations§
impl<'a> Copy for Parts<'a>
impl<'a> Eq for Parts<'a>
impl<'a> StructuralPartialEq for Parts<'a>
Auto Trait Implementations§
impl<'a> Freeze for Parts<'a>
impl<'a> RefUnwindSafe for Parts<'a>
impl<'a> Send for Parts<'a>
impl<'a> Sync for Parts<'a>
impl<'a> Unpin for Parts<'a>
impl<'a> UnsafeUnpin for Parts<'a>
impl<'a> UnwindSafe for Parts<'a>
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