Borrow — 소유한 값을 빌린 값으로 변환하는 트레이트

Borrow — 소유한 값을 빌린 값으로 변환하는 트레이트

Borrow<Borrowed>는 소유한 값에서 그 슬라이스·참조 형태의 빌린 값을 얻는 트레이트예요.

출처: Rust 공식 문서

본문

pub trait Borrow<Borrowed>
    where Borrowed: ?Sized,
{
    // Required method
    fn borrow(&self) -> &Borrowed;
}

예를 들어 StringBorrow<str>을 구현해서 borrow()&str을 얻을 수 있어요. HashMapget 같은 메서드가 Borrow<Q>를 요구해서, &String 대신 &str로도 검색할 수 있게 해줘요. Borrow는 반환되는 값의 Eq, Ord, Hash가 원본과 같은 결과를 내야 한다는 계약을 가져요.

더 알아보기 (Learn more)

Rust 공식 문서