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}