monoio_tungstenite/
lib.rs

1//! Lightweight, asynchronous WebSocket implementation for [`monoio`](https://github.com/bytedance/monoio) runtime,
2//! adapted from [`tungstenite-rs`](https://github.com/snapview/tungstenite-rs).
3
4#![deny(
5    missing_docs,
6    unused_must_use,
7    unused_mut,
8    unused_imports,
9    unused_import_braces
10)]
11
12#[cfg(feature = "handshake")]
13pub mod client;
14pub mod error;
15#[cfg(feature = "handshake")]
16pub mod handshake;
17pub mod protocol;
18#[cfg(feature = "handshake")]
19pub mod server;
20pub mod stream;
21#[cfg(all(
22    any(feature = "native-tls", feature = "rustls-tls"),
23    feature = "handshake"
24))]
25pub mod tls;
26
27// re-export bytes since used in `Message` API.
28pub use bytes::Bytes;
29#[cfg(all(
30    any(feature = "native-tls", feature = "rustls-tls"),
31    feature = "handshake"
32))]
33pub use client::connect_tls_with_config;
34pub use error::{Error, Result};
35#[cfg(feature = "handshake")]
36pub use http;
37pub use protocol::{Message, WebSocket, frame::Utf8Bytes};
38pub use stream::MaybeTlsStream;
39#[cfg(all(
40    any(feature = "native-tls", feature = "rustls-tls"),
41    feature = "handshake"
42))]
43pub use tls::{Connector, client_tls, client_tls_with_config};
44#[cfg(feature = "handshake")]
45pub use {
46    client::{ClientRequestBuilder, client, client_with_config, connect, connect_with_config},
47    handshake::client::client_handshake,
48    handshake::server::server_handshake,
49    server::{accept, accept_hdr, accept_hdr_with_config, accept_with_config},
50};