1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use crate::{
core::shared::Connection, errors::HypergraphError, HyperedgeIndex, HyperedgeTrait, Hypergraph,
VertexIndex, VertexTrait,
};
use itertools::Itertools;
impl<V, HE> Hypergraph<V, HE>
where
V: VertexTrait,
HE: HyperedgeTrait,
{
pub fn get_hyperedges_connecting(
&self,
from: VertexIndex,
to: VertexIndex,
) -> Result<Vec<HyperedgeIndex>, HypergraphError<V, HE>> {
let results = self.get_connections(Connection::InAndOut(from, to))?;
Ok(results
.into_iter()
.map(|(hyperedged_index, _)| hyperedged_index)
.collect_vec())
}
}