renamed module.rs to lib.rs to allow for rust lib

This commit is contained in:
2024-03-26 17:59:34 -07:00
parent e870fad145
commit 54bf544760
2 changed files with 11 additions and 12 deletions

View File

@@ -1,17 +1,17 @@
use std::collections::VecDeque;
use irc::proto::{Message, Command::*};
//list of available modules, add mod [MODULE_NAME]; when you complete a new module
//list of available modules, add mod [MODULE_NAME]; when you complete a new module
//is this the best way to do this? probably not
mod lenny;
mod bully;
mod join_rude;
mod modules;
use modules::{bully, lenny, join_rude};
type ModuleFunc = fn(&Message, &VecDeque<Message>)->Option<(String, String)>;
const NUM_MODS:usize = 2;
const MOD_FUNCS: [ModuleFunc;NUM_MODS] = [lenny::Lenny::mod_message, bully::Bully::mod_message];
const MOD_FUNCS: [ModuleFunc;NUM_MODS] = [lenny::mod_message, bully::mod_message];
pub fn handle(message: &Message, message_buf: &VecDeque<Message>) -> Option<(String,String)> {
match message.command {
@@ -24,7 +24,7 @@ pub fn handle(message: &Message, message_buf: &VecDeque<Message>) -> Option<(Str
JOIN(ref channel,_,_) => return join_rude::join_rude(message.source_nickname().unwrap_or("unknown user"), channel.as_str()),
_ => ()
}
None
}
}

View File

@@ -2,8 +2,7 @@ use std::collections::VecDeque;
use irc::{client::prelude::*, error::Error};
use futures::prelude::*;
mod module;
use robbit::handle;
#[tokio::main]
async fn main() -> Result<(), Error>{
@@ -16,16 +15,16 @@ async fn main() -> Result<(), Error>{
let mut stream = client.stream()?;
let sender = client.sender();
let mut message_buf: VecDeque<Message> = VecDeque::with_capacity(max_len);
while let Some(message) = stream.next().await.transpose()? {
print!("{}",message);
let response = module::handle(&message, &message_buf);
let response = handle(&message, &message_buf);
if let Some((target,msg))= response {
print!("{}",message);
sender.send_privmsg(target,msg)?;
}
}
if message_buf.len() < max_len {
message_buf.push_front(message);