murgamu 0.8.0

A NestJS-inspired web framework for Rust
Documentation
use crate::{
	container::core::MurServiceContainer,
	types::{MurRouteDefinition},
};
use std::sync::Arc;

pub trait MurController: Send + Sync + 'static {
	fn routes(self: Arc<Self>, container: Arc<MurServiceContainer>) -> Vec<MurRouteDefinition>;

	fn base_path(&self) -> &str {
		"/"
	}

	fn name(&self) -> &str {
		std::any::type_name::<Self>()
	}
}

pub trait MurCloneController: MurController + Clone {}
impl<T: MurController + Clone> MurCloneController for T {}