Add timing info & use log for output
This commit is contained in:
@@ -16,6 +16,11 @@ path = "src/main.rs"
|
||||
[dependencies]
|
||||
lalrpop-util = "0.17.0"
|
||||
regex = "0.2.1"
|
||||
measure_time = "0.6" # To mesure parsing time, only required by binary
|
||||
|
||||
# Logging macros API
|
||||
log = { version = "0.4", features = ["max_level_trace", "release_max_level_debug"] }
|
||||
pretty_env_logger = "0.3" # Logger implementation
|
||||
|
||||
[build-dependencies]
|
||||
lalrpop = "0.17.0"
|
||||
|
||||
20
src/main.rs
20
src/main.rs
@@ -1,3 +1,6 @@
|
||||
#[macro_use]
|
||||
extern crate measure_time;
|
||||
|
||||
extern crate parser;
|
||||
|
||||
use parser::queries;
|
||||
@@ -5,11 +8,17 @@ use parser::queries;
|
||||
use std::io;
|
||||
|
||||
fn main() {
|
||||
// If RUST_LOG is unset, set it to INFO, otherwise keep it as-is.
|
||||
if std::env::var("RUST_LOG").is_err() {
|
||||
std::env::set_var("RUST_LOG", "info");
|
||||
}
|
||||
pretty_env_logger::init();
|
||||
|
||||
//let parser = queries::FiltersParser::new();
|
||||
let parser = queries::QueryParser::new();
|
||||
|
||||
loop {
|
||||
println!("\n> Expression to parse (type `quit` to exit): ");
|
||||
info!("Expression to parse (type `quit` to exit): ");
|
||||
|
||||
let mut input = String::new();
|
||||
|
||||
@@ -23,6 +32,13 @@ fn main() {
|
||||
if input.trim().eq_ignore_ascii_case("quit") {
|
||||
break;
|
||||
}
|
||||
println!("\n> Tree: \n{:?}", parser.parse(input.as_str()));
|
||||
|
||||
let input = input.as_str();
|
||||
let mut out;
|
||||
{
|
||||
debug_time!("Parsing");
|
||||
out = parser.parse(input);
|
||||
}
|
||||
info!("Tree: \n{:?}", out);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user