pub trait DirectedHyperedgeParticipants: TopologyBase {
type SourceParticipants<'view>: Iterator<Item = Self::ElementId>
where Self: 'view;
type TargetParticipants<'view>: Iterator<Item = Self::ElementId>
where Self: 'view;
// Required methods
fn source_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::SourceParticipants<'_>;
fn target_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::TargetParticipants<'_>;
}Expand description
Capability for traversing directed hyperedge participant sets.
Directed hypergraphs distinguish source-side and target-side participants. The core does not prescribe how a view stores those sets or whether they are derived from roles, separate indexes, or generated views.
Required Associated Types§
Sourcetype SourceParticipants<'view>: Iterator<Item = Self::ElementId>
where
Self: 'view
type SourceParticipants<'view>: Iterator<Item = Self::ElementId> where Self: 'view
Iterator over source-side participants in one directed hyperedge.
Sourcetype TargetParticipants<'view>: Iterator<Item = Self::ElementId>
where
Self: 'view
type TargetParticipants<'view>: Iterator<Item = Self::ElementId> where Self: 'view
Iterator over target-side participants in one directed hyperedge.
Required Methods§
Sourcefn source_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::SourceParticipants<'_>
fn source_participants( &self, hyperedge: Self::RelationId, ) -> Self::SourceParticipants<'_>
Returns source-side participants for hyperedge.
Sourcefn target_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::TargetParticipants<'_>
fn target_participants( &self, hyperedge: Self::RelationId, ) -> Self::TargetParticipants<'_>
Returns target-side participants for hyperedge.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".