qiniu_sdk/
lib.rs

1#![cfg_attr(feature = "docs", feature(doc_cfg))]
2#![deny(
3    single_use_lifetimes,
4    missing_debug_implementations,
5    large_assignments,
6    exported_private_dependencies,
7    absolute_paths_not_starting_with_crate,
8    anonymous_parameters,
9    explicit_outlives_requirements,
10    keyword_idents,
11    macro_use_extern_crate,
12    meta_variable_misuse,
13    missing_docs,
14    non_ascii_idents,
15    indirect_structural_match,
16    trivial_numeric_casts,
17    unreachable_pub,
18    unsafe_code,
19    unused_extern_crates,
20    unused_import_braces,
21    unused_qualifications
22)]
23
24//! # qiniu-sdk
25//!
26//! ## 七牛 SDK
27//!
28//! 作为七牛所有 Rust SDK 插件的入口,可以通过启动功能来导入其他七牛 SDK。
29//!
30//! ### 功能描述
31//!
32//! #### `utils`
33//!
34//! 允许通过 `qiniu_sdk::utils` 来访问 `qiniu-utils`。
35//!
36//! #### `etag`
37//!
38//! 允许通过 `qiniu_sdk::etag` 来访问 `qiniu-etag`。
39//!
40//! #### `credential`
41//!
42//! 允许通过 `qiniu_sdk::credential` 来访问 `qiniu-credential`。
43//!
44//! #### `upload-token`
45//!
46//! 允许通过 `qiniu_sdk::upload_token` 来访问 `qiniu-upload-token`。
47//!
48//! #### `http`
49//!
50//! 允许通过 `qiniu_sdk::http` 来访问 `qiniu-http`。
51//!
52//! #### `http-client`
53//!
54//! 允许通过 `qiniu_sdk::http_client` 来访问 `qiniu-http-client`。
55//!
56//! #### `apis`
57//!
58//! 允许通过 `qiniu_sdk::apis` 来访问 `qiniu-apis`。
59//!
60//! #### `objects`
61//!
62//! 允许通过 `qiniu_sdk::objects` 来访问 `qiniu-objects-manager`。
63//!
64//! #### `upload`
65//!
66//! 允许通过 `qiniu_sdk::upload` 来访问 `qiniu-upload-manager`。
67//!
68//! #### `download`
69//!
70//! 允许通过 `qiniu_sdk::download` 来访问 `qiniu-download-manager`。
71//!
72//! #### `async`
73//!
74//! 启用所有七牛 SDK 插件的异步接口。
75//!
76//! #### `ureq`
77//!
78//! 导入 `qiniu-ureq` 作为 HTTP 客户端,并允许通过 `qiniu_sdk::ureq` 来访问 `qiniu-ureq`。
79//!
80//! #### `isahc`
81//!
82//! 导入 `qiniu-isahc` 作为 HTTP 客户端,并允许通过 `qiniu_sdk::isahc` 来访问 `qiniu-isahc`。
83//!
84//! #### `reqwest`
85//!
86//! 导入 `qiniu-reqwest` 作为 HTTP 客户端,并允许通过 `qiniu_sdk::reqwest` 来访问 `qiniu-reqwest`。
87//!
88//! #### `c_ares`
89//!
90//! 启用 `c-ares` 库作为 DNS 解析器。
91//!
92//! #### `trust_dns`
93//!
94//! 启用 `trust-dns` 库作为 DNS 解析器。
95//!
96//! #### `dns-over-https`
97//!
98//! 启用 `trust-dns` 库作为 DNS 解析器,并使用 DOH 协议。
99//!
100//! #### `dns-over-tls`
101//!
102//! 启用 `trust-dns` 库作为 DNS 解析器,并使用 DOT 协议。
103
104#[cfg(feature = "utils")]
105pub use qiniu_utils as utils;
106
107#[cfg(feature = "etag")]
108pub use qiniu_etag as etag;
109
110#[cfg(feature = "credential")]
111pub use qiniu_credential as credential;
112
113#[cfg(feature = "upload-token")]
114pub use qiniu_upload_token as upload_token;
115
116#[cfg(feature = "http")]
117pub use qiniu_http as http;
118
119#[cfg(feature = "http-client")]
120pub use qiniu_http_client as http_client;
121
122#[cfg(feature = "apis")]
123pub use qiniu_apis as apis;
124
125#[cfg(feature = "objects")]
126pub use qiniu_objects_manager as objects;
127
128#[cfg(feature = "upload")]
129pub use qiniu_upload_manager as upload;
130
131#[cfg(feature = "download")]
132pub use qiniu_download_manager as download;
133
134#[cfg(feature = "ureq")]
135pub use qiniu_ureq as ureq;
136
137#[cfg(feature = "reqwest")]
138pub use qiniu_reqwest as reqwest;
139
140#[cfg(feature = "isahc")]
141pub use qiniu_isahc as isahc;
142
143/// 将所有 Trait 全部重新导出,方便统一导入
144pub mod prelude {
145    #[cfg(feature = "credential")]
146    pub use qiniu_credential::prelude::*;
147
148    #[cfg(feature = "upload-token")]
149    pub use qiniu_upload_token::prelude::*;
150
151    #[cfg(feature = "http")]
152    pub use qiniu_http::prelude::*;
153
154    #[cfg(feature = "http-client")]
155    pub use qiniu_http_client::prelude::*;
156
157    #[cfg(feature = "objects")]
158    pub use qiniu_objects_manager::prelude::*;
159
160    #[cfg(feature = "upload")]
161    pub use qiniu_upload_manager::prelude::*;
162
163    #[cfg(feature = "download")]
164    pub use qiniu_download_manager::prelude::*;
165}