#[macro_use]
extern crate error_chain;
#[macro_use]
extern crate log;
use env_logger;
use std::io::Write;
pub mod cli;
pub mod errors;
pub mod matching;
pub mod qgram;
pub mod verification;
use crate::errors::*;
use crate::matching::ed_join;
fn main() -> Result<()> {
env_logger::builder()
.format(|buf, record| {
writeln!(
buf,
"{}",
record.args()
)
})
.init();
let config: cli::Config = cli::parse_config().unwrap_or_else(|err| {
eprintln!("Error when parsing CLI arguments:\n {}", err);
std::process::exit(1);
});
match ed_join(&config.doc_x, &config.doc_y, config.q, config.tau) {
Ok(()) => Ok(()),
Err(e) => Err(e),
}
}