1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use broccoli::axgeom::Rect;
use broccoli::tree::node::*;

///
///
/// # Safety
///
/// Aabb::get() guarenteed to return the same value while pinned by `TreePin`.
///
///
pub unsafe trait TrustedAabb: Aabb {}

unsafe impl<N: Num, T> TrustedAabb for BBox<N, T> {}
unsafe impl<N: Num, T> TrustedAabb for BBoxMut<'_, N, T> {}
unsafe impl<N: Num> TrustedAabb for Rect<N> {}
unsafe impl<T: TrustedAabb> TrustedAabb for &T {}
unsafe impl<T: TrustedAabb> TrustedAabb for &mut T {}