trait object

트레이트 객체 디스패치 흐름

트레이트 객체는 컴파일 시점에 구체 타입을 몰라도 같은 트레이트 메서드를 호출하게 해 주는 동적 다형성입니다.

dyn

동적 디스패치를 쓰겠다는 신호를 타입에 명시합니다.

object safe

트레이트 객체로 쓰려면 메서드 시그니처가 객체 안전 조건을 만족해야 합니다.

비용

런타임 간접 호출과 일부 최적화 제한을 받아들이는 대신 이질적인 컬렉션을 얻습니다.

대안

타입이 고정되어 있으면 제네릭과 정적 디스패치가 더 단순할 수 있습니다.