Enum std::str::MaybeOwned[src]

pub enum MaybeOwned<'a> {
    Slice(&'a str),
    Owned(String),
}

A MaybeOwned is a string that can hold either a String or a &str. This can be useful as an optimization when an allocation is sometimes needed but not always.

Variants

Slice

A borrowed string

Owned

An owned string

Methods

impl<'a> MaybeOwned<'a>

fn is_owned<'a>(&self) -> bool

Returns true if this MaybeOwned wraps an owned string

fn is_slice<'a>(&self) -> bool

Returns true if this MaybeOwned wraps a borrowed string

Trait Implementations

impl<'a> IntoMaybeOwned<'a> for MaybeOwned<'a>

fn into_maybe_owned<'a>(self) -> MaybeOwned<'a>

impl<'a> PartialEq for MaybeOwned<'a>

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

fn ne<'a>(&self, &MaybeOwned<'a>) -> bool

impl<'a> Eq for MaybeOwned<'a>

fn assert_receiver_is_total_eq<'a>(&self)

impl<'a> PartialOrd for MaybeOwned<'a>

fn lt<'a>(&self, other: &MaybeOwned) -> bool

fn le<'a>(&self, &MaybeOwned<'a>) -> bool

fn gt<'a>(&self, &MaybeOwned<'a>) -> bool

fn ge<'a>(&self, &MaybeOwned<'a>) -> bool

impl<'a> Ord for MaybeOwned<'a>

fn cmp<'a>(&self, other: &MaybeOwned) -> Ordering

impl<'a, S: Str> Equiv<S> for MaybeOwned<'a>

fn equiv<'a, S: Str>(&self, other: &S) -> bool

impl<'a> Str for MaybeOwned<'a>

fn as_slice<'a>(&'b self) -> &'b str

impl<'a> StrAllocating for MaybeOwned<'a>

fn into_string<'a>(self) -> String

fn to_string<'a>(&self) -> String

fn into_owned<'a>(self) -> String

fn escape_default<'a>(&self) -> String

fn escape_unicode<'a>(&self) -> String

fn replace<'a>(&self, &str, &str) -> String

fn to_owned<'a>(&self) -> String

fn to_utf16<'a>(&self) -> Vec<u16>

fn repeat<'a>(&self, uint) -> String

fn lev_distance<'a>(&self, &str) -> uint

fn nfd_chars<'a>(&'a self) -> Decompositions<'a>

fn nfkd_chars<'a>(&'a self) -> Decompositions<'a>

impl<'a> Collection for MaybeOwned<'a>

fn len<'a>(&self) -> uint

fn is_empty<'a>(&self) -> bool

impl<'a> Clone for MaybeOwned<'a>

fn clone<'a>(&self) -> MaybeOwned<'a>

fn clone_from<'a>(&mut self, &MaybeOwned<'a>)

impl<'a> Default for MaybeOwned<'a>

fn default<'a>() -> MaybeOwned<'a>

impl<'a, H: Writer> Hash<H> for MaybeOwned<'a>

fn hash<'a, H: Writer>(&self, hasher: &mut H)

impl<'a> Show for MaybeOwned<'a>

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

impl<'a> BytesContainer for MaybeOwned<'a>

fn container_as_bytes<'b>(&'b self) -> &'b [u8]

fn container_as_str<'b>(&'b self) -> Option<&'b str>

fn is_str(_: Option<MaybeOwned>) -> bool

fn container_into_owned_bytes(self) -> Vec<u8>