1.0.0[−][src]Trait skyline::prelude::ToOwned
A generalization of Clone
to borrowed data.
Some types make it possible to go from borrowed to owned, usually by
implementing the Clone
trait. But Clone
works only for going from &T
to T
. The ToOwned
trait generalizes Clone
to construct owned data
from any borrow of a given type.
Associated Types
Loading content...Required methods
#[must_use =
"cloning is often expensive and is not expected to have side effects"]fn to_owned(&self) -> Self::Owned
Creates owned data from borrowed data, usually by cloning.
Examples
Basic usage:
let s: &str = "a"; let ss: String = s.to_owned(); let v: &[i32] = &[1, 2]; let vv: Vec<i32> = v.to_owned();
Provided methods
fn clone_into(&self, target: &mut Self::Owned)
🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning.
This is borrow-generalized version of Clone::clone_from
.
Examples
Basic usage:
let mut s: String = String::new(); "hello".clone_into(&mut s); let mut v: Vec<i32> = Vec::new(); [1, 2][..].clone_into(&mut v);
Implementations on Foreign Types
impl ToOwned for OsStr
[src]
type Owned = OsString
fn to_owned(&self) -> OsString
[src]
fn clone_into(&self, target: &mut OsString)
[src]
impl ToOwned for Path
[src]
type Owned = PathBuf
fn to_owned(&self) -> PathBuf
[src]
fn clone_into(&self, target: &mut PathBuf)
[src]
impl ToOwned for CStr
[src]
type Owned = CString
fn to_owned(&self) -> CString
[src]
fn clone_into(&self, target: &mut CString)
[src]
impl<T> ToOwned for [T] where
T: Clone,
[src]
T: Clone,