pub struct BondGraph { /* private fields */ }Expand description
Graph storage for bonds with adjacency tracking
Implementations§
Source§impl BondGraph
impl BondGraph
Sourcepub fn with_capacity(max_lineages: usize, max_bonds: usize) -> Self
pub fn with_capacity(max_lineages: usize, max_bonds: usize) -> Self
Create a new bond graph
Sourcepub fn neighbors(&self, lineage: LineageId) -> &[BondId]
pub fn neighbors(&self, lineage: LineageId) -> &[BondId]
Get all bond IDs connected to a lineage
Sourcepub fn neighbors_with_strength(
&self,
lineage: LineageId,
) -> impl Iterator<Item = (LineageId, f32)> + '_
pub fn neighbors_with_strength( &self, lineage: LineageId, ) -> impl Iterator<Item = (LineageId, f32)> + '_
Get neighbor lineages with their bond strengths
Sourcepub fn disconnect(&mut self, id: BondId) -> bool
pub fn disconnect(&mut self, id: BondId) -> bool
Remove a bond
Auto Trait Implementations§
impl Freeze for BondGraph
impl RefUnwindSafe for BondGraph
impl Send for BondGraph
impl Sync for BondGraph
impl Unpin for BondGraph
impl UnwindSafe for BondGraph
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more