Когда я определяю черту, я понимаю, что названия черт справа от :
требуются каждый раз, когда используется левая сторона. Если это так, почему следующий компилятор:
use std::any::Any;
trait Trait: Any {}
struct Thing {}
impl Trait for Thing {}
Следующее не компилируется (что соответствует моему пониманию того, что правильно)
trait RequiredTrait {}
trait Trait: RequiredTrait {}
struct Thing {}
impl Trait for Thing {}