Struct bitflags::__core::ffi::OsStr [] [src]

pub struct OsStr {
    // some fields omitted
}
1.0.0

Slices into OS strings (see OsString).

Methods

impl OsStr

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

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 to_bytes(&self) -> Option<&[u8]>

Deprecated since 1.6.0

: RFC was closed, hides subtle Windows semantics

Yields this OsStr as a byte slice.

Platform behavior

On Unix systems, this is a no-op.

On Windows systems, this returns None unless the OsStr is valid unicode, in which case it produces UTF-8-encoded data. This may entail checking validity.

fn to_cstring(&self) -> Option<CString>

Deprecated since 1.6.0

: RFC was closed, hides subtle Windows semantics

Creates a CString containing this OsStr data.

Fails if the OsStr contains interior nulls.

This is a convenience for creating a CString from self.to_bytes(), and inherits the platform behavior of the to_bytes method.

fn is_empty(&self) -> bool

Unstable (osstring_simple_functions)

: recently added

Checks whether the OsStr is empty.

fn len(&self) -> usize

Unstable (osstring_simple_functions)

: recently added

Returns the number of bytes in this OsStr.

See OsStr introduction for information about encoding.

Trait Implementations

impl PartialEq<OsStr> for OsStr

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

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

impl PartialEq<str> for OsStr

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

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

impl Eq for OsStr

impl PartialOrd<OsStr> for OsStr

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

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

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

impl<'a, 'b> PartialEq<OsString> for OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<OsString> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<OsString> for &'a OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for &'b OsStr1.8.0

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

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

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

impl Debug for OsStr

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

impl ToOwned for OsStr

type Owned = OsString

fn to_owned(&self) -> OsString

impl AsRef<OsStr> for OsStr

fn as_ref(&self) -> &OsStr

impl OsStrExt for OsStr

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

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

impl AsRef<Path> for OsStr

fn as_ref(&self) -> &Path

impl<'a, 'b> PartialEq<PathBuf> for OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<PathBuf> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<PathBuf> for &'a OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Path> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Path> for &'a OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<&'a Path> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for OsStr1.8.0

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 OsStr1.8.0

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

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

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for &'b OsStr1.8.0

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