diff --git a/src/event/mod.rs b/src/event/mod.rs index 6e05d65..2c4be61 100644 --- a/src/event/mod.rs +++ b/src/event/mod.rs @@ -13,15 +13,8 @@ pub enum Event { #[derive(Debug)] pub struct Envelope { - pub from: Option, + pub from: String, pub event: Event, } -impl Envelope { - pub fn new (event: Event) -> Envelope { - Envelope { - from: None, - event: event - } - } -} +impl Envelope {} diff --git a/src/lib.rs b/src/lib.rs index d7cf4e6..5ede10e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -82,10 +82,10 @@ impl Tenquestionmarks { let (dispatcher_sender, dispatcher_receiver) = transformable_channels::mpsc::channel(); dispatchers.insert(key, dispatcher_receiver); - let mapped_sender = dispatcher_sender.map(move |envelope: Envelope| { + let mapped_sender = dispatcher_sender.map(move |event: Event| { Envelope { - from: Some(from.clone()), - event: envelope.event + from: from.clone(), + event: event } }); diff --git a/src/modules/autolink.rs b/src/modules/autolink.rs index 64c8a2a..083ab0c 100644 --- a/src/modules/autolink.rs +++ b/src/modules/autolink.rs @@ -83,7 +83,7 @@ fn print_any_link (link: &Link, message: &Message) { } impl EventLoop for AutolinkModule { - fn run (&self, _: Box>, receiver: Receiver>) { + fn run (&self, _: Box>, receiver: Receiver>) { let link_regex = Regex::new(r"\[\[([^\[\]]*)\]\]").expect("Invalid regex..."); let mut searchers = AggregateSearcher::new(); searchers.add_searcher("mtg", Box::new(MtgSearcher::new())); diff --git a/src/modules/discord.rs b/src/modules/discord.rs index c84ff45..308341f 100644 --- a/src/modules/discord.rs +++ b/src/modules/discord.rs @@ -102,7 +102,7 @@ fn channel_from_public_channel (discord: Arc, channel: discord::model:: } impl EventLoop for DiscordModule { - fn run (&self, sender: Box>, _: Receiver>) { + fn run (&self, sender: Box>, _: Receiver>) { let discord = Arc::new(Discord::from_bot_token(&self.token[..]).expect("Discord module: Login failed")); let (mut connection, _) = discord.connect().expect("Discord module: Connection failed"); @@ -121,9 +121,9 @@ impl EventLoop for DiscordModule { for channel in server.channels { info!(" - Joined channel: {}", channel.name); - match sender.send(Envelope::new(event::Event::SelfJoin { + match sender.send(event::Event::SelfJoin { channel: channel_from_public_channel(discord.clone(), channel) - })) { + }) { Err(err) => error!("Error sending selfjoin event: {:?}", err), Ok(_) => {} } @@ -147,7 +147,7 @@ impl EventLoop for DiscordModule { channel: discord.get_channel(message.channel_id).ok().and_then(|channel| make_channel_object(discord.clone(), channel)) }; - if let Err(err) = sender.send(Envelope::new(event::Event::Message { message: message })) { + if let Err(err) = sender.send(event::Event::Message { message: message }) { error!("Error sending message event: {:?}", err) } } diff --git a/src/modules/echo.rs b/src/modules/echo.rs index a08e955..711a840 100644 --- a/src/modules/echo.rs +++ b/src/modules/echo.rs @@ -29,7 +29,7 @@ impl EchoModule { } impl EventLoop for EchoModule { - fn run(&self, _: Box>, receiver: Receiver>) { + fn run(&self, _: Box>, receiver: Receiver>) { loop { match receiver.recv() { Ok(envelope) => { diff --git a/src/modules/echobox.rs b/src/modules/echobox.rs index 71fa4c7..4aaa0ba 100644 --- a/src/modules/echobox.rs +++ b/src/modules/echobox.rs @@ -36,7 +36,7 @@ impl EchoboxModule { } impl EventLoop for EchoboxModule { - fn run(&self, _: Box>, receiver: Receiver>) { + fn run(&self, _: Box>, receiver: Receiver>) { let echobox = Echobox::with_file(&self.file).unwrap(); loop { diff --git a/src/modules/logger.rs b/src/modules/logger.rs index da7da2a..ada47fd 100644 --- a/src/modules/logger.rs +++ b/src/modules/logger.rs @@ -21,7 +21,7 @@ impl LoggerModule { } impl EventLoop for LoggerModule { - fn run(&self, _: Box>, receiver: Receiver>) { + fn run(&self, _: Box>, receiver: Receiver>) { loop { match receiver.recv() { Ok(envelope) => { diff --git a/src/modules/lua.rs b/src/modules/lua.rs index ada4c40..6819e01 100644 --- a/src/modules/lua.rs +++ b/src/modules/lua.rs @@ -54,7 +54,7 @@ implement_lua_push!(Message, |mut metatable| { }); impl EventLoop for LuaModule { - fn run (&self, _: Box>, receiver: Receiver>) { + fn run (&self, _: Box>, receiver: Receiver>) { let mut lua = Lua::new(); lua.openlibs(); diff --git a/src/modules/mod.rs b/src/modules/mod.rs index 4cbd0dc..720e458 100644 --- a/src/modules/mod.rs +++ b/src/modules/mod.rs @@ -10,7 +10,7 @@ pub mod logger; pub mod loader; -use event::Envelope; +use event::{Event, Envelope}; use std::sync::Arc; use std::sync::mpsc::Receiver; @@ -25,7 +25,7 @@ pub struct Module { } impl Module { - pub fn run (&self, sender: Box>, receiver: Receiver>) { + pub fn run (&self, sender: Box>, receiver: Receiver>) { self.event_loop.run(sender, receiver); } @@ -55,5 +55,5 @@ impl Module { } pub trait EventLoop : Sync { - fn run (&self, _: Box>, _: Receiver>) {} + fn run (&self, _: Box>, _: Receiver>) {} } diff --git a/src/modules/pvn.rs b/src/modules/pvn.rs index 67945e9..df636e4 100644 --- a/src/modules/pvn.rs +++ b/src/modules/pvn.rs @@ -141,7 +141,7 @@ impl PirateVsNinja { } impl EventLoop for PvnModule { - fn run(&self, _: Box>, receiver: Receiver>) { + fn run(&self, _: Box>, receiver: Receiver>) { let mut pvn = PirateVsNinja { pirates: Pirates::new(), ninjas: Ninjas::new() diff --git a/src/modules/random.rs b/src/modules/random.rs index 85da1a9..3fd19a6 100644 --- a/src/modules/random.rs +++ b/src/modules/random.rs @@ -40,7 +40,7 @@ impl RandomModule { } impl EventLoop for RandomModule { - fn run(&self, _: Box>, receiver: Receiver>) { + fn run(&self, _: Box>, receiver: Receiver>) { let mut rng = rand::thread_rng(); loop { diff --git a/src/modules/stdin.rs b/src/modules/stdin.rs index c135ae6..ff33bab 100644 --- a/src/modules/stdin.rs +++ b/src/modules/stdin.rs @@ -36,7 +36,7 @@ impl StdinModule { } impl EventLoop for StdinModule { - fn run(&self, sender: Box>, _: Receiver>) { + fn run(&self, sender: Box>, _: Receiver>) { loop { let mut input = String::new(); match io::stdin().read_line(&mut input) { @@ -52,7 +52,7 @@ impl EventLoop for StdinModule { channel: None }; - match sender.send(Envelope::new(Event::Message { message: message })) { + match sender.send(Event::Message { message: message }) { Err(err) => error!("Error sending message event: {:?}", err), Ok(_) => {} }