]> Untitled Git - lemmy.git/blob - crates/utils/src/lib.rs
f3213390a393e8fbe8702368914c03274d2a0491
[lemmy.git] / crates / utils / src / lib.rs
1 #[macro_use]
2 extern crate strum_macros;
3 #[macro_use]
4 extern crate smart_default;
5
6 pub mod apub;
7 pub mod email;
8 pub mod rate_limit;
9 pub mod settings;
10
11 pub mod claims;
12 pub mod error;
13 pub mod request;
14 pub mod utils;
15 pub mod version;
16
17 use std::{fmt, time::Duration};
18
19 pub type ConnectionId = usize;
20
21 pub const REQWEST_TIMEOUT: Duration = Duration::from_secs(10);
22
23 #[derive(PartialEq, Eq, Hash, Debug, Clone)]
24 pub struct IpAddr(pub String);
25
26 impl fmt::Display for IpAddr {
27   fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
28     write!(f, "{}", self.0)
29   }
30 }
31
32 #[macro_export]
33 macro_rules! location_info {
34   () => {
35     format!(
36       "None value at {}:{}, column {}",
37       file!(),
38       line!(),
39       column!()
40     )
41   };
42 }