在std::borrow::Borrow和std::borrow::BorrowMut性状用于治疗借来的类型,如拥有的类型。对于类型A和B,
impl Borrow<B> for A
表示A可以在B需要a的地方使用借入的借方 例如,将用作其方法,允许将键为的a与索引。std::collections::HashMap.get()Borrowget()HashMapA&B
另一方面,std::borrow::ToOwned实现反向关系。
因此,使用上述类型A,B可以实现:
impl ToOwned for B
注意:虽然A可以实现Borrow<T>多种不同类型T,B但只能实现ToOwned一次。