from_raw_parts — 포인터와 길이로 슬라이스 생성
from_raw_parts — 포인터와 길이로 슬라이스 생성
from_raw_parts는 포인터와 길이로부터 슬라이스를 만드는 함수예요.
출처: Rust 공식 문서
본문
pub const unsafe fn from_raw_parts<'a, T>(data: *const T, len: usize) -> &'a [T]
len 인자는 요소의 개수이지 바이트 수가 아니에요.
안전성(Safety)
다음 조건을 위반하면 동작이 정의되지 않아요(undefined behavior).
data는 유효한 메모리에 대한 포인터여야 해요.data가 가리키는 메모리는len * size_of::<T>()바이트만큼 유효해야 해요.- 전체 메모리 범위는 정렬(alignment) 되어야 해요.
- 메모리는 읽기 가능해야 해요.
이 함수는 unsafe이므로 호출자가 위 안전 조건을 보장해야 해요.