pub trait Points {
// Required methods
fn matrix(&self) -> &MatD;
fn matrix_mut(&mut self) -> &mut MatD;
// Provided methods
fn get(&self, i: usize) -> VecDView<'_> { ... }
fn get_mut(&mut self, i: usize) -> VecDViewMut<'_> { ... }
fn dimension(&self) -> usize { ... }
fn count(&self) -> usize { ... }
fn is_empty(&self) -> bool { ... }
}