pub struct HypergraphProjection { /* private fields */ }Expand description
Materialized directed hypergraph projection.
This view exposes OxGraph canonical topology through oxgraph-hyper
traits. Its physical arrays are BCSR-shaped: relation-major participant
arrays plus vertex-major incoming/outgoing hyperedge arrays.
§Performance
Cloning is O(v + h + p) for vertices, hyperedges, and participants.
Implementations§
Source§impl HypergraphProjection
impl HypergraphProjection
Sourcepub const fn definition(&self) -> &HypergraphProjectionDefinition
pub const fn definition(&self) -> &HypergraphProjectionDefinition
Trait Implementations§
Source§impl CanonicalElementIdentity for HypergraphProjection
impl CanonicalElementIdentity for HypergraphProjection
Source§type CanonicalElementId = ElementId
type CanonicalElementId = ElementId
Canonical element ID guaranteed by this view. Read more
Source§fn canonical_element_id(
&self,
element: Self::ElementId,
) -> Self::CanonicalElementId
fn canonical_element_id( &self, element: Self::ElementId, ) -> Self::CanonicalElementId
Returns the canonical ID for a visible local
element. Read moreSource§impl CanonicalIncidenceIdentity for HypergraphProjection
impl CanonicalIncidenceIdentity for HypergraphProjection
Source§type CanonicalIncidenceId = IncidenceId
type CanonicalIncidenceId = IncidenceId
Canonical incidence ID guaranteed by this view. Read more
Source§fn canonical_incidence_id(
&self,
incidence: Self::IncidenceId,
) -> Self::CanonicalIncidenceId
fn canonical_incidence_id( &self, incidence: Self::IncidenceId, ) -> Self::CanonicalIncidenceId
Returns the canonical ID for a visible local
incidence. Read moreSource§impl CanonicalRelationIdentity for HypergraphProjection
impl CanonicalRelationIdentity for HypergraphProjection
Source§type CanonicalRelationId = RelationId
type CanonicalRelationId = RelationId
Canonical relation ID guaranteed by this view. Read more
Source§fn canonical_relation_id(
&self,
relation: Self::RelationId,
) -> Self::CanonicalRelationId
fn canonical_relation_id( &self, relation: Self::RelationId, ) -> Self::CanonicalRelationId
Returns the canonical ID for a visible local
relation. Read moreSource§impl Clone for HypergraphProjection
impl Clone for HypergraphProjection
Source§fn clone(&self) -> HypergraphProjection
fn clone(&self) -> HypergraphProjection
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 moreSource§impl ContainsIncidence for HypergraphProjection
impl ContainsIncidence for HypergraphProjection
Source§fn contains_incidence(&self, incidence: Self::IncidenceId) -> bool
fn contains_incidence(&self, incidence: Self::IncidenceId) -> bool
Returns whether
incidence is valid and visible in this view. Read moreSource§impl ContainsRelation for HypergraphProjection
impl ContainsRelation for HypergraphProjection
Source§fn contains_relation(&self, relation: Self::RelationId) -> bool
fn contains_relation(&self, relation: Self::RelationId) -> bool
Returns whether
relation is valid and visible in this view. Read moreSource§impl Debug for HypergraphProjection
impl Debug for HypergraphProjection
Source§impl DirectedHyperedgeIncidences for HypergraphProjection
impl DirectedHyperedgeIncidences for HypergraphProjection
Source§type SourceIncidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>>
where
Self: 'view
type SourceIncidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>> where Self: 'view
Iterator over source-side participant incidence IDs.
Source§type TargetIncidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>>
where
Self: 'view
type TargetIncidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>> where Self: 'view
Iterator over target-side participant incidence IDs.
Source§fn source_incidences(
&self,
hyperedge: Self::RelationId,
) -> Self::SourceIncidences<'_>
fn source_incidences( &self, hyperedge: Self::RelationId, ) -> Self::SourceIncidences<'_>
Returns source-side participant incidence IDs for
hyperedge.Source§fn target_incidences(
&self,
hyperedge: Self::RelationId,
) -> Self::TargetIncidences<'_>
fn target_incidences( &self, hyperedge: Self::RelationId, ) -> Self::TargetIncidences<'_>
Returns target-side participant incidence IDs for
hyperedge.Source§impl DirectedHyperedgeParticipants for HypergraphProjection
impl DirectedHyperedgeParticipants for HypergraphProjection
Source§type SourceParticipants<'view> = Copied<Iter<'view, ProjectionElementId>>
where
Self: 'view
type SourceParticipants<'view> = Copied<Iter<'view, ProjectionElementId>> where Self: 'view
Iterator over source-side participants in one directed hyperedge.
Source§type TargetParticipants<'view> = Copied<Iter<'view, ProjectionElementId>>
where
Self: 'view
type TargetParticipants<'view> = Copied<Iter<'view, ProjectionElementId>> where Self: 'view
Iterator over target-side participants in one directed hyperedge.
Source§fn source_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::SourceParticipants<'_>
fn source_participants( &self, hyperedge: Self::RelationId, ) -> Self::SourceParticipants<'_>
Returns source-side participants for
hyperedge.Source§fn target_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::TargetParticipants<'_>
fn target_participants( &self, hyperedge: Self::RelationId, ) -> Self::TargetParticipants<'_>
Returns target-side participants for
hyperedge.Source§impl DirectedVertexHyperedges for HypergraphProjection
impl DirectedVertexHyperedges for HypergraphProjection
Source§type OutgoingHyperedges<'view> = Copied<Iter<'view, ProjectionRelationId>>
where
Self: 'view
type OutgoingHyperedges<'view> = Copied<Iter<'view, ProjectionRelationId>> where Self: 'view
Iterator over hyperedges where the vertex is source-side.
Source§type IncomingHyperedges<'view> = Copied<Iter<'view, ProjectionRelationId>>
where
Self: 'view
type IncomingHyperedges<'view> = Copied<Iter<'view, ProjectionRelationId>> where Self: 'view
Iterator over hyperedges where the vertex is target-side.
Source§fn outgoing_hyperedges(
&self,
vertex: Self::ElementId,
) -> Self::OutgoingHyperedges<'_>
fn outgoing_hyperedges( &self, vertex: Self::ElementId, ) -> Self::OutgoingHyperedges<'_>
Returns hyperedges where
vertex participates on the source side.Source§fn incoming_hyperedges(
&self,
vertex: Self::ElementId,
) -> Self::IncomingHyperedges<'_>
fn incoming_hyperedges( &self, vertex: Self::ElementId, ) -> Self::IncomingHyperedges<'_>
Returns hyperedges where
vertex participates on the target side.Source§impl ElementIncidences for HypergraphProjection
impl ElementIncidences for HypergraphProjection
Source§type Incidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>>
where
Self: 'view
type Incidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>> where Self: 'view
Iterator over incidence IDs for one element. Read more
Source§fn element_incidences(&self, element: Self::ElementId) -> Self::Incidences<'_>
fn element_incidences(&self, element: Self::ElementId) -> Self::Incidences<'_>
Returns incidences attached to
element. Read moreSource§impl ElementIndex for HypergraphProjection
impl ElementIndex for HypergraphProjection
Source§impl ElementPredecessors for HypergraphProjection
impl ElementPredecessors for HypergraphProjection
Source§type Predecessors<'view> = Copied<Iter<'view, ProjectionElementId>>
where
Self: 'view
type Predecessors<'view> = Copied<Iter<'view, ProjectionElementId>> where Self: 'view
Iterator over predecessor element IDs reaching one element. Read more
Source§fn element_predecessors(
&self,
element: Self::ElementId,
) -> Self::Predecessors<'_>
fn element_predecessors( &self, element: Self::ElementId, ) -> Self::Predecessors<'_>
Returns elements that reach
element through outgoing connections. Read moreSource§impl ElementSuccessors for HypergraphProjection
impl ElementSuccessors for HypergraphProjection
Source§type Successors<'view> = Copied<Iter<'view, ProjectionElementId>>
where
Self: 'view
type Successors<'view> = Copied<Iter<'view, ProjectionElementId>> where Self: 'view
Iterator over successor element IDs reached from one element. Read more
Source§fn element_successors(&self, element: Self::ElementId) -> Self::Successors<'_>
fn element_successors(&self, element: Self::ElementId) -> Self::Successors<'_>
Returns elements reachable through outgoing connections from
element. Read moreimpl Eq for HypergraphProjection
Source§impl HyperedgeParticipants for HypergraphProjection
impl HyperedgeParticipants for HypergraphProjection
Source§type Participants<'view> = HyperedgeParticipants<'view>
where
Self: 'view
type Participants<'view> = HyperedgeParticipants<'view> where Self: 'view
Iterator over vertices participating in one hyperedge.
Source§fn hyperedge_participants(
&self,
hyperedge: Self::RelationId,
) -> Self::Participants<'_>
fn hyperedge_participants( &self, hyperedge: Self::RelationId, ) -> Self::Participants<'_>
Returns vertices participating in
hyperedge.Source§impl HypergraphCounts for HypergraphProjection
impl HypergraphCounts for HypergraphProjection
Source§fn vertex_count(&self) -> usize
fn vertex_count(&self) -> usize
Returns the number of vertices visible in this hypergraph view.
Source§fn hyperedge_count(&self) -> usize
fn hyperedge_count(&self) -> usize
Returns the number of hyperedges visible in this hypergraph view.
Source§impl IncidenceBase for HypergraphProjection
impl IncidenceBase for HypergraphProjection
Source§type IncidenceId = ProjectionIncidenceId
type IncidenceId = ProjectionIncidenceId
Identity of one element’s participation in one relation. Read more
Source§impl IncidenceCounts for HypergraphProjection
impl IncidenceCounts for HypergraphProjection
Source§fn incidence_count(&self) -> usize
fn incidence_count(&self) -> usize
Returns the number of incidences visible in this topology view. Read more
Source§impl IncidenceElement for HypergraphProjection
impl IncidenceElement for HypergraphProjection
Source§fn incidence_element(&self, incidence: Self::IncidenceId) -> Self::ElementId
fn incidence_element(&self, incidence: Self::IncidenceId) -> Self::ElementId
Returns the element participating through
incidence. Read moreSource§impl IncidenceIndex for HypergraphProjection
impl IncidenceIndex for HypergraphProjection
Source§fn incidence_bound(&self) -> usize
fn incidence_bound(&self) -> usize
Returns the exclusive upper bound for incidence indexes in this view. Read more
Source§fn incidence_index(&self, incidence: Self::IncidenceId) -> usize
fn incidence_index(&self, incidence: Self::IncidenceId) -> usize
Returns the dense index for
incidence in this view. Read moreSource§impl IncidenceRelation for HypergraphProjection
impl IncidenceRelation for HypergraphProjection
Source§fn incidence_relation(&self, incidence: Self::IncidenceId) -> Self::RelationId
fn incidence_relation(&self, incidence: Self::IncidenceId) -> Self::RelationId
Returns the relation containing
incidence. Read moreSource§impl IncidenceRole for HypergraphProjection
impl IncidenceRole for HypergraphProjection
Source§fn incidence_role(&self, incidence: Self::IncidenceId) -> Self::Role
fn incidence_role(&self, incidence: Self::IncidenceId) -> Self::Role
Returns the role for
incidence. Read moreSource§impl IncidentHyperedges for HypergraphProjection
impl IncidentHyperedges for HypergraphProjection
Source§type IncidentHyperedges<'view> = IncidentHyperedgesIter<'view>
where
Self: 'view
type IncidentHyperedges<'view> = IncidentHyperedgesIter<'view> where Self: 'view
Iterator over hyperedges incident to one vertex.
Source§fn incident_hyperedges(
&self,
vertex: Self::ElementId,
) -> Self::IncidentHyperedges<'_>
fn incident_hyperedges( &self, vertex: Self::ElementId, ) -> Self::IncidentHyperedges<'_>
Returns hyperedges incident to
vertex.Source§impl LocalElementIdentity for HypergraphProjection
impl LocalElementIdentity for HypergraphProjection
Source§fn local_element_id(
&self,
canonical: Self::CanonicalElementId,
) -> Option<Self::ElementId>
fn local_element_id( &self, canonical: Self::CanonicalElementId, ) -> Option<Self::ElementId>
Returns the visible local element for
canonical, if present. Read moreSource§impl LocalIncidenceIdentity for HypergraphProjection
impl LocalIncidenceIdentity for HypergraphProjection
Source§fn local_incidence_id(
&self,
canonical: Self::CanonicalIncidenceId,
) -> Option<Self::IncidenceId>
fn local_incidence_id( &self, canonical: Self::CanonicalIncidenceId, ) -> Option<Self::IncidenceId>
Returns the visible local incidence for
canonical, if present. Read moreSource§impl LocalRelationIdentity for HypergraphProjection
impl LocalRelationIdentity for HypergraphProjection
Source§fn local_relation_id(
&self,
canonical: Self::CanonicalRelationId,
) -> Option<Self::RelationId>
fn local_relation_id( &self, canonical: Self::CanonicalRelationId, ) -> Option<Self::RelationId>
Returns the visible local relation for
canonical, if present. Read moreSource§impl PartialEq for HypergraphProjection
impl PartialEq for HypergraphProjection
Source§fn eq(&self, other: &HypergraphProjection) -> bool
fn eq(&self, other: &HypergraphProjection) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl RelationIncidenceCount for HypergraphProjection
impl RelationIncidenceCount for HypergraphProjection
Source§fn relation_incidence_count(&self, relation: Self::RelationId) -> usize
fn relation_incidence_count(&self, relation: Self::RelationId) -> usize
Returns the number of incidences attached to
relation. Read moreSource§impl RelationIncidences for HypergraphProjection
impl RelationIncidences for HypergraphProjection
Source§type Incidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>>
where
Self: 'view
type Incidences<'view> = Copied<Iter<'view, ProjectionIncidenceId>> where Self: 'view
Iterator over incidence IDs for one relation. Read more
Source§fn relation_incidences(
&self,
relation: Self::RelationId,
) -> Self::Incidences<'_>
fn relation_incidences( &self, relation: Self::RelationId, ) -> Self::Incidences<'_>
Returns incidences attached to
relation. Read moreSource§impl RelationIndex for HypergraphProjection
impl RelationIndex for HypergraphProjection
Source§fn relation_bound(&self) -> usize
fn relation_bound(&self) -> usize
Returns the exclusive upper bound for relation indexes in this view. Read more
Source§fn relation_index(&self, relation: Self::RelationId) -> usize
fn relation_index(&self, relation: Self::RelationId) -> usize
Returns the dense index for
relation in this view. Read moreimpl StructuralPartialEq for HypergraphProjection
Source§impl TopologyBase for HypergraphProjection
impl TopologyBase for HypergraphProjection
Source§type ElementId = ProjectionElementId
type ElementId = ProjectionElementId
Identity of a topology element. Read more
Source§type RelationId = ProjectionRelationId
type RelationId = ProjectionRelationId
Identity of a topology relation. Read more
Source§impl TopologyCounts for HypergraphProjection
impl TopologyCounts for HypergraphProjection
Source§fn element_count(&self) -> usize
fn element_count(&self) -> usize
Returns the number of elements visible in this topology view. Read more
Source§fn relation_count(&self) -> usize
fn relation_count(&self) -> usize
Returns the number of relations visible in this topology view. Read more
Auto Trait Implementations§
impl Freeze for HypergraphProjection
impl RefUnwindSafe for HypergraphProjection
impl Send for HypergraphProjection
impl Sync for HypergraphProjection
impl Unpin for HypergraphProjection
impl UnsafeUnpin for HypergraphProjection
impl UnwindSafe for HypergraphProjection
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ContainsEdge for Twhere
T: ContainsRelation,
impl<T> ContainsEdge for Twhere
T: ContainsRelation,
Source§fn contains_edge(&self, edge: Self::RelationId) -> bool
fn contains_edge(&self, edge: Self::RelationId) -> bool
Returns whether
edge is valid and visible in this graph view.Source§impl<T> ContainsEndpoint for Twhere
T: ContainsIncidence,
impl<T> ContainsEndpoint for Twhere
T: ContainsIncidence,
Source§fn contains_endpoint(&self, endpoint: Self::IncidenceId) -> bool
fn contains_endpoint(&self, endpoint: Self::IncidenceId) -> bool
Returns whether
endpoint is valid and visible in this graph view.Source§impl<T> ContainsHyperedge for Twhere
T: ContainsRelation,
impl<T> ContainsHyperedge for Twhere
T: ContainsRelation,
Source§fn contains_hyperedge(&self, hyperedge: Self::RelationId) -> bool
fn contains_hyperedge(&self, hyperedge: Self::RelationId) -> bool
Returns whether
hyperedge is valid and visible in this hypergraph view.Source§impl<T> ContainsNode for Twhere
T: ContainsElement,
impl<T> ContainsNode for Twhere
T: ContainsElement,
Source§fn contains_node(&self, node: Self::ElementId) -> bool
fn contains_node(&self, node: Self::ElementId) -> bool
Returns whether
node is valid and visible in this graph view.Source§impl<T> ContainsParticipant for Twhere
T: ContainsIncidence,
impl<T> ContainsParticipant for Twhere
T: ContainsIncidence,
Source§fn contains_participant(&self, participant: Self::IncidenceId) -> bool
fn contains_participant(&self, participant: Self::IncidenceId) -> bool
Returns whether
participant is valid and visible in this hypergraph view.Source§impl<T> ContainsVertex for Twhere
T: ContainsElement,
impl<T> ContainsVertex for Twhere
T: ContainsElement,
Source§fn contains_vertex(&self, vertex: Self::ElementId) -> bool
fn contains_vertex(&self, vertex: Self::ElementId) -> bool
Returns whether
vertex is valid and visible in this hypergraph view.impl<T> DirectedHypergraph for T
Source§impl<T> DirectedVertexPredecessors for Twhere
T: ElementPredecessors,
impl<T> DirectedVertexPredecessors for Twhere
T: ElementPredecessors,
Source§type VertexPredecessors<'view> = <T as ElementPredecessors>::Predecessors<'view>
where
T: 'view
type VertexPredecessors<'view> = <T as ElementPredecessors>::Predecessors<'view> where T: 'view
Iterator over predecessor vertices reaching one target-side vertex.
Source§fn predecessor_vertices(
&self,
vertex: <T as TopologyBase>::ElementId,
) -> <T as DirectedVertexPredecessors>::VertexPredecessors<'_>
fn predecessor_vertices( &self, vertex: <T as TopologyBase>::ElementId, ) -> <T as DirectedVertexPredecessors>::VertexPredecessors<'_>
Returns source-side vertices that can reach
vertex.Source§impl<T> DirectedVertexSuccessors for Twhere
T: ElementSuccessors,
impl<T> DirectedVertexSuccessors for Twhere
T: ElementSuccessors,
Source§type VertexSuccessors<'view> = <T as ElementSuccessors>::Successors<'view>
where
T: 'view
type VertexSuccessors<'view> = <T as ElementSuccessors>::Successors<'view> where T: 'view
Iterator over successor vertices reachable from one source-side vertex.
Source§fn successor_vertices(
&self,
vertex: <T as TopologyBase>::ElementId,
) -> <T as DirectedVertexSuccessors>::VertexSuccessors<'_>
fn successor_vertices( &self, vertex: <T as TopologyBase>::ElementId, ) -> <T as DirectedVertexSuccessors>::VertexSuccessors<'_>
Returns target-side vertices reachable from
vertex.Source§impl<T> EdgeIndex for Twhere
T: RelationIndex,
impl<T> EdgeIndex for Twhere
T: RelationIndex,
Source§fn edge_bound(&self) -> usize
fn edge_bound(&self) -> usize
Returns the exclusive upper bound for edge indexes in this graph view.
Source§fn edge_index(&self, edge: Self::RelationId) -> usize
fn edge_index(&self, edge: Self::RelationId) -> usize
Returns the dense index for
edge in this graph view.Source§impl<T> EndpointIndex for Twhere
T: IncidenceIndex,
impl<T> EndpointIndex for Twhere
T: IncidenceIndex,
Source§fn endpoint_bound(&self) -> usize
fn endpoint_bound(&self) -> usize
Returns the exclusive upper bound for endpoint indexes in this graph view.
Source§fn endpoint_index(&self, endpoint: Self::IncidenceId) -> usize
fn endpoint_index(&self, endpoint: Self::IncidenceId) -> usize
Returns the dense index for
endpoint in this graph view.impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> GraphBase for Twhere
T: TopologyBase,
Source§impl<T> HyperedgeIncidences for Twhere
T: RelationIncidences,
impl<T> HyperedgeIncidences for Twhere
T: RelationIncidences,
Source§type ParticipantIds<'view> = <T as RelationIncidences>::Incidences<'view>
where
T: 'view
type ParticipantIds<'view> = <T as RelationIncidences>::Incidences<'view> where T: 'view
Iterator over participant IDs attached to one hyperedge.
Source§fn hyperedge_incidences(
&self,
hyperedge: <T as TopologyBase>::RelationId,
) -> <T as HyperedgeIncidences>::ParticipantIds<'_>
fn hyperedge_incidences( &self, hyperedge: <T as TopologyBase>::RelationId, ) -> <T as HyperedgeIncidences>::ParticipantIds<'_>
Returns participant IDs attached to
hyperedge.Source§impl<T> HyperedgeIndex for Twhere
T: RelationIndex,
impl<T> HyperedgeIndex for Twhere
T: RelationIndex,
Source§fn hyperedge_bound(&self) -> usize
fn hyperedge_bound(&self) -> usize
Returns the exclusive upper bound for hyperedge indexes in this view.
Source§fn hyperedge_index(&self, hyperedge: Self::RelationId) -> usize
fn hyperedge_index(&self, hyperedge: Self::RelationId) -> usize
Returns the dense index for
hyperedge in this view.Source§impl<T> HyperedgeParticipantCount for Twhere
T: RelationIncidenceCount,
impl<T> HyperedgeParticipantCount for Twhere
T: RelationIncidenceCount,
Source§fn hyperedge_participant_count(&self, hyperedge: Self::RelationId) -> usize
fn hyperedge_participant_count(&self, hyperedge: Self::RelationId) -> usize
Returns the number of participants attached to
hyperedge.impl<T> Hypergraph for Twhere
T: HyperedgeParticipants + IncidentHyperedges,
impl<T> HypergraphBase for Twhere
T: TopologyBase,
impl<T> IncidenceView for T
Source§impl<T> IncidentHyperedgeCount for Twhere
T: ElementIncidenceCount,
impl<T> IncidentHyperedgeCount for Twhere
T: ElementIncidenceCount,
Source§fn incident_hyperedge_count(&self, vertex: Self::ElementId) -> usize
fn incident_hyperedge_count(&self, vertex: Self::ElementId) -> usize
Returns the number of hyperedges incident to
vertex.Source§impl<T> IncomingNeighborsGraph for Twhere
T: ElementPredecessors,
impl<T> IncomingNeighborsGraph for Twhere
T: ElementPredecessors,
Source§type InNeighbors<'view> = <T as ElementPredecessors>::Predecessors<'view>
where
T: 'view
type InNeighbors<'view> = <T as ElementPredecessors>::Predecessors<'view> where T: 'view
Iterator over nodes that have incoming edges to one target node.
Source§fn incoming_neighbors(
&self,
node: <T as TopologyBase>::ElementId,
) -> <T as IncomingNeighborsGraph>::InNeighbors<'_>
fn incoming_neighbors( &self, node: <T as TopologyBase>::ElementId, ) -> <T as IncomingNeighborsGraph>::InNeighbors<'_>
Returns predecessor nodes with incoming edges to
node.Source§impl<T> NodeIndex for Twhere
T: ElementIndex,
impl<T> NodeIndex for Twhere
T: ElementIndex,
Source§fn node_bound(&self) -> usize
fn node_bound(&self) -> usize
Returns the exclusive upper bound for node indexes in this graph view.
Source§fn node_index(&self, node: Self::ElementId) -> usize
fn node_index(&self, node: Self::ElementId) -> usize
Returns the dense index for
node in this graph view.Source§impl<T> OutgoingNeighborsGraph for Twhere
T: ElementSuccessors,
impl<T> OutgoingNeighborsGraph for Twhere
T: ElementSuccessors,
Source§type OutNeighbors<'view> = <T as ElementSuccessors>::Successors<'view>
where
T: 'view
type OutNeighbors<'view> = <T as ElementSuccessors>::Successors<'view> where T: 'view
Iterator over nodes directly reachable from one source node.
Source§fn outgoing_neighbors(
&self,
node: <T as TopologyBase>::ElementId,
) -> <T as OutgoingNeighborsGraph>::OutNeighbors<'_>
fn outgoing_neighbors( &self, node: <T as TopologyBase>::ElementId, ) -> <T as OutgoingNeighborsGraph>::OutNeighbors<'_>
Returns neighbor nodes reached by outgoing edges from
node.impl<T> ParticipantBase for Twhere
T: IncidenceBase,
Source§impl<T> ParticipantCounts for Twhere
T: IncidenceCounts,
impl<T> ParticipantCounts for Twhere
T: IncidenceCounts,
Source§fn participant_count(&self) -> usize
fn participant_count(&self) -> usize
Returns the total number of participant records visible in this view.
Source§impl<T> ParticipantHyperedge for Twhere
T: IncidenceRelation,
impl<T> ParticipantHyperedge for Twhere
T: IncidenceRelation,
Source§fn participant_hyperedge(
&self,
participant: Self::IncidenceId,
) -> Self::RelationId
fn participant_hyperedge( &self, participant: Self::IncidenceId, ) -> Self::RelationId
Returns the hyperedge carrying
participant.Source§impl<T> ParticipantIndex for Twhere
T: IncidenceIndex,
impl<T> ParticipantIndex for Twhere
T: IncidenceIndex,
Source§fn participant_bound(&self) -> usize
fn participant_bound(&self) -> usize
Returns the exclusive upper bound for participant indexes in this view.
Source§fn participant_index(&self, participant: Self::IncidenceId) -> usize
fn participant_index(&self, participant: Self::IncidenceId) -> usize
Returns the dense index for
participant in this view.Source§impl<T> ParticipantRoleOf for Twhere
T: IncidenceRole,
impl<T> ParticipantRoleOf for Twhere
T: IncidenceRole,
Source§fn participant_role_of(&self, participant: Self::IncidenceId) -> Self::Role
fn participant_role_of(&self, participant: Self::IncidenceId) -> Self::Role
Returns the role recorded for
participant.Source§impl<T> ParticipantVertex for Twhere
T: IncidenceElement,
impl<T> ParticipantVertex for Twhere
T: IncidenceElement,
Source§fn participant_vertex(&self, participant: Self::IncidenceId) -> Self::ElementId
fn participant_vertex(&self, participant: Self::IncidenceId) -> Self::ElementId
Returns the vertex referenced by
participant.Source§impl<T> VertexIncidences for Twhere
T: ElementIncidences,
impl<T> VertexIncidences for Twhere
T: ElementIncidences,
Source§type ParticipantIds<'view> = <T as ElementIncidences>::Incidences<'view>
where
T: 'view
type ParticipantIds<'view> = <T as ElementIncidences>::Incidences<'view> where T: 'view
Iterator over participant IDs attached to one vertex.
Source§fn vertex_incidences(
&self,
vertex: <T as TopologyBase>::ElementId,
) -> <T as VertexIncidences>::ParticipantIds<'_>
fn vertex_incidences( &self, vertex: <T as TopologyBase>::ElementId, ) -> <T as VertexIncidences>::ParticipantIds<'_>
Returns participant IDs attached to
vertex.Source§impl<T> VertexIndex for Twhere
T: ElementIndex,
impl<T> VertexIndex for Twhere
T: ElementIndex,
Source§fn vertex_bound(&self) -> usize
fn vertex_bound(&self) -> usize
Returns the exclusive upper bound for vertex indexes in this view.
Source§fn vertex_index(&self, vertex: Self::ElementId) -> usize
fn vertex_index(&self, vertex: Self::ElementId) -> usize
Returns the dense index for
vertex in this view.