use crate::http::{Request, Response};
use may::net::TcpStream;
use std::{io, sync::Arc};
pub enum ServiceResult {
Response(Response),
Consumed,
}
pub trait Service: Send + Sync + 'static {
fn handle(&self, req: Request, stream: Option<TcpStream>) -> io::Result<ServiceResult>;
}
pub type ArcService = Arc<dyn Service>;