[Rust] Trait as parameter

0xDave·2022년 6월 28일
0

Rust

목록 보기
11/16
post-thumbnail

Trait을 함수의 파라미터로 가져올 수 있으며, 아래 예제들은 형태는 다르지만 모두 Summary Trait을 implement 하는 item 을 인자로 받아오고 있다.


pub fn notify(item: &impl Summary) {
    println!("Breaking news! {}", item.summarize());
}

pub fn notify<T: Summary>(item: &T) {
    println!("Breaking news! {}", item.summarize());
}

pub fn notify(item1: &impl Summary, item2: &impl Summary) {

pub fn notify<T: Summary>(item1: &T, item2: &T) {

추가적으로 여러 Trait을 가져올 경우 아래처럼 쓸 수 있다.

pub fn notify(item: &(impl Summary + Display)) {
pub fn notify<T: Summary + Display>(item: &T) {
profile
Just BUIDL :)

0개의 댓글