struct StaticTopTreeDataBuilder<C>where
C: Cluster,{
compressed: Vec<MaybeUninit<InnerValue<<C as Cluster>::Path>>>,
raked: Vec<MaybeUninit<InnerValue<<C as Cluster>::Point>>>,
light_points: Vec<<C as Cluster>::Point>,
}Fields§
§compressed: Vec<MaybeUninit<InnerValue<<C as Cluster>::Path>>>§raked: Vec<MaybeUninit<InnerValue<<C as Cluster>::Point>>>§light_points: Vec<<C as Cluster>::Point>Implementations§
Source§impl<C> StaticTopTreeDataBuilder<C>where
C: Cluster,
impl<C> StaticTopTreeDataBuilder<C>where
C: Cluster,
Sourcefn new(tree: &StaticTopTree) -> Self
fn new(tree: &StaticTopTree) -> Self
Examples found in repository?
crates/competitive/src/tree/static_top_tree.rs (line 465)
457 pub fn new(
458 tree: &'a StaticTopTree,
459 vertices: Vec<<C as Cluster>::Vertex>,
460 edges: Vec<<C as Cluster>::Edge>,
461 ) -> Self {
462 assert_eq!(vertices.len(), tree.vertices_size());
463 assert_eq!(edges.len(), tree.edges_size());
464
465 let mut data: StaticTopTreeDataBuilder<C> = StaticTopTreeDataBuilder::new(tree);
466 let path = tree.init_compress(
467 &mut data,
468 &vertices,
469 &edges,
470 tree.compress_roots[tree.root].expect("root compress tree must exist"),
471 );
472 let all_point = C::add_edge(&path);
473 Self {
474 tree,
475 vertices,
476 edges,
477 compressed: unsafe { assume_init_vec(data.compressed) },
478 raked: unsafe { assume_init_vec(data.raked) },
479 light_points: data.light_points,
480 all_point,
481 }
482 }Auto Trait Implementations§
impl<C> Freeze for StaticTopTreeDataBuilder<C>
impl<C> RefUnwindSafe for StaticTopTreeDataBuilder<C>
impl<C> Send for StaticTopTreeDataBuilder<C>
impl<C> Sync for StaticTopTreeDataBuilder<C>
impl<C> Unpin for StaticTopTreeDataBuilder<C>
impl<C> UnsafeUnpin for StaticTopTreeDataBuilder<C>
impl<C> UnwindSafe for StaticTopTreeDataBuilder<C>
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