use std::io; mod ext; use ext::*; mod conf; mod prov; mod stream; fn main() -> io::Result<()> { let mut input = io::stdin().lock(); let mut output = stream::ThrottleAdaptor /*::new(prov::UniformThrottleProvider::from( prov::UniformDurationProvider::from( prov::Duration::from_millis(5) ..prov::Duration::from_millis(50) ) ..prov::UniformDurationProvider::from( prov::Duration::from_millis(10) ..prov::Duration::from_millis(100) ))*/ //TODO: Figure out how to fucking implement that god-damn uniform sampler for `UniformDurationProvider`. Ugh... ::new( prov::SingleThrottleProvider::from(prov::UniformDurationProvider::from(prov::Duration::from_millis(5)..prov::Duration::from_millis(10))) , prov::UniformBufferProvider::from(0usize..=20) , io::stdout().lock()); let copied = io::copy(&mut input, &mut output)?; if cfg!(debug_assertions) { eprintln!("Copied {copied} bytes from input -{output:?}> output"); } Ok(()) }