pub trait MazeStore {
// Required methods
fn create_maze(
&mut self,
owner: &User,
maze: &mut Maze,
) -> Result<(), Error>;
fn delete_maze(&mut self, owner: &User, id: &str) -> Result<(), Error>;
fn update_maze(
&mut self,
owner: &User,
maze: &mut Maze,
) -> Result<(), Error>;
fn get_maze(&self, owner: &User, id: &str) -> Result<Maze, Error>;
fn find_maze_by_name(
&self,
owner: &User,
name: &str,
) -> Result<MazeItem, Error>;
fn get_maze_items(
&self,
owner: &User,
include_definitions: bool,
) -> Result<Vec<MazeItem>, Error>;
}Expand description
Represents a store for holding mazes and related objects
Required Methods§
Sourcefn create_maze(&mut self, owner: &User, maze: &mut Maze) -> Result<(), Error>
fn create_maze(&mut self, owner: &User, maze: &mut Maze) -> Result<(), Error>
Adds a new maze to the store and sets the allocated id within the maze object
Sourcefn delete_maze(&mut self, owner: &User, id: &str) -> Result<(), Error>
fn delete_maze(&mut self, owner: &User, id: &str) -> Result<(), Error>
Deletes a maze from the store
Sourcefn update_maze(&mut self, owner: &User, maze: &mut Maze) -> Result<(), Error>
fn update_maze(&mut self, owner: &User, maze: &mut Maze) -> Result<(), Error>
Updates a maze within the store