rustc_target::spec

Type Alias StaticCow

Source
type StaticCow<T> = Cow<'static, T>;

Aliased Type§

enum StaticCow<T> {
    Borrowed(&'static T),
    Owned(<T as ToOwned>::Owned),
}

Variants§

§

Borrowed(&'static T)

Borrowed data.

§

Owned(<T as ToOwned>::Owned)

Owned data.

Layout§

Note: Encountered an error during type layout; the type failed to be normalized.

Implementations

Source§

impl<B> Cow<'_, B>
where B: ToOwned + ?Sized,

Source

pub const fn is_borrowed(&self) -> bool

🔬This is a nightly-only experimental API. (cow_is_borrowed)

Returns true if the data is borrowed, i.e. if to_mut would require additional work.

§Examples
#![feature(cow_is_borrowed)]
use std::borrow::Cow;

let cow = Cow::Borrowed("moo");
assert!(cow.is_borrowed());

let bull: Cow<'_, str> = Cow::Owned("...moo?".to_string());
assert!(!bull.is_borrowed());
Source

pub const fn is_owned(&self) -> bool

🔬This is a nightly-only experimental API. (cow_is_borrowed)

Returns true if the data is owned, i.e. if to_mut would be a no-op.

§Examples
#![feature(cow_is_borrowed)]
use std::borrow::Cow;

let cow: Cow<'_, str> = Cow::Owned("moo".to_string());
assert!(cow.is_owned());

let bull = Cow::Borrowed("...moo?");
assert!(!bull.is_owned());
1.0.0 · Source

pub fn to_mut(&mut self) -> &mut <B as ToOwned>::Owned

Acquires a mutable reference to the owned form of the data.

Clones the data if it is not already owned.

§Examples
use std::borrow::Cow;

let mut cow = Cow::Borrowed("foo");
cow.to_mut().make_ascii_uppercase();

assert_eq!(
  cow,
  Cow::Owned(String::from("FOO")) as Cow<'_, str>
);
1.0.0 · Source

pub fn into_owned(self) -> <B as ToOwned>::Owned

Extracts the owned data.

Clones the data if it is not already owned.

§Examples

Calling into_owned on a Cow::Borrowed returns a clone of the borrowed data:

use std::borrow::Cow;

let s = "Hello world!";
let cow = Cow::Borrowed(s);

assert_eq!(
  cow.into_owned(),
  String::from(s)
);

Calling into_owned on a Cow::Owned returns the owned data. The data is moved out of the Cow without being cloned.

use std::borrow::Cow;

let s = "Hello world!";
let cow: Cow<'_, str> = Cow::Owned(String::from(s));

assert_eq!(
  cow.into_owned(),
  String::from(s)
);

Trait Implementations

1.14.0 · Source§

impl<'a> Add<&'a str> for Cow<'a, str>

Source§

type Output = Cow<'a, str>

The resulting type after applying the + operator.
Source§

fn add(self, rhs: &'a str) -> Cow<'a, str>

Performs the + operation. Read more
1.14.0 · Source§

impl<'a> Add for Cow<'a, str>

Source§

type Output = Cow<'a, str>

The resulting type after applying the + operator.
Source§

fn add(self, rhs: Cow<'a, str>) -> Cow<'a, str>

Performs the + operation. Read more
1.14.0 · Source§

impl<'a> AddAssign<&'a str> for Cow<'a, str>

Source§

fn add_assign(&mut self, rhs: &'a str)

Performs the += operation. Read more
1.14.0 · Source§

impl<'a> AddAssign for Cow<'a, str>

Source§

fn add_assign(&mut self, rhs: Cow<'a, str>)

Performs the += operation. Read more
Source§

impl<'a> Arg for Cow<'a, CStr>

Source§

fn as_str(&self) -> Result<&str, Errno>

Returns a view of this string as a string slice.
Source§

fn to_string_lossy(&self) -> Cow<'_, str>

Returns a potentially-lossy rendering of this string as a Cow<'_, str>.
Source§

fn as_cow_c_str(&self) -> Result<Cow<'_, CStr>, Errno>

Returns a view of this string as a maybe-owned CStr.
Source§

fn into_c_str<'b>(self) -> Result<Cow<'b, CStr>, Errno>
where Cow<'a, CStr>: 'b,

Consumes self and returns a view of this string as a maybe-owned CStr.
Source§

fn into_with_c_str<T, F>(self, f: F) -> Result<T, Errno>
where Cow<'a, CStr>: Sized, F: FnOnce(&CStr) -> Result<T, Errno>,

Runs a closure with self passed in as a &CStr.
Source§

impl<'a> Arg for Cow<'a, OsStr>

Source§

fn as_str(&self) -> Result<&str, Errno>

Returns a view of this string as a string slice.
Source§

fn to_string_lossy(&self) -> Cow<'_, str>

Returns a potentially-lossy rendering of this string as a Cow<'_, str>.
Source§

fn as_cow_c_str(&self) -> Result<Cow<'_, CStr>, Errno>

Returns a view of this string as a maybe-owned CStr.
Source§

fn into_c_str<'b>(self) -> Result<Cow<'b, CStr>, Errno>
where Cow<'a, OsStr>: 'b,

Consumes self and returns a view of this string as a maybe-owned CStr.
Source§

fn into_with_c_str<T, F>(self, f: F) -> Result<T, Errno>
where Cow<'a, OsStr>: Sized, F: FnOnce(&CStr) -> Result<T, Errno>,

Runs a closure with self passed in as a &CStr.
Source§

impl<'a> Arg for Cow<'a, str>

Source§

fn as_str(&self) -> Result<&str, Errno>

Returns a view of this string as a string slice.
Source§

fn to_string_lossy(&self) -> Cow<'_, str>

Returns a potentially-lossy rendering of this string as a Cow<'_, str>.
Source§

fn as_cow_c_str(&self) -> Result<Cow<'_, CStr>, Errno>

Returns a view of this string as a maybe-owned CStr.
Source§

fn into_c_str<'b>(self) -> Result<Cow<'b, CStr>, Errno>
where Cow<'a, str>: 'b,

Consumes self and returns a view of this string as a maybe-owned CStr.
Source§

fn into_with_c_str<T, F>(self, f: F) -> Result<T, Errno>
where Cow<'a, str>: Sized, F: FnOnce(&CStr) -> Result<T, Errno>,

Runs a closure with self passed in as a &CStr.
1.8.0 · Source§

impl AsRef<Path> for Cow<'_, OsStr>

Source§

fn as_ref(&self) -> &Path

Converts this type into a shared reference of the (usually inferred) input type.
1.0.0 · Source§

impl<T> AsRef<T> for Cow<'_, T>
where T: ToOwned + ?Sized,

Source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
1.0.0 · Source§

impl<'a, B> Borrow<B> for Cow<'a, B>
where B: ToOwned + ?Sized,

Source§

fn borrow(&self) -> &B

Immutably borrows from an owned value. Read more
1.0.0 · Source§

impl<B> Clone for Cow<'_, B>
where B: ToOwned + ?Sized,

Source§

fn clone(&self) -> Cow<'_, B>

Returns a copy of the value. Read more
Source§

fn clone_from(&mut self, source: &Cow<'_, B>)

Performs copy-assignment from source. Read more
1.0.0 · Source§

impl<B> Debug for Cow<'_, B>
where B: Debug + ToOwned + ?Sized, <B as ToOwned>::Owned: Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<D> Decodable<D> for Cow<'_, str>
where D: Decoder,

Source§

fn decode(d: &mut D) -> Cow<'static, str>

Source§

impl<D, T> Decodable<D> for Cow<'static, [T]>
where D: Decoder, T: Decodable<D> + ToOwned, [T]: ToOwned<Owned = Vec<T>>,

Source§

fn decode(d: &mut D) -> Cow<'static, [T]>

1.11.0 · Source§

impl<B> Default for Cow<'_, B>
where B: ToOwned + ?Sized, <B as ToOwned>::Owned: Default,

Source§

fn default() -> Cow<'_, B>

Creates an owned Cow<’a, B> with the default value for the contained owned value.

1.0.0 · Source§

impl<B> Deref for Cow<'_, B>
where B: ToOwned + ?Sized, <B as ToOwned>::Owned: Borrow<B>,

Source§

type Target = B

The resulting type after dereferencing.
Source§

fn deref(&self) -> &B

Dereferences the value.
Source§

impl<'de, 'a, T> Deserialize<'de> for Cow<'a, T>
where T: ToOwned + ?Sized, <T as ToOwned>::Owned: Deserialize<'de>,

Source§

fn deserialize<D>( deserializer: D, ) -> Result<Cow<'a, T>, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
1.0.0 · Source§

impl<B> Display for Cow<'_, B>
where B: Display + ToOwned + ?Sized, <B as ToOwned>::Owned: Display,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<S, T> Encodable<S> for Cow<'_, [T]>
where S: Encoder, T: Encodable<S>, [T]: ToOwned<Owned = Vec<T>>,

Source§

fn encode(&self, s: &mut S)

Source§

impl<S> Encodable<S> for Cow<'_, str>
where S: Encoder,

Source§

fn encode(&self, s: &mut S)

1.8.0 · Source§

impl<'a, T> From<&'a [T]> for Cow<'a, [T]>
where T: Clone,

Source§

fn from(s: &'a [T]) -> Cow<'a, [T]>

Creates a Borrowed variant of Cow from a slice.

This conversion does not allocate or clone the data.

1.77.0 · Source§

impl<'a, T, const N: usize> From<&'a [T; N]> for Cow<'a, [T]>
where T: Clone,

Source§

fn from(s: &'a [T; N]) -> Cow<'a, [T]>

Creates a Borrowed variant of Cow from a reference to an array.

This conversion does not allocate or clone the data.

1.28.0 · Source§

impl<'a> From<&'a CStr> for Cow<'a, CStr>

Source§

fn from(s: &'a CStr) -> Cow<'a, CStr>

Converts a CStr into a borrowed Cow without copying or allocating.

1.28.0 · Source§

impl<'a> From<&'a CString> for Cow<'a, CStr>

Source§

fn from(s: &'a CString) -> Cow<'a, CStr>

Converts a &CString into a borrowed Cow without copying or allocating.

1.28.0 · Source§

impl<'a> From<&'a OsStr> for Cow<'a, OsStr>

Source§

fn from(s: &'a OsStr) -> Cow<'a, OsStr>

Converts the string reference into a Cow::Borrowed.

1.28.0 · Source§

impl<'a> From<&'a OsString> for Cow<'a, OsStr>

Source§

fn from(s: &'a OsString) -> Cow<'a, OsStr>

Converts the string reference into a Cow::Borrowed.

1.6.0 · Source§

impl<'a> From<&'a Path> for Cow<'a, Path>

Source§

fn from(s: &'a Path) -> Cow<'a, Path>

Creates a clone-on-write pointer from a reference to Path.

This conversion does not clone or allocate.

1.28.0 · Source§

impl<'a> From<&'a PathBuf> for Cow<'a, Path>

Source§

fn from(p: &'a PathBuf) -> Cow<'a, Path>

Creates a clone-on-write pointer from a reference to PathBuf.

This conversion does not clone or allocate.

1.28.0 · Source§

impl<'a> From<&'a String> for Cow<'a, str>

Source§

fn from(s: &'a String) -> Cow<'a, str>

Converts a String reference into a Borrowed variant. No heap allocation is performed, and the string is not copied.

§Example
let s = "eggplant".to_string();
assert_eq!(Cow::from(&s), Cow::Borrowed("eggplant"));
1.28.0 · Source§

impl<'a, T> From<&'a Vec<T>> for Cow<'a, [T]>
where T: Clone,

Source§

fn from(v: &'a Vec<T>) -> Cow<'a, [T]>

Creates a Borrowed variant of Cow from a reference to Vec.

This conversion does not allocate or clone the data.

1.0.0 · Source§

impl<'a> From<&'a str> for Cow<'a, str>

Source§

fn from(s: &'a str) -> Cow<'a, str>

Converts a string slice into a Borrowed variant. No heap allocation is performed, and the string is not copied.

§Example
assert_eq!(Cow::from("eggplant"), Cow::Borrowed("eggplant"));
1.28.0 · Source§

impl<'a> From<CString> for Cow<'a, CStr>

Source§

fn from(s: CString) -> Cow<'a, CStr>

Converts a CString into an owned Cow without copying or allocating.

1.28.0 · Source§

impl<'a> From<OsString> for Cow<'a, OsStr>

Source§

fn from(s: OsString) -> Cow<'a, OsStr>

Moves the string into a Cow::Owned.

1.6.0 · Source§

impl<'a> From<PathBuf> for Cow<'a, Path>

Source§

fn from(s: PathBuf) -> Cow<'a, Path>

Creates a clone-on-write pointer from an owned instance of PathBuf.

This conversion does not clone or allocate.

1.0.0 · Source§

impl<'a> From<String> for Cow<'a, str>

Source§

fn from(s: String) -> Cow<'a, str>

Converts a String into an Owned variant. No heap allocation is performed, and the string is not copied.

§Example
let s = "eggplant".to_string();
let s2 = "eggplant".to_string();
assert_eq!(Cow::from(s), Cow::<'static, str>::Owned(s2));
1.8.0 · Source§

impl<'a, T> From<Vec<T>> for Cow<'a, [T]>
where T: Clone,

Source§

fn from(v: Vec<T>) -> Cow<'a, [T]>

Creates an Owned variant of Cow from an owned instance of Vec.

This conversion does not allocate or clone the data.

1.12.0 · Source§

impl<'a, 'b> FromIterator<&'b str> for Cow<'a, str>

Source§

fn from_iter<I>(it: I) -> Cow<'a, str>
where I: IntoIterator<Item = &'b str>,

Creates a value from an iterator. Read more
1.12.0 · Source§

impl<'a> FromIterator<String> for Cow<'a, str>

Source§

fn from_iter<I>(it: I) -> Cow<'a, str>
where I: IntoIterator<Item = String>,

Creates a value from an iterator. Read more
1.0.0 · Source§

impl<'a, T> FromIterator<T> for Cow<'a, [T]>
where T: Clone,

Source§

fn from_iter<I>(it: I) -> Cow<'a, [T]>
where I: IntoIterator<Item = T>,

Creates a value from an iterator. Read more
1.12.0 · Source§

impl<'a> FromIterator<char> for Cow<'a, str>

Source§

fn from_iter<I>(it: I) -> Cow<'a, str>
where I: IntoIterator<Item = char>,

Creates a value from an iterator. Read more
Source§

impl<'a, C, T> FromParallelIterator<T> for Cow<'a, C>
where C: ToOwned + ?Sized, <C as ToOwned>::Owned: FromParallelIterator<T>, T: Send,

Collects an arbitrary Cow collection.

Note, the standard library only has FromIterator for Cow<'a, str> and Cow<'a, [T]>, because no one thought to add a blanket implementation before it was stabilized.

Source§

fn from_par_iter<I>(par_iter: I) -> Cow<'a, C>
where I: IntoParallelIterator<Item = T>,

Creates an instance of the collection from the parallel iterator par_iter. Read more
1.0.0 · Source§

impl<B> Hash for Cow<'_, B>
where B: Hash + ToOwned + ?Sized,

Source§

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

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

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

Feeds a slice of this type into the given Hasher. Read more
Source§

impl<'de, 'a, E> IntoDeserializer<'de, E> for Cow<'a, str>
where E: Error,

Source§

type Deserializer = CowStrDeserializer<'a, E>

The type of the deserializer being converted into.
Source§

fn into_deserializer(self) -> CowStrDeserializer<'a, E>

Convert this value into a deserializer.
1.0.0 · Source§

impl<B> Ord for Cow<'_, B>
where B: Ord + ToOwned + ?Sized,

Source§

fn cmp(&self, other: &Cow<'_, B>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
1.0.0 · Source§

impl<T, U> PartialEq<&[U]> for Cow<'_, [T]>
where T: PartialEq<U> + Clone,

Source§

fn eq(&self, other: &&[U]) -> bool

Tests for self and other values to be equal, and is used by ==.
Source§

fn ne(&self, other: &&[U]) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a, 'b> PartialEq<&'b OsStr> for Cow<'a, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a, 'b> PartialEq<&'b OsStr> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.6.0 · Source§

impl<'a, 'b> PartialEq<&'b Path> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a, 'b> PartialEq<&'a Path> for Cow<'b, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<T, U> PartialEq<&mut [U]> for Cow<'_, [T]>
where T: PartialEq<U> + Clone,

Source§

fn eq(&self, other: &&mut [U]) -> bool

Tests for self and other values to be equal, and is used by ==.
Source§

fn ne(&self, other: &&mut [U]) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<'a, 'b> PartialEq<&'b str> for Cow<'a, str>

Source§

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

Tests for self and other values to be equal, and is used by ==.
Source§

fn ne(&self, other: &&'b str) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<'a, 'b, B, C> PartialEq<Cow<'b, C>> for Cow<'a, B>
where B: PartialEq<C> + ToOwned + ?Sized, C: ToOwned + ?Sized,

Source§

fn eq(&self, other: &Cow<'b, C>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a, 'b> PartialEq<OsStr> for Cow<'a, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a> PartialEq<OsStr> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a, 'b> PartialEq<OsString> for Cow<'a, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a> PartialEq<OsString> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a> PartialEq<Path> for Cow<'a, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.6.0 · Source§

impl<'a> PartialEq<Path> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

impl<'a> PartialEq<PathBuf> for Cow<'a, OsStr>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.6.0 · Source§

impl<'a> PartialEq<PathBuf> for Cow<'a, Path>

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<'a, 'b> PartialEq<String> for Cow<'a, str>

Source§

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

Tests for self and other values to be equal, and is used by ==.
Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<T, U, A> PartialEq<Vec<U, A>> for Cow<'_, [T]>
where A: Allocator, T: PartialEq<U> + Clone,

Source§

fn eq(&self, other: &Vec<U, A>) -> bool

Tests for self and other values to be equal, and is used by ==.
Source§

fn ne(&self, other: &Vec<U, A>) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<T, U, A> PartialEq<Vec<U, A>> for Cow<'_, [T]>
where A: Allocator, T: PartialEq<U> + Clone,

Source§

fn eq(&self, other: &Vec<U, A>) -> bool

Tests for self and other values to be equal, and is used by ==.
Source§

fn ne(&self, other: &Vec<U, A>) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.0.0 · Source§

impl<'a, 'b> PartialEq<str> for Cow<'a, str>

Source§

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

Tests for self and other values to be equal, and is used by ==.
Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
1.8.0 · Source§

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

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a, 'b> PartialOrd<&'b OsStr> for Cow<'a, Path>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

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

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a, 'b> PartialOrd<&'a Path> for Cow<'b, OsStr>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a, 'b> PartialOrd<OsStr> for Cow<'a, OsStr>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<OsStr> for Cow<'a, Path>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a, 'b> PartialOrd<OsString> for Cow<'a, OsStr>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<OsString> for Cow<'a, Path>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<Path> for Cow<'a, OsStr>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<Path> for Cow<'a, Path>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<PathBuf> for Cow<'a, OsStr>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.8.0 · Source§

impl<'a> PartialOrd<PathBuf> for Cow<'a, Path>

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
1.0.0 · Source§

impl<'a, B> PartialOrd for Cow<'a, B>
where B: PartialOrd + ToOwned + ?Sized,

Source§

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

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

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl<'a, T> Serialize for Cow<'a, T>
where T: Serialize + ToOwned + ?Sized,

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<'a, A: ToJson> ToJson for Cow<'a, [A]>
where [A]: ToOwned,

Source§

fn to_json(&self) -> Json

Source§

impl<'a> ToJson for Cow<'a, str>

Source§

fn to_json(&self) -> Json

Source§

impl<B> DerefPure for Cow<'_, B>
where B: ToOwned + ?Sized, <B as ToOwned>::Owned: Borrow<B>,

1.0.0 · Source§

impl<B> Eq for Cow<'_, B>
where B: Eq + ToOwned + ?Sized,