pub struct CodebaseRelation {
pub index: usize,
pub kind: CodebaseRelationKind,
pub basis: CodebaseRelationBasis,
pub semantic: CodebaseRelationSemantic,
pub source: CodebaseRelationSource,
pub target_machine: usize,
pub target_state: usize,
pub declared_reference_type: Option<&'static str>,
pub attested_via: Option<CodebaseAttestedRoute>,
}Expand description
One resolved exact relation in the codebase export surface.
Fields§
§index: usizeStable codebase-local relation index.
kind: CodebaseRelationKindExact relation kind.
basis: CodebaseRelationBasisWhy Statum considered this relation exact.
semantic: CodebaseRelationSemanticHigher-level exact semantics after machine-role classification.
source: CodebaseRelationSourceExact source location for this relation.
target_machine: usizeResolved target machine index.
target_state: usizeResolved target state index.
declared_reference_type: Option<&'static str>Declared nominal reference type when this relation came through
#[machine_ref(...)].
attested_via: Option<CodebaseAttestedRoute>Exact attested producer route when this relation came from
#[via(...)] or a canonical statum::Attested<_, Route> wrapper.
Implementations§
Source§impl CodebaseRelation
impl CodebaseRelation
Sourcepub const fn source_machine(&self) -> usize
pub const fn source_machine(&self) -> usize
Stable source machine index for this exact relation.
Sourcepub const fn source_state(&self) -> Option<usize>
pub const fn source_state(&self) -> Option<usize>
Stable source state index when this relation is state-local.
Sourcepub const fn source_transition(&self) -> Option<usize>
pub const fn source_transition(&self) -> Option<usize>
Stable source transition index when this relation comes from one transition parameter.
Sourcepub const fn target_transition(&self) -> Option<usize>
pub const fn target_transition(&self) -> Option<usize>
Stable target transition index.
The current exact relation substrate does not target transitions, so
this always returns None. The method exists so downstream navigation
can keep one consistent source/target API shape.
Sourcepub const fn is_composition_owned(&self) -> bool
pub const fn is_composition_owned(&self) -> bool
Whether this exact relation is owned by one composition machine through direct child-machine composition.
Trait Implementations§
Source§impl Clone for CodebaseRelation
impl Clone for CodebaseRelation
Source§fn clone(&self) -> CodebaseRelation
fn clone(&self) -> CodebaseRelation
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more