23.05 Traits and Generics
Traits and Generics
Overview
Traits define shared behavior, and generics allow for type abstraction in Rust.
Topics
- Defining and Implementing Traits
- Using Generics in Functions and Structs
- Trait Bounds
Examples
trait Greet {
fn greet(&self);
}
struct Person;
impl Greet for Person {
fn greet(&self) {
println!("Hello!");
}
}
fn print_item<T: std::fmt::Debug>(item: T) {
println!("{:?}", item);
}
let p = Person;
p.greet();
print_item(42);
print_item("Rust");