pub struct FuchsiaPkgPinnedAbsolutePackageUrl { /* private fields */ }Expand description
A URL locating a Fuchsia package. Must have a hash.
Has the form “fuchsia-pkg://
- “repository” is a valid hostname
- “name” is a valid package name
- “variant” is an optional valid package variant
- “hash” is a valid package hash https://fuchsia.dev/fuchsia-src/concepts/packages/package_url
Implementations§
Source§impl FuchsiaPkgPinnedAbsolutePackageUrl
impl FuchsiaPkgPinnedAbsolutePackageUrl
Sourcepub fn new(
repo: RepositoryUrl,
name: PackageName,
variant: Option<PackageVariant>,
hash: Hash,
) -> Self
pub fn new( repo: RepositoryUrl, name: PackageName, variant: Option<PackageVariant>, hash: Hash, ) -> Self
Create a FuchsiaPkgPinnedAbsolutePackageUrl from its component parts.
Sourcepub fn new_with_path(
repo: RepositoryUrl,
path: &str,
hash: Hash,
) -> Result<Self, ParseError>
pub fn new_with_path( repo: RepositoryUrl, path: &str, hash: Hash, ) -> Result<Self, ParseError>
Create a FuchsiaPkgPinnedAbsolutePackageUrl from its component parts and a &str path that
will be validated.
Sourcepub fn parse(url: &str) -> Result<Self, ParseError>
pub fn parse(url: &str) -> Result<Self, ParseError>
Parse a “fuchsia-pkg://” URL that locates a pinned (has a hash query parameter) package.
Sourcepub fn from_unpinned(
unpinned: FuchsiaPkgUnpinnedAbsolutePackageUrl,
hash: Hash,
) -> Self
pub fn from_unpinned( unpinned: FuchsiaPkgUnpinnedAbsolutePackageUrl, hash: Hash, ) -> Self
Create a FuchsiaPkgPinnedAbsolutePackageUrl from an unpinned url and a hash.
Sourcepub fn into_unpinned_and_hash(
self,
) -> (FuchsiaPkgUnpinnedAbsolutePackageUrl, Hash)
pub fn into_unpinned_and_hash( self, ) -> (FuchsiaPkgUnpinnedAbsolutePackageUrl, Hash)
Split this URL into an unpinned URL and hash.
Sourcepub fn as_unpinned(&self) -> &FuchsiaPkgUnpinnedAbsolutePackageUrl
pub fn as_unpinned(&self) -> &FuchsiaPkgUnpinnedAbsolutePackageUrl
The URL without the hash.
Sourcepub fn set_repository(&mut self, repository: RepositoryUrl) -> &mut Self
pub fn set_repository(&mut self, repository: RepositoryUrl) -> &mut Self
Change the repository to repository.
Methods from Deref<Target = FuchsiaPkgUnpinnedAbsolutePackageUrl>§
Sourcepub fn repository(&self) -> &RepositoryUrl
pub fn repository(&self) -> &RepositoryUrl
The Repository URL behind this URL (this URL without the path).
Sourcepub fn name(&self) -> &PackageName
pub fn name(&self) -> &PackageName
The package name.
Sourcepub fn variant(&self) -> Option<&PackageVariant>
pub fn variant(&self) -> Option<&PackageVariant>
The optional package variant.
Sourcepub fn set_repository(&mut self, repository: RepositoryUrl) -> &mut Self
pub fn set_repository(&mut self, repository: RepositoryUrl) -> &mut Self
Change the repository to repository.
Sourcepub fn clear_variant(&mut self) -> &mut Self
pub fn clear_variant(&mut self) -> &mut Self
Clear the variant if there is one.
Trait Implementations§
Source§impl Clone for FuchsiaPkgPinnedAbsolutePackageUrl
impl Clone for FuchsiaPkgPinnedAbsolutePackageUrl
Source§fn clone(&self) -> FuchsiaPkgPinnedAbsolutePackageUrl
fn clone(&self) -> FuchsiaPkgPinnedAbsolutePackageUrl
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'de> Deserialize<'de> for FuchsiaPkgPinnedAbsolutePackageUrl
impl<'de> Deserialize<'de> for FuchsiaPkgPinnedAbsolutePackageUrl
Source§fn deserialize<D>(de: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(de: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<FuchsiaPkgPinnedAbsolutePackageUrl> for FuchsiaPkgAbsolutePackageUrl
impl From<FuchsiaPkgPinnedAbsolutePackageUrl> for FuchsiaPkgAbsolutePackageUrl
Source§fn from(pinned: FuchsiaPkgPinnedAbsolutePackageUrl) -> Self
fn from(pinned: FuchsiaPkgPinnedAbsolutePackageUrl) -> Self
Converts to this type from the input type.
Source§impl Ord for FuchsiaPkgPinnedAbsolutePackageUrl
impl Ord for FuchsiaPkgPinnedAbsolutePackageUrl
Source§fn cmp(&self, other: &FuchsiaPkgPinnedAbsolutePackageUrl) -> Ordering
fn cmp(&self, other: &FuchsiaPkgPinnedAbsolutePackageUrl) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for FuchsiaPkgPinnedAbsolutePackageUrl
impl PartialEq for FuchsiaPkgPinnedAbsolutePackageUrl
Source§fn eq(&self, other: &FuchsiaPkgPinnedAbsolutePackageUrl) -> bool
fn eq(&self, other: &FuchsiaPkgPinnedAbsolutePackageUrl) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for FuchsiaPkgPinnedAbsolutePackageUrl
impl PartialOrd for FuchsiaPkgPinnedAbsolutePackageUrl
Source§impl TryFrom<&str> for FuchsiaPkgPinnedAbsolutePackageUrl
impl TryFrom<&str> for FuchsiaPkgPinnedAbsolutePackageUrl
impl Eq for FuchsiaPkgPinnedAbsolutePackageUrl
impl StructuralPartialEq for FuchsiaPkgPinnedAbsolutePackageUrl
Auto Trait Implementations§
impl Freeze for FuchsiaPkgPinnedAbsolutePackageUrl
impl RefUnwindSafe for FuchsiaPkgPinnedAbsolutePackageUrl
impl Send for FuchsiaPkgPinnedAbsolutePackageUrl
impl Sync for FuchsiaPkgPinnedAbsolutePackageUrl
impl Unpin for FuchsiaPkgPinnedAbsolutePackageUrl
impl UnwindSafe for FuchsiaPkgPinnedAbsolutePackageUrl
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