#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct Bond {
pub atom1: usize,
pub atom2: usize,
pub order: BondOrder,
}
impl Bond {
pub fn new(atom1: usize, atom2: usize, order: BondOrder) -> Self {
Self {
atom1,
atom2,
order,
}
}
pub fn single(atom1: usize, atom2: usize) -> Self {
Self::new(atom1, atom2, BondOrder::Single)
}
}
#[allow(dead_code)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub enum BondOrder {
#[default]
Single,
Double,
Triple,
Aromatic,
}