Struct std::ffi::OsStr1.0.0 [] [src]

pub struct OsStr {
    // some fields omitted
}

Slices into OS strings (see OsString).

Methods

impl OsStr
[src]

fn new<S: AsRef<OsStr> + ?Sized>(s: &S) -> &OsStr

Coerces into an OsStr slice.

fn to_str(&self) -> Option<&str>

Yields a &str slice if the OsStr is valid Unicode.

This conversion may entail doing a check for UTF-8 validity.

fn to_string_lossy(&self) -> Cow<str>

Converts an OsStr to a Cow<str>.

Any non-Unicode sequences are replaced with U+FFFD REPLACEMENT CHARACTER.

fn to_os_string(&self) -> OsString

Copies the slice into an owned OsString.

fn is_empty(&self) -> bool
1.9.0

Checks whether the OsStr is empty.

fn len(&self) -> usize
1.9.0

Returns the length of this OsStr.

Note that this does not return the number of bytes in this string as, for example, OS strings on Windows are encoded as a list of u16 rather than a list of bytes. This number is simply useful for passing to other methods like OsString::with_capacity to avoid reallocations.

See OsStr introduction for more information about encoding.

Trait Implementations

impl<'a> Default for &'a OsStr
1.9.0
[src]

fn default() -> &'a OsStr

impl PartialEq for OsStr
[src]

fn eq(&self, other: &OsStr) -> bool

fn ne(&self, other: &Rhs) -> bool

impl PartialEq<str> for OsStr
[src]

fn eq(&self, other: &str) -> bool

fn ne(&self, other: &Rhs) -> bool

impl Eq for OsStr
[src]

impl PartialOrd for OsStr
[src]

fn partial_cmp(&self, other: &OsStr) -> Option<Ordering>

fn lt(&self, other: &OsStr) -> bool

fn le(&self, other: &OsStr) -> bool

fn gt(&self, other: &OsStr) -> bool

fn ge(&self, other: &OsStr) -> bool

impl PartialOrd<str> for OsStr
[src]

fn partial_cmp(&self, other: &str) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl Ord for OsStr
[src]

fn cmp(&self, other: &OsStr) -> Ordering

impl<'a, 'b> PartialEq<OsString> for OsStr
1.8.0
[src]

fn eq(&self, other: &OsString) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<OsString> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &OsString) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<OsString> for &'a OsStr
1.8.0
[src]

fn eq(&self, other: &OsString) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<OsString> for &'a OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &OsString) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for OsStr
1.8.0
[src]

fn eq(&self, other: &Cow<'a, OsStr>) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Cow<'a, OsStr>) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for &'b OsStr
1.8.0
[src]

fn eq(&self, other: &Cow<'a, OsStr>) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for &'b OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Cow<'a, OsStr>) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl Hash for OsStr
[src]

fn hash<H: Hasher>(&self, state: &mut H)

fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0

impl Debug for OsStr
[src]

fn fmt(&self, formatter: &mut Formatter) -> Result<(), Error>

impl ToOwned for OsStr
[src]

type Owned = OsString

fn to_owned(&self) -> OsString

impl AsRef<OsStr> for OsStr
[src]

fn as_ref(&self) -> &OsStr

impl OsStrExt for OsStr
[src]

fn from_bytes(slice: &[u8]) -> &OsStr

fn as_bytes(&self) -> &[u8]

impl AsRef<Path> for OsStr
[src]

fn as_ref(&self) -> &Path

impl<'a, 'b> PartialEq<PathBuf> for OsStr
1.8.0
[src]

fn eq(&self, other: &PathBuf) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<PathBuf> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &PathBuf) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<PathBuf> for &'a OsStr
1.8.0
[src]

fn eq(&self, other: &PathBuf) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<PathBuf> for &'a OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &PathBuf) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Path> for OsStr
1.8.0
[src]

fn eq(&self, other: &Path) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Path> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Path) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Path> for &'a OsStr
1.8.0
[src]

fn eq(&self, other: &Path) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Path> for &'a OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Path) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<&'a Path> for OsStr
1.8.0
[src]

fn eq(&self, other: &&'a Path) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<&'a Path> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &&'a Path) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Cow<'a, Path>> for OsStr
1.8.0
[src]

fn eq(&self, other: &Cow<'a, Path>) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Cow<'a, Path>) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialEq<Cow<'a, Path>> for &'b OsStr
1.8.0
[src]

fn eq(&self, other: &Cow<'a, Path>) -> bool

fn ne(&self, other: &Rhs) -> bool

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for &'b OsStr
1.8.0
[src]

fn partial_cmp(&self, other: &Cow<'a, Path>) -> Option<Ordering>

fn lt(&self, other: &Rhs) -> bool

fn le(&self, other: &Rhs) -> bool

fn gt(&self, other: &Rhs) -> bool

fn ge(&self, other: &Rhs) -> bool