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}