use std::fmt::{Debug, Display, Formatter};
use data::LinkReference;
#[derive(Debug, Eq, PartialEq, Hash, Clone)]
pub struct Doublet<T: LinkReference> {
pub source: T,
pub target: T,
}
impl<T: LinkReference> Doublet<T> {
pub fn new(source: T, target: T) -> Self {
Self { source, target }
}
}
impl<T: LinkReference> Display for Doublet<T> {
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
write!(f, "{}->{}", self.source, self.target)
}
}