use std::convert::Infallible;
use std::path::PathBuf;
mod ext; use ext::*;
mod pool;
mod handle;
mod work;
#[tokio::main]
async fn main() -> std::io::Result<()> {
//TODO: Is one hashing handler enough? Or should we have a pool of handlers, with a capacity of the number of threads or something? If we do that, we should disable tokio's threaded scheduler by default.
use futures::prelude::*;
work::start(std::env::args().skip(1), tokio::signal::ctrl_c().map(|_| ())).await
}