pub struct Projection {
pub capabilities: Vec<Selection>,
pub candidates: Vec<Candidate>,
pub omissions: Vec<Omission>,
pub collisions: Vec<Collision>,
pub licence_refusal: Option<String>,
pub record_defects: Vec<String>,
}Expand description
The complete candidate artifact tree for one target.
A value, never a record: it carries no operation, no decision, and no apply state, and it is not serializable. A consumer renders it again from scratch rather than reading a saved copy.
Fields§
§capabilities: Vec<Selection>Every capability the catalog answered for this target, in catalog order: selected, withheld, or omitted with its reason.
candidates: Vec<Candidate>Every candidate, sorted by destination.
omissions: Vec<Omission>The destinations the target’s own state withholds, each with its one reason and, where one exists, the operator’s one edit. A destination no selected capability ships is absent, never omitted.
collisions: Vec<Collision>The block destinations whose existing document offers the block no place, a target-side defect staging explains and landing refuses.
licence_refusal: Option<String>Why the recorded code scanning provider’s licence condition refuses
this target, or None where no condition applies or the licence
satisfies it. A landing verb refuses on it and writes nothing; rk status reports it as a warning and still exits 0, because the
target is not broken and the operator owns the licensing decision.
record_defects: Vec<String>Why a recorded capability cannot run at this target at all, which is a receipt nothing can honour rather than a decision anyone made. Empty on every target whose parameters came through resolution, because resolution refuses these before they are recorded.
Implementations§
Source§impl Projection
impl Projection
Sourcepub fn compute(input: &ProjectionInput) -> Result<Self, RkError>
pub fn compute(input: &ProjectionInput) -> Result<Self, RkError>
The complete candidate tree for input, from this binary’s
embedded sources alone.
§Errors
A source defect in this binary: an unknown technology or an
unsupported pair as RkError::Usage, and as RkError::Other a
destination two sources ship, a snippet the kind table does not
classify, or a block this binary does not embed.
Why the selected release automation cannot land, where the profile asked for one this release does not carry at its dimensions. An apply refuses on it before any write; a preview reports it.
Sourcepub fn capability(&self, id: &str) -> Option<&Selection>
pub fn capability(&self, id: &str) -> Option<&Selection>
The one selection for a capability.
Trait Implementations§
Source§impl Clone for Projection
impl Clone for Projection
Source§fn clone(&self) -> Projection
fn clone(&self) -> Projection
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Projection
impl Debug for Projection
impl Eq for Projection
Source§impl PartialEq for Projection
impl PartialEq for Projection
impl StructuralPartialEq for Projection
Auto Trait Implementations§
impl Freeze for Projection
impl RefUnwindSafe for Projection
impl Send for Projection
impl Sync for Projection
impl Unpin for Projection
impl UnsafeUnpin for Projection
impl UnwindSafe for Projection
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.