Understanding Repeating Trait Bounds in Rust Impl Blocks