volt/lib.rs
1//! # Volt
2//!
3//! An API wrapper for Revolt written in rust!
4//!
5//! Volts goal is to make working with revolts API simple and easy
6//!
7//! ### What volt offeres:
8//! - An easy way to make requests
9//! - Pre Serilization of the data
10//! - Cacheing to improve performance of large requests
11//! - Inbuilt rate limits (25 requests per second)
12//! - Error handeling (Still in very heavy progress)
13//!
14
15#[cfg(feature="core")]
16pub(crate) mod voltcore;
17
18/// The core functionality of the crate
19///
20/// Without theses functions many of the crates features would not be able to work
21///
22/// Most of these functions are limited to inside crate use only but
23/// some are enabled to be used in your own applications even though
24/// it is not recommened
25
26#[cfg(feature="core")]
27pub mod core{
28
29 #[cfg(feature="core")]
30 pub(crate) use crate::voltcore::cache::Cache;
31
32 #[cfg(feature="core")]
33 pub use crate::voltcore::imageserver::ImageServer;
34
35 #[cfg(feature="core")]
36 pub(crate) use crate::voltcore::ratelimits::TokenBucket;
37
38 #[cfg(feature="core")]
39 pub(crate) use crate::voltcore::structs;
40}
41
42#[cfg(feature="client")]
43pub mod user;
44
45#[cfg(feature="client")]
46pub mod bot;
47
48#[cfg(feature="client")]
49pub(crate) mod client;
50
51#[cfg(feature="client")]
52pub mod clients{
53
54 #[cfg(feature="client")]
55 pub use crate::client::websocket::socket as websocket;
56
57}