pub struct ValidatedMem {
pub config: PublishedMemConfig,
pub entities: Vec<Entity>,
pub store: Store,
pub communities: LouvainOutput,
pub stats: MemStats,
pub canonical_bytes: Vec<u8>,
pub schema_files: Vec<SchemaFile>,
pub dangling_cross_mem_edges: Vec<DanglingCrossMemEdge>,
pub provenance_bytes: Option<Vec<u8>>,
}Expand description
The successful output of validation: strict-checked entities, a built graph, community assignments, and the canonical bytes that should replace the input in any cache.
Fields§
§config: PublishedMemConfig§entities: Vec<Entity>§store: Store§communities: LouvainOutput§stats: MemStats§canonical_bytes: Vec<u8>§schema_files: Vec<SchemaFile>Schema source files found under .memstead/schema/ in the
archive.
Empty only if the archive was never meant to carry a schema
(callers typically short-circuit before reaching here).
format: 2 archives (top-level schema/ tree) are rejected
upstream in check_format and never materialize here.
dangling_cross_mem_edges: Vec<DanglingCrossMemEdge>Relationships whose target lives outside this mem — edges that
can’t resolve inside the single-mem archive. Always empty when
produced via the strict (validate_and_normalize_archive) path:
that path refuses on the first such edge. Populated only via
validate_and_normalize_archive_lenient (the export side),
which collects them so export can warn
(DANGLING_CROSS_MEM_EDGE_IN_EXPORT) rather than refuse.
provenance_bytes: Option<Vec<u8>>Raw bytes of the archive’s authoring-provenance payload
(.memstead/provenance.json), or None when the archive carries
none. Surfaced so the registry and other validation consumers can
expose provenance without re-extracting the archive.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ValidatedMem
impl RefUnwindSafe for ValidatedMem
impl Send for ValidatedMem
impl Sync for ValidatedMem
impl Unpin for ValidatedMem
impl UnsafeUnpin for ValidatedMem
impl UnwindSafe for ValidatedMem
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> 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>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn 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>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which 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)
&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)
&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> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> Fruit for T
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