pub struct SystemModel {
pub crates: Vec<Crate>,
pub edges: Vec<Edge>,
pub services: Vec<ServiceBoundary>,
pub runtime_modes: Vec<RuntimeMode>,
pub features_by_crate: BTreeMap<String, Vec<String>>,
pub notes: Vec<String>,
}Expand description
Deterministic, serializable model of the workspace. Built with no LLM calls from facts on disk.
Fields§
§crates: Vec<Crate>Member crates, sorted by package name.
edges: Vec<Edge>Workspace-internal dependency edges, sorted by (from, to).
services: Vec<ServiceBoundary>Service boundaries the workspace reaches, sorted by (kind, name).
runtime_modes: Vec<RuntimeMode>Runtime modes the workspace can operate in (always both).
features_by_crate: BTreeMap<String, Vec<String>>Enabled gobby-core features per crate (package name → sorted feature
list). Only members with a gobby-core dependency appear.
notes: Vec<String>Non-fatal notes recorded while extracting a partial model (e.g. a
member Cargo.toml that could not be read or parsed). Empty for a
fully-resolved workspace.
Trait Implementations§
Source§impl Clone for SystemModel
impl Clone for SystemModel
Source§fn clone(&self) -> SystemModel
fn clone(&self) -> SystemModel
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SystemModel
impl Debug for SystemModel
impl Eq for SystemModel
Source§impl PartialEq for SystemModel
impl PartialEq for SystemModel
Source§fn eq(&self, other: &SystemModel) -> bool
fn eq(&self, other: &SystemModel) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for SystemModel
impl Serialize for SystemModel
impl StructuralPartialEq for SystemModel
Auto Trait Implementations§
impl Freeze for SystemModel
impl RefUnwindSafe for SystemModel
impl Send for SystemModel
impl Sync for SystemModel
impl Unpin for SystemModel
impl UnsafeUnpin for SystemModel
impl UnwindSafe for SystemModel
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
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
Compare self to
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>
Converts
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>
Converts
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