Merge pull request #1 from ZyLacx/radko-rework

rework for anyhow
This commit is contained in:
ZyLacx 2023-07-07 13:45:08 +02:00 committed by GitHub
commit e34df85f0c
3 changed files with 45 additions and 36 deletions

View file

@ -6,10 +6,11 @@ edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
anyhow = "1.0.71"
cron = "0.12.0"
dotenv = "0.15.0"
mongodb = "2.6.0"
poise = "0.5.5"
serenity = { version = "0.11.6", default-features = false, features = ["client", "gateway", "rustls_backend", "model", "http"] }
serenity_utils = "0.7.0"
tokio = { version = "1.29.1", features = ["macros", "rt-multi-thread"] }
tokio = { version = "1.29.1", features = ["macros", "rt-multi-thread"] }

View file

@ -2,12 +2,12 @@ use std::sync::Arc;
use poise::serenity_prelude::GuildChannel;
use serenity::async_trait;
use serenity::http::{self, Http};
use serenity::model::channel::Message;
use serenity::model::gateway::Ready;
use serenity::model::id::ChannelId;
use serenity::prelude::*;
use util::security::dotenv_var;
use serenity::http::{self, Http};
mod util;
@ -26,48 +26,37 @@ impl EventHandler for Handler {
async fn ready(&self, ctx: Context, ready: Ready) {
println!("{} is connected!", ready.user.name);
// if (ready.user.name != "MOOver Debug") {
let messages = ["AAAAAAAAAAAAAAAAAAAA", "Henlooo", "Good day y'all!",
"May have crashed...", "MOOOooo", "Heyyyyy!", "I'm baaaaack!",
"Whom'st have summoned the ancient one?"];
// }
let opt_token = dotenv_var("TOKEN");
if opt_token.is_none() {
return;
}
let messages = [
"AAAAAAAAAAAAAAAAAAAA",
"Henlooo",
"Good day y'all!",
"May have crashed...",
"MOOOooo",
"Heyyyyy!",
"I'm baaaaack!",
"Whom'st have summoned the ancient one?",
];
// }
let channel = ctx.http.get_channel(780439236867653635).await.unwrap();
let token = opt_token.unwrap();
let channel_result = ctx.http.get_channel(780439236867653635).await;
let channel = channel_result.unwrap();
// let channel = await http.get_channel(780439236867653635);
// GuildChannel::say(&self, http, content)
// self.message(ctx, new_message)
// C = ;
// const debug_channel =
}
}
#[tokio::main]
async fn main() {
let opt_token = dotenv_var("TOKEN");
if opt_token.is_none() {
return;
}
let token = opt_token.unwrap();
async fn main() -> anyhow::Result<()> {
use anyhow::Context;
let token = dotenv_var("TOKEN").context("No TOKEN in env")?;
let intents = GatewayIntents::GUILD_MESSAGES
| GatewayIntents::DIRECT_MESSAGES
| GatewayIntents::MESSAGE_CONTENT;
let mut client = Client::builder(&token, intents)
.event_handler(Handler)
.await.expect("Error creating client");
if let Err(why) = client.start().await {
println!("Client error: {:?}", why);
}
.event_handler(Handler)
.await
.context("Failed to build client")?;
client.start().await?;
Ok(())
}

19
src/sample.rs Normal file
View file

@ -0,0 +1,19 @@
struct MyStruct {
niečo: String,
}
impl MyStruct {
fn add(&mut self) {
self.niečo.push(char::from_digit(2, 2).unwrap());
}
}
trait Countable {
fn count(&self) -> usize;
}
impl Countable for MyStruct {
fn count(&self) -> usize {
self.niečo.len()
}
}
fn smt(var: Box<dyn Countable>) {
var.count();
}