#[repr(transparent)]pub struct AabbPin<T> where
T: ?Sized, { /* private fields */ }
Expand description
A protected mutable reference that derefs to &T
.
See the AabbPin module documentation for more explanation.
Implementations
sourceimpl<'a, T> AabbPin<&'a mut T>
impl<'a, T> AabbPin<&'a mut T>
pub fn into_slice(self) -> AabbPin<&'a mut [T]>
sourceimpl<'a, 'b, T> AabbPin<&'a mut Node<'b, T>> where
'b: 'a,
T: Aabb,
impl<'a, 'b, T> AabbPin<&'a mut Node<'b, T>> where
'b: 'a,
T: Aabb,
sourcepub fn into_node_ref(self) -> NodeRef<'a, T>
pub fn into_node_ref(self) -> NodeRef<'a, T>
Destructure a node into its three parts.
pub fn get_cont(&self) -> &Range<<T as Aabb>::Num>
sourcepub fn into_range(self) -> AabbPin<&'a mut [T]>
pub fn into_range(self) -> AabbPin<&'a mut [T]>
Return a mutable list of elements in this node.
sourceimpl<'a, T> AabbPin<&'a mut T> where
T: HasInner,
impl<'a, T> AabbPin<&'a mut T> where
T: HasInner,
sourcepub fn unpack_inner(self) -> &'a mut <T as HasInner>::Inner
pub fn unpack_inner(self) -> &'a mut <T as HasInner>::Inner
Unpack only the mutable innner component
sourceimpl<'a, T> AabbPin<&'a mut [T]>
impl<'a, T> AabbPin<&'a mut [T]>
sourcepub fn get_index_mut(self, ind: usize) -> AabbPin<&'a mut T>
pub fn get_index_mut(self, ind: usize) -> AabbPin<&'a mut T>
Return the element at the specified index. We can’t use the index trait because we don’t want to return a mutable reference.
sourcepub fn split_at_mut(
self,
va: usize
) -> (AabbPin<&'a mut [T]>, AabbPin<&'a mut [T]>)
pub fn split_at_mut(
self,
va: usize
) -> (AabbPin<&'a mut [T]>, AabbPin<&'a mut [T]>)
Split off the first element.
sourcepub fn split_first_mut(
self
) -> Option<(AabbPin<&'a mut T>, AabbPin<&'a mut [T]>)>
pub fn split_first_mut(
self
) -> Option<(AabbPin<&'a mut T>, AabbPin<&'a mut [T]>)>
Split off the first element.
sourcepub fn truncate_to(self, a: RangeTo<usize>) -> AabbPin<&'a mut [T]>
pub fn truncate_to(self, a: RangeTo<usize>) -> AabbPin<&'a mut [T]>
Return a smaller slice that ends with the specified index.
sourcepub fn truncate_from(self, a: RangeFrom<usize>) -> AabbPin<&'a mut [T]>
pub fn truncate_from(self, a: RangeFrom<usize>) -> AabbPin<&'a mut [T]>
Return a smaller slice that starts at the specified index.
sourcepub fn truncate(self, a: Range<usize>) -> AabbPin<&'a mut [T]>
pub fn truncate(self, a: Range<usize>) -> AabbPin<&'a mut [T]>
Return a smaller slice that starts and ends with the specified range.
sourcepub fn iter_mut(self) -> AabbPinIter<'a, T>ⓘNotable traits for AabbPinIter<'a, T>impl<'a, T> Iterator for AabbPinIter<'a, T> type Item = AabbPin<&'a mut T>;
pub fn iter_mut(self) -> AabbPinIter<'a, T>ⓘNotable traits for AabbPinIter<'a, T>impl<'a, T> Iterator for AabbPinIter<'a, T> type Item = AabbPin<&'a mut T>;
Return a mutable iterator.
Trait Implementations
sourceimpl<'a, T: Aabb> CollidingPairsApi<T> for AabbPin<&'a mut [T]>
impl<'a, T: Aabb> CollidingPairsApi<T> for AabbPin<&'a mut [T]>
sourceimpl<'a, T> IntoIterator for AabbPin<&'a mut [T]>
impl<'a, T> IntoIterator for AabbPin<&'a mut [T]>
type IntoIter = AabbPinIter<'a, T>
type IntoIter = AabbPinIter<'a, T>
Which kind of iterator are we turning this into?
sourcefn into_iter(self) -> <AabbPin<&'a mut [T]> as IntoIterator>::IntoIter
fn into_iter(self) -> <AabbPin<&'a mut [T]> as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
sourceimpl<'a, T: Aabb> KnearestApi<T> for AabbPin<&'a mut [T]>
impl<'a, T: Aabb> KnearestApi<T> for AabbPin<&'a mut [T]>
fn k_nearest_mut(
&mut self,
point: Vec2<T::Num>,
num: usize,
ktrait: impl Knearest<T>
) -> KResult<'_, T>
sourcefn k_nearest_mut_aabb(
&mut self,
point: Vec2<T::Num>,
num: usize
) -> KResult<'_, T> where
T::Num: Signed + Zero,
fn k_nearest_mut_aabb(
&mut self,
point: Vec2<T::Num>,
num: usize
) -> KResult<'_, T> where
T::Num: Signed + Zero,
Find knearest using aabb only.
fn k_nearest_mut_closure(
&mut self,
point: Vec2<T::Num>,
num: usize,
broad: impl FnMut(Vec2<T::Num>, AabbPin<&mut T>) -> Option<T::Num>,
fine: impl FnMut(Vec2<T::Num>, AabbPin<&mut T>) -> T::Num,
xline: impl FnMut(Vec2<T::Num>, T::Num) -> T::Num,
yline: impl FnMut(Vec2<T::Num>, T::Num) -> T::Num
) -> KResult<'_, T>
sourceimpl<'a, T: Aabb> RaycastApi<T> for AabbPin<&'a mut [T]>
impl<'a, T: Aabb> RaycastApi<T> for AabbPin<&'a mut [T]>
fn raycast_mut<R: RayCast<T>>(
&mut self,
ray: Ray<T::Num>,
ar: R
) -> CastResult<CastAnswer<'_, T>>
sourcefn raycast_mut_aabb(
&mut self,
ray: Ray<T::Num>
) -> CastResult<CastAnswer<'_, T>> where
T::Num: Debug + Signed,
fn raycast_mut_aabb(
&mut self,
ray: Ray<T::Num>
) -> CastResult<CastAnswer<'_, T>> where
T::Num: Debug + Signed,
Create a handler that just casts directly to the axis aligned rectangle
fn raycast_mut_closure(
&mut self,
ray: Ray<T::Num>,
broad: impl FnMut(&Ray<T::Num>, AabbPin<&mut T>) -> Option<CastResult<T::Num>>,
fine: impl FnMut(&Ray<T::Num>, AabbPin<&mut T>) -> CastResult<T::Num>,
xline: impl FnMut(&Ray<T::Num>, T::Num) -> CastResult<T::Num>,
yline: impl FnMut(&Ray<T::Num>, T::Num) -> CastResult<T::Num>
) -> CastResult<CastAnswer<'_, T>>
sourceimpl<'a, T: Aabb> RectApi<'a, T> for AabbPin<&'a mut [T]>
impl<'a, T: Aabb> RectApi<'a, T> for AabbPin<&'a mut [T]>
fn for_all_not_in_rect_mut<K: Aabb<Num = T::Num>>(
self,
rect: AabbPin<&mut K>,
closure: impl FnMut(AabbPin<&mut K>, AabbPin<&'a mut T>)
)
fn for_all_in_rect_mut<K: Aabb<Num = T::Num>>(
self,
rect: AabbPin<&mut K>,
closure: impl FnMut(AabbPin<&mut K>, AabbPin<&'a mut T>)
)
fn for_all_intersect_rect_mut<K: Aabb<Num = T::Num>>(
self,
rect: AabbPin<&mut K>,
closure: impl FnMut(AabbPin<&mut K>, AabbPin<&'a mut T>)
)
Auto Trait Implementations
impl<T: ?Sized> RefUnwindSafe for AabbPin<T> where
T: RefUnwindSafe,
impl<T: ?Sized> Send for AabbPin<T> where
T: Send,
impl<T: ?Sized> Sync for AabbPin<T> where
T: Sync,
impl<T: ?Sized> Unpin for AabbPin<T> where
T: Unpin,
impl<T: ?Sized> UnwindSafe for AabbPin<T> where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more