pub struct ModuleGraph { /* private fields */ }Expand description
Validated graph of module definitions.
Implementations§
Source§impl ModuleGraph
impl ModuleGraph
Sourcepub fn from_root<M: Module>() -> Result<Self>
pub fn from_root<M: Module>() -> Result<Self>
Builds and validates a module graph by recursively following typed imports.
Sourcepub fn from_root_and_modules<M, I>(modules: I) -> Result<Self>
pub fn from_root_and_modules<M, I>(modules: I) -> Result<Self>
Builds and validates a module graph from a root module plus explicit definitions.
Sourcepub fn from_modules(
modules: impl IntoIterator<Item = ModuleDefinition>,
) -> Result<Self>
pub fn from_modules( modules: impl IntoIterator<Item = ModuleDefinition>, ) -> Result<Self>
Builds and validates a module graph.
Sourcepub fn get(&self, name: &str) -> Option<&ModuleDefinition>
pub fn get(&self, name: &str) -> Option<&ModuleDefinition>
Returns a module definition by name.
Sourcepub fn modules(&self) -> impl Iterator<Item = &ModuleDefinition>
pub fn modules(&self) -> impl Iterator<Item = &ModuleDefinition>
Returns validated module definitions in deterministic name order.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ModuleGraph
impl RefUnwindSafe for ModuleGraph
impl Send for ModuleGraph
impl Sync for ModuleGraph
impl Unpin for ModuleGraph
impl UnsafeUnpin for ModuleGraph
impl UnwindSafe for ModuleGraph
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