1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
use crate::{error::Error, resource::Resource}; use std::io::{self, Read, Write}; use url::Url; pub struct Zero {} impl Resource for Zero { fn new(_: Url) -> Result<Zero, Error> { Ok(Zero {}) } fn close(&mut self) {} } impl Read for Zero { fn read(&mut self, buf: &mut [u8]) -> io::Result<usize> { for i in 0..buf.len() { buf[i] = 0 } Ok(buf.len()) } } impl Write for Zero { fn write(&mut self, buf: &[u8]) -> io::Result<usize> { Ok(buf.len()) } fn flush(&mut self) -> io::Result<()> { Ok(()) } }