2 unstable releases
0.2.0 | Sep 13, 2022 |
---|---|
0.1.0 | Feb 9, 2020 |
#14 in #reduce-boilerplate
160 downloads per month
Used in 5 crates
3KB
Exposes a utility function to reduce boilerplate for reading from stdin.
Yes
use std::io::Result;
use stdinix::stdinix;
fn main() -> Result<()> {
stdinix(|buf| {
println!("{}", buf.rev().collect());
Ok(())
})
}
No
use std::io::Result;
fn main() -> Result<()> {
let mut buf = String::new();
while let Ok(true) = {
buf.clear();
std::io::stdin().read_line(&mut buf).map(|l| l > 0)
} {
println!("{}", buf.rev().collect());
}
Ok(())
}
Async
use std::io::Result;
#[tokio::main]
async fn main() -> Result<()> {
let context = vec![0, 3];
astdinix(move |line| {
let context = context.clone();
async move {
println!("{} {}", line.bytes().nth(context[0]).unwrap(), line.bytes().nth(context[1]).unwrap());
Ok(())
}
})
.await
}