pub trait Printer {
type Handle;
// Required methods
fn get_current_handle(&mut self) -> Self::Handle;
fn write_line_at(&mut self, handle: &Self::Handle, message: &str);
fn write_line(&mut self, message: &str);
}pub trait Printer {
type Handle;
// Required methods
fn get_current_handle(&mut self) -> Self::Handle;
fn write_line_at(&mut self, handle: &Self::Handle, message: &str);
fn write_line(&mut self, message: &str);
}