use anyhow::Result;
use thiserror::Error;
pub use coordinates::*;
pub use direction::*;
pub use field::*;
pub use maze::*;
pub use svgoptions::*;
mod coordinates;
mod direction;
mod field;
mod maze;
mod svgoptions;
#[derive(Error, Debug, Clone, Eq, PartialEq)]
pub enum GenericGeneratorError {
#[error("Unknown internal error. If this is reproducible, please report a bug at https://github.com/ftsell/maze_generator/issues/new : {0}")]
InternalError(String),
}
pub trait Generator {
fn generate(&mut self, width: i32, height: i32) -> Result<Maze>;
}