У меня есть нечто похожее на пример tokio connect с методом, который принимает приемник:
pub async fn connect(
addr: &SocketAddr,
mut stdin: impl Stream<Item = Result<Request, io::Error>> + Unpin,
mut stdout: impl Sink<Response, Error = io::Error> + Unpin,
) -> Result<(), Box<dyn Error>> {
Существует ли стандартный / простой способ адаптации функции к приемнику для печать и / или преобразование?
напр. что-то вроде:
connect(.., .., sink::from_function(|r| match r {
Ok(response) => println!("received a response: {:?}", response),
Err(e) => println!("error! {:?}", e);
})
.await;