Remove unused imports, stub out send() for user and channel.

This commit is contained in:
Adrian Malacoda 2017-02-13 21:44:37 -06:00
parent 9bb6887bed
commit 6424a7a37f
6 changed files with 21 additions and 16 deletions

View File

@ -12,7 +12,7 @@ mod event;
use event::Event;
use std::sync::mpsc;
use std::sync::mpsc::{Sender, Receiver};
use std::sync::mpsc::Sender;
pub struct Tenquestionmarks {
plugins: BTreeMap<String, Box<Plugin>>
@ -84,7 +84,19 @@ pub struct Channel {
topic: String
}
impl Channel {
pub fn send (&self, message: &str) {
println!("send to {:?}: {:?}", self.name, message);
}
}
#[derive(Debug, Clone)]
pub struct User {
name: String
}
impl User {
pub fn send (&self, message: &str) {
println!("send to {:?}: {:?}", self.name, message);
}
}

View File

@ -1,8 +1,6 @@
use plugins::Plugin;
use toml::Table;
use Tenquestionmarks;
pub struct DiscordPlugin {
}

View File

@ -26,10 +26,13 @@ impl Plugin for EchoPlugin {
match receiver.recv() {
Ok(event) => {
match event {
Event::Message { content: message, channel: channel, sender: sender } => {
Event::Message { content: message, channel, sender } => {
if message.starts_with(self.prefix.as_str()) {
let substring = String::from(&message[self.prefix.chars().count()..]);
println!("Echo: {:?}", substring);
let substring = &message[self.prefix.chars().count()..];
match channel {
Some(channel) => channel.send(substring),
None => sender.send(substring)
}
}
}
_ => ()

View File

@ -1,8 +1,6 @@
use plugins::Plugin;
use toml::Table;
use Tenquestionmarks;
pub struct LuaPlugin {
}

View File

@ -1,8 +1,3 @@
use std::collections::HashMap;
use toml::Value;
use toml::Table;
pub mod hello;
pub mod lua;
pub mod discord;
@ -19,5 +14,5 @@ use std::sync::mpsc::{Sender, Receiver};
pub trait Plugin : Sync {
fn register (&self, tenquestionmarks: &Tenquestionmarks) {}
fn consume_events (&self, receiver: Receiver<Event>) {}
fn produce_events (&self, sender: Sender<Event>) {}
fn produce_events<'a>(&'a self, sender: Sender<Event<'a>>) {}
}

View File

@ -3,7 +3,6 @@ use std::io;
use plugins::Plugin;
use toml::Table;
use Tenquestionmarks;
use User;
use std::sync::mpsc::Sender;
@ -24,7 +23,7 @@ impl StdinPlugin {
}
impl Plugin for StdinPlugin {
fn produce_events (&self, sender: Sender<Event>) {
fn produce_events<'a>(&'a self, sender: Sender<Event<'a>>) {
let user = &self.user;
loop {