1
2
3
4
5
6
7
8
9
pub trait InformationProvider<TInformation> {
    fn get_all_information(&self) -> Vec<&TInformation>;

    fn get_all_information_mut<'a>(&'a mut self) -> Vec<&'a mut TInformation>;

    fn get_information(&self, vertex_id: usize) -> &TInformation;

    fn get_information_mut<'a>(&'a mut self, vertex_id: usize) -> &'a mut TInformation;
}