Enum std::path::Component 1.0.0[−][src]
pub enum Component<'a> {
Prefix(PrefixComponent<'a>),
RootDir,
CurDir,
ParentDir,
Normal(&'a OsStr),
}Expand description
A single component of a path.
A Component roughly corresponds to a substring between path separators
(/ or \).
This enum is created by iterating over Components, which in turn is
created by the components method on Path.
Examples
use std::path::{Component, Path}; let path = Path::new("/tmp/foo/bar.txt"); let components = path.components().collect::<Vec<_>>(); assert_eq!(&components, &[ Component::RootDir, Component::Normal("tmp".as_ref()), Component::Normal("foo".as_ref()), Component::Normal("bar.txt".as_ref()), ]);Run
Variants
Prefix(PrefixComponent<'a>)Expand description
A Windows path prefix, e.g., C: or \\server\share.
There is a large variety of prefix types, see Prefix’s documentation
for more.
Does not occur on Unix.
Expand description
The root directory component, appears after any prefix and before anything else.
It represents a separator that designates that a path starts from root.
Expand description
A reference to the current directory, i.e., ..
Expand description
A reference to the parent directory, i.e., ...
Normal(&'a OsStr)Expand description
A normal component, e.g., a and b in a/b.
This variant is the most common one, it represents references to files or directories.
Implementations
impl<'a> Component<'a>[src]
impl<'a> Component<'a>[src]Trait Implementations
impl<'a> Ord for Component<'a>[src]
impl<'a> Ord for Component<'a>[src]impl<'a> PartialOrd<Component<'a>> for Component<'a>[src]
impl<'a> PartialOrd<Component<'a>> for Component<'a>[src]fn partial_cmp(&self, other: &Component<'a>) -> Option<Ordering>[src]
fn partial_cmp(&self, other: &Component<'a>) -> Option<Ordering>[src]This method returns an ordering between self and other values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool[src]This method tests less than (for self and other) and is used by the < operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool[src]
#[must_use]fn le(&self, other: &Rhs) -> bool[src]This method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
impl<'a> Copy for Component<'a>[src]
impl<'a> Eq for Component<'a>[src]
impl<'a> StructuralEq for Component<'a>[src]
impl<'a> StructuralPartialEq for Component<'a>[src]
Auto Trait Implementations
impl<'a> RefUnwindSafe for Component<'a>
impl<'a> Send for Component<'a>
impl<'a> Sync for Component<'a>
impl<'a> Unpin for Component<'a>
impl<'a> UnwindSafe for Component<'a>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into #41263)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more