rst_common/
lib.rs

1//! A `rst-common` library is a simple Rust library that aggregate 
2//! all of common crates, such as `serde`, `serde_json`, etc. 
3//! 
4
5#![doc = include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/README.md"))]
6
7#[cfg(feature = "standard")]
8pub mod standard {
9    pub use async_trait;
10    pub use chrono;
11    pub use dyn_clone;
12    pub use erased_serde;
13    pub use futures;
14    pub use serde;
15    pub use serde_json;
16    pub use uuid;
17    pub use bytes;
18    pub use reqwest;
19}
20
21#[cfg(feature = "full")]
22pub mod full {
23    pub use async_trait;
24    pub use chrono;
25    pub use dyn_clone;
26    pub use erased_serde;
27    pub use futures;
28    pub use serde;
29    pub use serde_json;
30    pub use uuid;
31    pub use tokio;
32    pub use tracing;
33    pub use tracing_subscriber;
34    pub use env_logger;
35    pub use log;
36    pub use anyhow;
37    pub use thiserror;
38    pub use table_test;
39    pub use axum;
40    pub use hyper;
41    pub use hyper_util;
42    pub use tower;
43    pub use tower_http;
44    pub use rand;
45    pub use rand_chacha;
46    pub use hex;
47    pub use chacha20poly1305;
48    pub use blake3;
49    pub use argon2;
50    pub use ring;
51    pub use ed25519_dalek;
52    pub use x25519_dalek;
53}
54
55#[cfg(feature = "with-tokio")]
56pub mod with_tokio {
57    pub use tokio;
58}
59
60#[cfg(feature = "with-tracing")]
61pub mod with_tracing {
62    pub use tracing;
63    pub use tracing_subscriber;
64}
65
66#[cfg(feature = "with-logging")]
67pub mod with_logging {
68    pub use env_logger;
69    pub use log;
70}
71
72#[cfg(feature = "with-errors")]
73pub mod with_errors {
74    pub use anyhow;
75    pub use thiserror;
76}
77
78#[cfg(feature = "with-tests")]
79pub mod with_tests {
80    pub use table_test;
81}
82
83#[cfg(feature = "with-http-tokio")]
84pub mod with_http_tokio {
85    pub use axum;
86    pub use hyper;
87    pub use hyper_util;
88    pub use tower;
89    pub use tower_http;
90}
91
92#[cfg(feature = "with-cryptography")]
93pub mod with_cryptography {
94    pub use rand;
95    pub use rand_chacha;
96    pub use hex;
97    pub use chacha20poly1305;
98    pub use blake3;
99    pub use argon2;
100    pub use ring;
101    pub use sha2;
102    pub use ed25519_dalek;
103    pub use x25519_dalek;
104}