io: formatting

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This commit is contained in:
Wolfgang Bumiller 2021-12-07 11:51:15 +01:00
parent d871d6849b
commit a774958239

View File

@ -1,19 +1,19 @@
use std::io::Write;
use std::sync::mpsc::SyncSender;
use std::string::ToString;
use std::sync::mpsc::SyncSender;
/// Wrapper around SyncSender, which implements Write
///
/// Each write in translated into a send(Vec<u8>).
pub struct StdChannelWriter<E>(SyncSender<Result<Vec<u8>, E>>);
impl <E: ToString> StdChannelWriter<E> {
impl<E: ToString> StdChannelWriter<E> {
pub fn new(sender: SyncSender<Result<Vec<u8>, E>>) -> Self {
Self(sender)
}
}
impl <E: ToString> Write for StdChannelWriter<E> {
impl<E: ToString> Write for StdChannelWriter<E> {
fn write(&mut self, buf: &[u8]) -> Result<usize, std::io::Error> {
self.0
.send(Ok(buf.to_vec()))