TransmuteFrom
TransmuteFrom (transmutable 표시 트레이트)
Src가 Self로 transmutable하다는 것을 표시하는 unsafe 트레이트예요.
출처: Rust 공식 문서
본문
구현 (Implementation)
이 트레이트는 명시적으로 구현할 수 없어요. 프로그래머에 대한 안전 의무 집합(Assume 참고)이 주어졌을 때, 컴파일러가 Src 타입 값의 비트가 Self로 건전하게 재해석될 수 있음을 증명한 모든 타입 Src와 Self에 대해 컴파일러가 즉석에서(런타임에) 구현해요.
안전성 (Safety)
Self: TransmuteFrom<Src>이면, 컴파일러는 Src가 타입 Self의 값으로 건전하게 union-transmutable함을 보장해요.
pub unsafe trait TransmuteFrom<Src, const ASSUME: Assume = ...>
where
Src: ?Sized,
{
// 제공되는 메서드
unsafe fn transmute(src: Src) -> Self
where Src: Sized,
Self: Sized { ... }
}