pub struct PrefixComponent<'a> {
raw: &'a OsStr,
parsed: Prefix<'a>,
}
Expand description
A structure wrapping a Windows path prefix as well as its unparsed string representation.
In addition to the parsed Prefix
information returned by kind
,
PrefixComponent
also holds the raw and unparsed OsStr
slice,
returned by as_os_str
.
Instances of this struct
can be obtained by matching against the
Prefix
variant on Component
.
Does not occur on Unix.
§Examples
use std::path::{Component, Path, Prefix};
use std::ffi::OsStr;
let path = Path::new(r"c:\you\later\");
match path.components().next().unwrap() {
Component::Prefix(prefix_component) => {
assert_eq!(Prefix::Disk(b'C'), prefix_component.kind());
assert_eq!(OsStr::new("c:"), prefix_component.as_os_str());
}
_ => unreachable!(),
}
Fields§
§raw: &'a OsStr
§parsed: Prefix<'a>
Implementations§
Trait Implementations§
1.0.0 · source§impl<'a> Clone for PrefixComponent<'a>
impl<'a> Clone for PrefixComponent<'a>
source§fn clone(&self) -> PrefixComponent<'a>
fn clone(&self) -> PrefixComponent<'a>
Returns a copy 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 more1.0.0 · source§impl<'a> Debug for PrefixComponent<'a>
impl<'a> Debug for PrefixComponent<'a>
1.0.0 · source§impl Hash for PrefixComponent<'_>
impl Hash for PrefixComponent<'_>
1.0.0 · source§impl Ord for PrefixComponent<'_>
impl Ord for PrefixComponent<'_>
source§fn cmp(&self, other: &PrefixComponent<'_>) -> Ordering
fn cmp(&self, other: &PrefixComponent<'_>) -> 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
1.0.0 · source§impl<'a> PartialEq for PrefixComponent<'a>
impl<'a> PartialEq for PrefixComponent<'a>
1.0.0 · source§impl<'a> PartialOrd for PrefixComponent<'a>
impl<'a> PartialOrd for PrefixComponent<'a>
impl<'a> Copy for PrefixComponent<'a>
impl<'a> Eq for PrefixComponent<'a>
Auto Trait Implementations§
impl<'a> Freeze for PrefixComponent<'a>
impl<'a> RefUnwindSafe for PrefixComponent<'a>
impl<'a> Send for PrefixComponent<'a>
impl<'a> Sync for PrefixComponent<'a>
impl<'a> Unpin for PrefixComponent<'a>
impl<'a> UnwindSafe for PrefixComponent<'a>
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,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)