1 2 3 4
pub trait Merge { type Item; fn merge(left: &Self::Item, right: &Self::Item) -> Self::Item; }