mill_io/
handler.rs

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