Trait core::convert::Into [] [src]

pub trait Into<T>: Sized {
    fn into(self) -> T;
}

A conversion that consumes self, which may or may not be expensive.

Note: this trait must not fail. If the conversion can fail, use a dedicated method which returns an Option<T> or a Result<T, E>.

Library authors should not directly implement this trait, but should prefer implementing the From trait, which offers greater flexibility and provides an equivalent Into implementation for free, thanks to a blanket implementation in the standard library.

Examples

String implements Into<Vec<u8>>:

fn main() { fn is_hello<T: Into<Vec<u8>>>(s: T) { let bytes = b"hello".to_vec(); assert_eq!(bytes, s.into()); } let s = "hello".to_string(); is_hello(s); }
fn is_hello<T: Into<Vec<u8>>>(s: T) {
   let bytes = b"hello".to_vec();
   assert_eq!(bytes, s.into());
}

let s = "hello".to_string();
is_hello(s);

Generic Impls

Required Methods

fn into(self) -> T

Performs the conversion.

Implementors