/
germanubis
/
sqlx
Обзор
Документация
Войти
/
germanubis
/
sqlx
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
sqlx-core/src/rt/rt_tokio/socket.rs
55 строк
1 KB
Austin Bonander
Break drivers out into separate crates, clean up some technical debt (#2039)
22 фев 2023, 00:25
22 фев 2023, 00:25
b5312c3
Код
Авторство
О чём код?
use std::io; use std::pin::Pin; use std::task::{Context, Poll}; use tokio::io::AsyncWrite; use tokio::net::TcpStream; use crate::io::ReadBuf; use crate::net::Socket; impl Socket for TcpStream { fn try_read(&mut self, mut buf: &mut dyn ReadBuf) -> io::Result<usize> { // Requires `&mut impl BufMut` self.try_read_buf(&mut buf) } fn try_write(&mut self, buf: &[u8]) -> io::Result<usize> { (*self).try_write(buf) } fn poll_read_ready(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { (*self).poll_read_ready(cx) } fn poll_write_ready(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { (*self).poll_write_ready(cx) } fn poll_shutdown(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { Pin::new(self).poll_shutdown(cx) } } #[cfg(unix)] impl Socket for tokio::net::UnixStream { fn try_read(&mut self, mut buf: &mut dyn ReadBuf) -> io::Result<usize> { self.try_read_buf(&mut buf) } fn try_write(&mut self, buf: &[u8]) -> io::Result<usize> { (*self).try_write(buf) } fn poll_read_ready(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { (*self).poll_read_ready(cx) } fn poll_write_ready(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { (*self).poll_write_ready(cx) } fn poll_shutdown(&mut self, cx: &mut Context<'_>) -> Poll<io::Result<()>> { Pin::new(self).poll_shutdown(cx) } }