#![doc(
html_logo_url = "https://raw.githubusercontent.com/apache/opendal/main/website/static/img/logo.svg"
)]
#![doc = include_str!("../README.md")]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![cfg_attr(docsrs, doc(auto_cfg))]
#![deny(missing_docs)]
mod types;
pub use types::*;
#[cfg(feature = "blocking")]
pub mod blocking;
pub mod layers;
pub mod raw;
pub mod services;
#[cfg(test)]
mod tests {
use super::*;
trait AssertSendSync: Send + Sync {}
impl AssertSendSync for Entry {}
impl AssertSendSync for Capability {}
impl AssertSendSync for Error {}
impl AssertSendSync for Reader {}
impl AssertSendSync for Writer {}
impl AssertSendSync for Lister {}
impl AssertSendSync for Operator {}
#[test]
fn test_trait() {
let _: Box<dyn AssertSendSync> = Box::new(Capability::default());
}
}