maze_console::app

Trait App

Source
pub trait App: LinePrinter {
Show 49 methods // Required methods fn get_store(&mut self) -> &mut Box<dyn Store>; fn get_user(&self) -> &User; fn get_maze(&self) -> &Maze; fn get_maze_mut(&mut self) -> &mut Maze; fn read_key(&mut self) -> Result<Option<char>, Error>; fn read_line(&mut self) -> Result<Option<String>, Error>; fn get_line_printer(&mut self) -> &mut dyn LinePrinter; // Provided methods fn get_maze_name(&self) -> String { ... } fn maze_name_exists(&mut self, name: &str) -> bool { ... } fn print_lines( &mut self, lines: Vec<&'static str>, ) -> Result<(), Box<dyn Error>> { ... } fn str_to_lines(s: &'static str) -> Vec<&'static str> { ... } fn get_welcome_banner_lines() -> Vec<&'static str> { ... } fn print_welcome_banner(&mut self) -> Result<(), Box<dyn Error>> { ... } fn get_menu_lines() -> Vec<&'static str> { ... } fn print_menu(&mut self) -> Result<(), Box<dyn Error>> { ... } fn get_press_any_key_text() -> &'static str { ... } fn press_any_key(&mut self) -> Result<(), Box<dyn Error>> { ... } fn prompt_yes_no(&mut self, message: &str) -> Result<bool, Box<dyn Error>> { ... } fn prompt_text(&mut self, message: &str) -> Result<String, Box<dyn Error>> { ... } fn prompt_number( &mut self, message: &str, min_limit: Option<usize>, max_limit: Option<usize>, ) -> Result<usize, Box<dyn Error>> { ... } fn print_maze_dimensions( &mut self, prefix: &str, ) -> Result<(), Box<dyn Error>> { ... } fn do_insert_rows(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_delete_rows(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_insert_cols(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_delete_cols(&mut self) -> Result<(), Box<dyn Error>> { ... } fn get_maze_dims(&self) -> (usize, usize) { ... } fn maze_has_cells(&mut self) -> bool { ... } fn process_set_endpoint( &mut self, start: bool, ) -> Result<(), Box<dyn Error>> { ... } fn do_set_start(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_set_finish(&mut self) -> Result<(), Box<dyn Error>> { ... } fn process_walls( &mut self, title: &str, modify_char: char, ) -> Result<(), Box<dyn Error>> { ... } fn do_set_walls(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_clear_walls(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_resize(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_empty(&mut self) -> Result<(), Box<dyn Error>> { ... } fn print_maze(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_solve(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_print(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_open(&mut self) -> Result<(), Box<dyn Error>> { ... } fn get_maze_names(&mut self) -> Result<Vec<String>, Box<dyn Error>> { ... } fn print_maze_names(&mut self) -> Result<usize, Box<dyn Error>> { ... } fn do_list(&mut self) -> Result<(), Box<dyn Error>> { ... } fn save_maze( &mut self, name: &str, prompt_overwrite: bool, ) -> Result<(), Box<dyn Error>> { ... } fn do_save(&mut self) -> Result<(), Box<dyn Error>> { ... } fn do_save_as(&mut self) -> Result<(), Box<dyn Error>> { ... } fn delete_maze(&mut self, name: &str) -> Result<(), Box<dyn Error>> { ... } fn do_delete(&mut self) -> Result<(), Box<dyn Error>> { ... } fn process_keys(&mut self) -> Result<(), Box<dyn Error>> { ... } fn run(&mut self) -> Result<(), Box<dyn Error>> { ... }
}

Required Methods§

Source

fn get_store(&mut self) -> &mut Box<dyn Store>

Source

fn get_user(&self) -> &User

Source

fn get_maze(&self) -> &Maze

Source

fn get_maze_mut(&mut self) -> &mut Maze

Source

fn read_key(&mut self) -> Result<Option<char>, Error>

Source

fn read_line(&mut self) -> Result<Option<String>, Error>

Source

fn get_line_printer(&mut self) -> &mut dyn LinePrinter

Provided Methods§

Source

fn get_maze_name(&self) -> String

Source

fn maze_name_exists(&mut self, name: &str) -> bool

Source

fn print_lines( &mut self, lines: Vec<&'static str>, ) -> Result<(), Box<dyn Error>>

Source

fn str_to_lines(s: &'static str) -> Vec<&'static str>

Source

fn get_welcome_banner_lines() -> Vec<&'static str>

Source

fn print_welcome_banner(&mut self) -> Result<(), Box<dyn Error>>

Source

fn get_menu_lines() -> Vec<&'static str>

Source

fn print_menu(&mut self) -> Result<(), Box<dyn Error>>

Source

fn get_press_any_key_text() -> &'static str

Source

fn press_any_key(&mut self) -> Result<(), Box<dyn Error>>

Source

fn prompt_yes_no(&mut self, message: &str) -> Result<bool, Box<dyn Error>>

Source

fn prompt_text(&mut self, message: &str) -> Result<String, Box<dyn Error>>

Source

fn prompt_number( &mut self, message: &str, min_limit: Option<usize>, max_limit: Option<usize>, ) -> Result<usize, Box<dyn Error>>

Source

fn print_maze_dimensions(&mut self, prefix: &str) -> Result<(), Box<dyn Error>>

Source

fn do_insert_rows(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_delete_rows(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_insert_cols(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_delete_cols(&mut self) -> Result<(), Box<dyn Error>>

Source

fn get_maze_dims(&self) -> (usize, usize)

Source

fn maze_has_cells(&mut self) -> bool

Source

fn process_set_endpoint(&mut self, start: bool) -> Result<(), Box<dyn Error>>

Source

fn do_set_start(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_set_finish(&mut self) -> Result<(), Box<dyn Error>>

Source

fn process_walls( &mut self, title: &str, modify_char: char, ) -> Result<(), Box<dyn Error>>

Source

fn do_set_walls(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_clear_walls(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_resize(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_empty(&mut self) -> Result<(), Box<dyn Error>>

Source

fn print_maze(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_solve(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_print(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_open(&mut self) -> Result<(), Box<dyn Error>>

Source

fn get_maze_names(&mut self) -> Result<Vec<String>, Box<dyn Error>>

Source

fn print_maze_names(&mut self) -> Result<usize, Box<dyn Error>>

Source

fn do_list(&mut self) -> Result<(), Box<dyn Error>>

Source

fn save_maze( &mut self, name: &str, prompt_overwrite: bool, ) -> Result<(), Box<dyn Error>>

Source

fn do_save(&mut self) -> Result<(), Box<dyn Error>>

Source

fn do_save_as(&mut self) -> Result<(), Box<dyn Error>>

Source

fn delete_maze(&mut self, name: &str) -> Result<(), Box<dyn Error>>

Source

fn do_delete(&mut self) -> Result<(), Box<dyn Error>>

Source

fn process_keys(&mut self) -> Result<(), Box<dyn Error>>

Source

fn run(&mut self) -> Result<(), Box<dyn Error>>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§