pub struct ProviderDef {
pub id: String,
pub tool: String,
pub url_template: String,
pub archive: String,
pub strip: u32,
pub bin: Vec<String>,
pub os_map: BTreeMap<String, String>,
pub arch_map: BTreeMap<String, String>,
}Expand description
A declarative provider definition (one tool).
Fields§
§id: StringProvider id, e.g. "official/node".
tool: StringThe tool this provider serves.
url_template: StringURL template with {version}/{os}/{arch}/{ext} placeholders.
archive: StringArchive kind: tar.gz / tgz / zip / raw.
strip: u32Components to strip when materializing (recorded for the store layout).
bin: Vec<String>Executables to expose (paths relative to the laid-out tree).
os_map: BTreeMap<String, String>Map a canonical OS token to the upstream spelling (macos → darwin).
arch_map: BTreeMap<String, String>Map a canonical arch token to the upstream spelling (aarch64 → arm64).
Implementations§
Trait Implementations§
Source§impl Clone for ProviderDef
impl Clone for ProviderDef
Source§fn clone(&self) -> ProviderDef
fn clone(&self) -> ProviderDef
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 ProviderDef
impl Debug for ProviderDef
Source§impl<'de> Deserialize<'de> for ProviderDef
impl<'de> Deserialize<'de> for ProviderDef
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ProviderDef
impl PartialEq for ProviderDef
Source§fn eq(&self, other: &ProviderDef) -> bool
fn eq(&self, other: &ProviderDef) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for ProviderDef
impl Serialize for ProviderDef
impl StructuralPartialEq for ProviderDef
Auto Trait Implementations§
impl Freeze for ProviderDef
impl RefUnwindSafe for ProviderDef
impl Send for ProviderDef
impl Sync for ProviderDef
impl Unpin for ProviderDef
impl UnsafeUnpin for ProviderDef
impl UnwindSafe for ProviderDef
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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