pub trait EdgeStore: Index<usize, Output = Edge> + IndexMut<usize, Output = Edge> {
Show 14 methods
// Required methods
fn create_vertex_entry(&mut self, size: Ci) -> VHandle;
fn edges_as_slice(&self, handle: VHandle) -> &[Edge] ⓘ;
fn edges_as_mut_slice(&mut self, handle: VHandle) -> &mut [Edge] ⓘ;
fn edges_as_ptr(&self, handle: VHandle) -> FatPtr<Edge>;
fn edges_as_mut_ptr(&mut self, handle: VHandle) -> FatPtrMut<Edge>;
fn edges_is_empty(&self, handle: VHandle) -> bool;
fn edges_len(&self, handle: VHandle) -> usize;
fn edges_capacity(&self, handle: VHandle) -> usize;
fn edges_index(&self, handle: VHandle) -> usize;
fn iter(&self) -> impl Iterator<Item = &Edge>;
fn iter_mut(&mut self) -> impl Iterator<Item = &mut Edge>;
fn edges_iter(&self, handle: VHandle) -> impl Iterator<Item = &Edge>;
fn edges_iter_mut(
&mut self,
handle: VHandle,
) -> impl Iterator<Item = &mut Edge>;
unsafe fn edges_iter_mut_unchecked(
&mut self,
handle: VHandle,
) -> impl Iterator<Item = &mut Edge>;
}Required Methods§
fn create_vertex_entry(&mut self, size: Ci) -> VHandle
fn edges_as_slice(&self, handle: VHandle) -> &[Edge] ⓘ
fn edges_as_mut_slice(&mut self, handle: VHandle) -> &mut [Edge] ⓘ
fn edges_as_ptr(&self, handle: VHandle) -> FatPtr<Edge>
fn edges_as_mut_ptr(&mut self, handle: VHandle) -> FatPtrMut<Edge>
fn edges_is_empty(&self, handle: VHandle) -> bool
fn edges_len(&self, handle: VHandle) -> usize
fn edges_capacity(&self, handle: VHandle) -> usize
fn edges_index(&self, handle: VHandle) -> usize
fn iter(&self) -> impl Iterator<Item = &Edge>
fn iter_mut(&mut self) -> impl Iterator<Item = &mut Edge>
fn edges_iter(&self, handle: VHandle) -> impl Iterator<Item = &Edge>
fn edges_iter_mut(&mut self, handle: VHandle) -> impl Iterator<Item = &mut Edge>
Sourceunsafe fn edges_iter_mut_unchecked(
&mut self,
handle: VHandle,
) -> impl Iterator<Item = &mut Edge>
unsafe fn edges_iter_mut_unchecked( &mut self, handle: VHandle, ) -> impl Iterator<Item = &mut Edge>
Extremely unsafe function. Use when you know what you are doing. Recommended to use if you dynamically want multiple non-overlapping iterators to edges.
§Safety
when using non-overlapping iterators
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.