use o3::buffer::resident::bound;
use sark_http::payload::response::dispatch;
use crate::server::service::{Bounded, Request};
pub trait Handler {
type Output<'req, 'd>: dispatch::Immediate<'req, 'd>
where
Self: 'req,
'd: 'req;
type Egress<'d>: bound::Bound + 'd;
fn handle<'req, 'd, 'id>(&'req self, request: Request<'req, 'd, 'id>) -> Self::Output<'req, 'd>
where
'd: 'req;
fn with_bound<const N: usize>(self) -> Bounded<Self, N>
where
Self: Sized,
{
Bounded::new(self)
}
}