pub trait FontRepo {
// Required methods
fn width(&self, c: char, font: u32) -> Option<Scaled>;
fn height(&self, c: char, font: u32) -> Option<Scaled>;
fn depth(&self, c: char, font: u32) -> Option<Scaled>;
// Provided method
fn width_height_depth(&self, c: char, font: u32) -> Option<[Scaled; 3]> { ... }
}