pub struct CstiWorkspace {
pub layout: Workspace,
pub manifest_dir: PathBuf,
pub mcu_dir: Option<PathBuf>,
}Expand description
The build-host directories a pipeline run exposes to every endpoint cargo
invocation, plus the [profile] workspace layout that decides where each
endpoint crate’s target/ lives.
Injected as CSTI_MANIFEST_PATH (always) and CSTI_MCU_PATH (when the
manifest declares exactly one controller-core firmware crate). The generated
AP module names the embedded debug ELFs relative to one of them, so it carries
no build-host path.
Fields§
§layout: Workspace[profile] workspace.
manifest_dir: PathBufAbsolute directory containing Consortium.toml.
mcu_dir: Option<PathBuf>Absolute root of the controller-core firmware crate, when there is exactly one.
Implementations§
Source§impl CstiWorkspace
impl CstiWorkspace
Sourcepub fn env_pairs(&self) -> Vec<(&'static str, &Path)>
pub fn env_pairs(&self) -> Vec<(&'static str, &Path)>
The CSTI_* variables injected into every endpoint cargo invocation.
Sourcepub fn target_base<'a>(&'a self, crate_dir: &'a Path) -> &'a Path
pub fn target_base<'a>(&'a self, crate_dir: &'a Path) -> &'a Path
The directory whose target/ receives the build output of the crate at
crate_dir: the manifest directory in a unified workspace, the crate
itself when nested.
Trait Implementations§
Source§impl Clone for CstiWorkspace
impl Clone for CstiWorkspace
Source§impl Debug for CstiWorkspace
impl Debug for CstiWorkspace
impl Eq for CstiWorkspace
Source§impl PartialEq for CstiWorkspace
impl PartialEq for CstiWorkspace
impl StructuralPartialEq for CstiWorkspace
Auto Trait Implementations§
impl Freeze for CstiWorkspace
impl RefUnwindSafe for CstiWorkspace
impl Send for CstiWorkspace
impl Sync for CstiWorkspace
impl Unpin for CstiWorkspace
impl UnsafeUnpin for CstiWorkspace
impl UnwindSafe for CstiWorkspace
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.