Struct camino::Utf8PrefixComponent[][src]

#[repr(transparent)]pub struct Utf8PrefixComponent<'a>(_);

A structure wrapping a Windows path prefix as well as its unparsed string representation.

In addition to the parsed Utf8Prefix information returned by kind, Utf8PrefixComponent also holds the raw and unparsed str slice, returned by as_str.

Instances of this struct can be obtained by matching against the Prefix variant on Utf8Component.

Does not occur on Unix.

Examples

use camino::{Utf8Component, Utf8Path, Utf8Prefix};
use std::ffi::OsStr;

let path = Utf8Path::new(r"c:\you\later\");
match path.components().next().unwrap() {
    Utf8Component::Prefix(prefix_component) => {
        assert_eq!(Utf8Prefix::Disk(b'C'), prefix_component.kind());
        assert_eq!("c:", prefix_component.as_str());
    }
    _ => unreachable!(),
}

Implementations

impl<'a> Utf8PrefixComponent<'a>[src]

pub fn kind(&self) -> Utf8Prefix<'a>[src]

Returns the parsed prefix data.

See Utf8Prefix’s documentation for more information on the different kinds of prefixes.

pub fn as_str(&self) -> &'a str[src]

Returns the str slice for this prefix.

pub fn as_os_str(&self) -> &'a OsStr[src]

Returns the raw OsStr slice for this prefix.

Trait Implementations

impl<'a> Clone for Utf8PrefixComponent<'a>[src]

impl<'a> Copy for Utf8PrefixComponent<'a>[src]

impl<'a> Debug for Utf8PrefixComponent<'a>[src]

impl<'a> Display for Utf8PrefixComponent<'a>[src]

impl<'a> Eq for Utf8PrefixComponent<'a>[src]

impl<'a> Hash for Utf8PrefixComponent<'a>[src]

impl<'a> Ord for Utf8PrefixComponent<'a>[src]

impl<'a> PartialEq<Utf8PrefixComponent<'a>> for Utf8PrefixComponent<'a>[src]

impl<'a> PartialOrd<Utf8PrefixComponent<'a>> for Utf8PrefixComponent<'a>[src]

impl<'a> StructuralEq for Utf8PrefixComponent<'a>[src]

impl<'a> StructuralPartialEq for Utf8PrefixComponent<'a>[src]

Auto Trait Implementations

impl<'a> RefUnwindSafe for Utf8PrefixComponent<'a>

impl<'a> Send for Utf8PrefixComponent<'a>

impl<'a> Sync for Utf8PrefixComponent<'a>

impl<'a> Unpin for Utf8PrefixComponent<'a>

impl<'a> UnwindSafe for Utf8PrefixComponent<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.