Trait core::convert::Into1.0.0 [] [src]

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

A conversion that consumes self, which may or may not be expensive. The reciprocal of From.

Note: this trait must not fail. If the conversion can fail, use TryInto or 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.

Generic Implementations

  • From<T>for U implies Into<U> for T
  • into is reflexive, which means that Into<T> for T is implemented

Examples

String implements Into<Vec<u8>>:

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);Run

Required Methods

Performs the conversion.

Implementors