mill_io/
handler.rs

1use mio::{event::Event, Interest};
2
3pub trait EventHandler {
4    fn handle_event(&self, event: &Event);
5}
6pub struct HandlerEntry {
7    pub handler: Box<dyn EventHandler + Send + Sync>,
8    pub interest: Interest,
9}
10
11impl HandlerEntry {
12    pub fn new<H>(handler: H, interest: Interest) -> Self
13    where
14        H: EventHandler + Send + Sync + 'static,
15    {
16        HandlerEntry {
17            handler: Box::new(handler),
18            interest,
19        }
20    }
21}