1use crate::*;
2
3pub type ArcTcpStream = std::sync::Arc<std::net::TcpStream>;
4pub type ArcLockStream = ArcRwLock<std::net::TcpStream>;
5pub type OptionArcTcpStream = Option<ArcTcpStream>;
6pub type OptionArcLockStream = Option<ArcLockStream>;
7pub type ArcRwLockWriteGuardTcpStream<'a> =
8 std::sync::Arc<std::sync::RwLockWriteGuard<'a, std::net::TcpStream>>;
9pub type OptionArcRwLockWriteGuardTcpStream<'a> = Option<ArcRwLockWriteGuardTcpStream<'a>>;
10pub type ArcMutexGuardTcpStream<'a> =
11 std::sync::Arc<std::sync::MutexGuard<'a, std::net::TcpStream>>;
12pub type OptionArcMutexGuardTcpStream<'a> = Option<ArcMutexGuardTcpStream<'a>>;
13
14pub type ArcTokioStream = std::sync::Arc<tokio::net::TcpStream>;
15pub type ArcLockTokioStream = ArcRwLock<tokio::net::TcpStream>;
16pub type OptionArcTokioTcpStream = Option<ArcTokioStream>;
17pub type OptionArcLockTokioStream = Option<ArcLockTokioStream>;
18pub type ArcRwLockWriteGuardTokioTcpStream<'a> =
19 std::sync::Arc<std::sync::RwLockWriteGuard<'a, tokio::net::TcpStream>>;
20pub type OptionArcRwLockWriteGuardTokioTcpStream<'a> =
21 Option<ArcRwLockWriteGuardTokioTcpStream<'a>>;
22pub type ArcMutexGuardTokioTcpStream<'a> =
23 std::sync::Arc<std::sync::MutexGuard<'a, std::net::TcpStream>>;
24pub type OptionArcMutexGuardTokioTcpStream<'a> = Option<ArcMutexGuardTokioTcpStream<'a>>;