# Trait os_str_bytes::RawOsStrCow

source · [−]

    pub trait RawOsStrCow<'a>: Sealed {
        fn into_os_str(self) -> Cow<'a, OsStr>;
        fn into_raw_bytes(self) -> Cow<'a, [u8]>;
    }

Expand description

Extensions to `Cow<RawOsStr>` for additional conversions.

## Required Methods

source

#### fn into_os_str(self) -> Cow<'a, OsStr>

Converts this representation back to a platform-native string.

##### Examples

    use std::env;

    use os_str_bytes::RawOsStr;
    use os_str_bytes::RawOsStrCow;

    let os_string = env::current_exe()?.into_os_string();
    let raw = RawOsStr::new(&os_string);
    assert_eq!(os_string, raw.into_os_str());

source

#### fn into_raw_bytes(self) -> Cow<'a, [u8]>

Returns the byte string stored by this container.

The returned string will use an unspecified encoding.

##### Examples

    use std::borrow::Cow;

    use os_str_bytes::RawOsStr;
    use os_str_bytes::RawOsStrCow;

    let string = "foobar";
    let raw = Cow::Borrowed(RawOsStr::from_str(string));
    assert_eq!(string.as_bytes(), &*raw.into_raw_bytes());

## Implementations on Foreign Types

source

### impl<'a> RawOsStrCow<'a> for Cow<'a, RawOsStr>

source

#### fn into_os_str(self) -> Cow<'a, OsStr>

source

#### fn into_raw_bytes(self) -> Cow<'a, [u8]>

## Implementors