pub struct ModuleSet { /* private fields */ }Expand description
A validated, resolved selection: the modules a venture will carry, in an order where a module’s dependencies come before it (build and mount order), each pinned to the exact reviewed release resolution picked (issue #142). Core modules are always present.
Implementations§
Source§impl ModuleSet
impl ModuleSet
Sourcepub fn releases(&self) -> &[PinnedRelease]
pub fn releases(&self) -> &[PinnedRelease]
The exact reviewed releases the resolution pinned, in slug order
of Self::slugs (issue #142). Provenance records these, so a
built artifact says what it was built from.
Sourcepub fn release(&self, slug: &str) -> Option<&PinnedRelease>
pub fn release(&self, slug: &str) -> Option<&PinnedRelease>
The pin chosen for one slug, if it is in the set.
Sourcepub fn content_key(&self) -> String
pub fn content_key(&self) -> String
The content address of the set: the sorted slugs joined with +,
so two selections with the same modules produce the same key
whatever order they were picked in (harness ADR 0009 keys the
artifact on the module set, not the customer). The pinned
versions are deliberately not in this key: it names the set,
Self::releases names the exact builds, and provenance binds
the two.
Trait Implementations§
impl Eq for ModuleSet
impl StructuralPartialEq for ModuleSet
Auto Trait Implementations§
impl Freeze for ModuleSet
impl RefUnwindSafe for ModuleSet
impl Send for ModuleSet
impl Sync for ModuleSet
impl Unpin for ModuleSet
impl UnsafeUnpin for ModuleSet
impl UnwindSafe for ModuleSet
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> 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§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
key and return true if they are equal.