http_type/stream/impl.rs
1use crate::*;
2
3impl ArcRwLockStream {
4 #[inline]
5 pub fn from(arc_rw_lock_stream: ArcRwLock<TcpStream>) -> Self {
6 Self(arc_rw_lock_stream)
7 }
8
9 #[inline]
10 pub fn from_stream(stream: TcpStream) -> Self {
11 Self(arc_rwlock(stream))
12 }
13
14 #[inline]
15 pub async fn get_read_lock(&self) -> RwLockReadGuardTcpStream {
16 self.0.read().await
17 }
18
19 #[inline]
20 pub async fn get_write_lock(&self) -> RwLockWriteGuardTcpStream {
21 self.0.write().await
22 }
23}