Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
379: Unsafe reasoning in ArrayArena r=jeehoonkang a=Medowhill * ~`Arena`의 unsafe reasoning을 위한 PR입니다.~ * ~일단 `ArrayPtr`과 `MruPtr`이 가지고 있는 포인터를 `*mut`에서 `NonNull`로 바꾸었습니다.~ * ~코드를 보다 보니 `Arena` 구현에 관련된 질문이 몇 가지 생겼는데 해당 위치에 comment로 달아 두겠습니다.~ *edited* `ArrayArena`의 unsafe reasoning을 위한 PR입니다. * `ArrayPtr`과 `MruPtr`이 가지고 있는 포인터를 `*mut`에서 `NonNull`로 바꾸었습니다. * 사용되지 않는 정의인 `impl<A: Arena, T: Clone + Deref<Target = A>> Arena for T`를 없애고 `Arena` 트레잇에 `Rc`를 반환하는 메서드를 추가했습니다. * `ArrayPtr`이 해당 핸들을 만든 `ArrayArena`가 살아 있는 동안만 살아 있도록 `ArrayPtr`에 lifetime parameter를 추가했습니다. 이에 따라 `Rc`에도 lifetime parameter가 추가되었습니다. `MruArena`는 이 PR에서 다루지 않습니다. Co-authored-by: Jaemin Hong <hjm0901@gmail.com>
- Loading branch information