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

Returns the "default value" for a type. Read more

impl PartialEq for OsStr
[src]

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

impl PartialEq<str> for OsStr
[src]

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

impl Eq for OsStr
[src]

impl PartialOrd for OsStr
[src]

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl PartialOrd<str> for OsStr
[src]

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Ord for OsStr
[src]

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

This method returns an Ordering between self and other. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Hash for OsStr
[src]

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

Feeds this value into the state given, updating the hasher as necessary.

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

Feeds a slice of this type into the state provided.

impl Debug for OsStr
[src]

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

Formats the value using the given formatter.

impl ToOwned for OsStr
[src]

type Owned = OsString

fn to_owned(&self) -> OsString

Creates owned data from borrowed data, usually by cloning. Read more

impl AsRef<OsStr> for OsStr
[src]

fn as_ref(&self) -> &OsStr

Performs the conversion.

impl OsStrExt for OsStr
[src]

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

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

Gets the underlying byte view of the OsStr slice.

impl AsRef<Path> for OsStr
[src]

fn as_ref(&self) -> &Path

Performs the conversion.

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

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

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

This method tests for self and other values to be equal, and is used by ==. Read more

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

This method tests for !=.

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

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

This method returns an ordering between self and other values if one exists. Read more

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

This method tests less than (for self and other) and is used by the < operator. Read more

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

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

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

This method tests greater than (for self and other) and is used by the > operator. Read more

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

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more