pub struct RStarSplit<const MAX: usize = 32, const MIN: usize = 9>;Expand description
R*-split selection with one capacity for branches and leaves.
Chooses the split axis by minimum summed margin, then the split index
by minimum overlap and combined area. Insertion descent still uses
least enlargement; this policy does not perform forced reinsertion. Its
<32, 9> type default is not the default of crate::Rtree; see the
module tuning guide.
Trait Implementations§
Source§impl<const MAX: usize, const MIN: usize> Clone for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> Clone for RStarSplit<MAX, MIN>
Source§fn clone(&self) -> RStarSplit<MAX, MIN>
fn clone(&self) -> RStarSplit<MAX, MIN>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<const MAX: usize, const MIN: usize> Copy for RStarSplit<MAX, MIN>
Source§impl<const MAX: usize, const MIN: usize> Default for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> Default for RStarSplit<MAX, MIN>
Source§fn default() -> RStarSplit<MAX, MIN>
fn default() -> RStarSplit<MAX, MIN>
Returns the “default value” for a type. Read more
Source§impl<const MAX: usize, const MIN: usize> SplitParameters for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> SplitParameters for RStarSplit<MAX, MIN>
Source§fn split(entries: &[Bounds]) -> (Vec<usize>, Vec<usize>)
fn split(entries: &[Bounds]) -> (Vec<usize>, Vec<usize>)
Partition
entries (a bounds-per-child list) into two groups of
indices, each of size at least Self::MIN.Source§const BRANCH_MAX: usize = Self::MAX
const BRANCH_MAX: usize = Self::MAX
Maximum children in a branch. Defaults to
Self::MAX.Source§const BRANCH_MIN: usize = Self::MIN
const BRANCH_MIN: usize = Self::MIN
Minimum children in either half of a split branch.
Source§const BULK_LEAF_MAX: usize = Self::LEAF_MAX
const BULK_LEAF_MAX: usize = Self::LEAF_MAX
Maximum values per leaf created by bulk loading.
Source§const BULK_BRANCH_MAX: usize = Self::BRANCH_MAX
const BULK_BRANCH_MAX: usize = Self::BRANCH_MAX
Maximum children per branch created by bulk loading.
Auto Trait Implementations§
impl<const MAX: usize, const MIN: usize> Freeze for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> RefUnwindSafe for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> Send for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> Sync for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> Unpin for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> UnsafeUnpin for RStarSplit<MAX, MIN>
impl<const MAX: usize, const MIN: usize> UnwindSafe for RStarSplit<MAX, MIN>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more