summaryrefslogtreecommitdiff
path: root/src/event/handler.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/handler.rs')
-rw-r--r--src/event/handler.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/event/handler.rs b/src/event/handler.rs
index 3f9827e..f801d12 100644
--- a/src/event/handler.rs
+++ b/src/event/handler.rs
@@ -1,7 +1,5 @@
-// TODO : dispatch event through all listener
-// TODO : maybe compile listener into one ?
-
use crate::{
+ codec::Codec,
context::Context,
event::{
Event,
@@ -12,6 +10,7 @@ use crate::{
pub struct EventHandler<Packet, Data = (), Uid = u64>
where
Uid: PartialEq,
+ Packet: Codec<Data>,
{
listeners: Vec<Box<dyn Listener<Packet, Data, Uid>>>,
}
@@ -19,6 +18,7 @@ where
impl<Packet, Data, Uid> EventHandler<Packet, Data, Uid>
where
Uid: PartialEq + Clone,
+ Packet: Codec<Data>,
{
pub fn register<L: Listener<Packet, Data, Uid> + 'static>(&mut self, listener: L) {
self.listeners.push(Box::new(listener));