Multiple bounds
Multiple bounds for a single type can be applied with a +
. Like normal, different types are separated with ,
.
use std::fmt::{Debug, Display};fn compare_prints<T: Debug + Display>(t: &T) {println!("Debug: `{:?}`", t);println!("Display: `{}`", t);}fn compare_types<T: Debug, U: Debug>(t: &T, u: &U) {println!("t: `{:?}`", t);println!("u: `{:?}`", u);}fn main() {let string = "words";let array = [1, 2, 3];let vec = vec![1, 2, 3];compare_prints(&string);//compare_prints(&array);// TODO ^ Try uncommenting this.compare_types(&array, &vec);}