#![recursion_limit = "1024"]
#[macro_use]
extern crate error_chain;
pub mod errors {
error_chain! { }
}
#[allow(unused_imports)]
pub use errors::*;
#[macro_use]
extern crate log;
extern crate env_logger;
extern crate assertables;
#[macro_use] pub(crate) mod types; pub(crate) mod util; pub(crate) mod test;
pub(crate) mod app { pub(crate) mod args; pub(crate) mod clap; pub(crate) mod config; pub(crate) mod confy; pub(crate) mod run; }
pub(crate) mod f { pub(crate) mod from_html_str_into_headline_str; pub(crate) mod from_list_pathable_string_into_list_path_buf; pub(crate) mod from_list_str_into_map_string_string; pub(crate) mod from_path_buf_into_sibling; pub(crate) mod from_pathable_string_into_list_path_buf; pub(crate) mod from_set_pathable_string_into_set_path_buf; pub(crate) mod remove_file_if_exists;
pub(crate) mod walkdir_dir_entry_is_hidden;
pub(crate) mod walkdir_dir_entry_is_visible;
}
pub(crate) mod markdown {
pub(crate) mod markdown_parser;
}
pub(crate) mod matter {
pub(crate) mod matter_parser_mutex;
pub(crate) mod matter_parser_trait;
pub(crate) mod matter_parser_with_html;
pub(crate) mod matter_parser_with_json;
pub(crate) mod matter_parser_with_markdown_comments;
pub(crate) mod matter_parser_with_toml;
pub(crate) mod matter_parser_with_yaml;
}
pub(crate) mod rewriting {
pub(crate) mod lol;
}
pub(crate) mod state {
pub(crate) mod state_enum;
pub(crate) mod state_trait;
pub(crate) mod state_with_map;
pub(crate) mod state_with_json;
pub(crate) mod state_with_toml;
pub(crate) mod state_with_yaml;
}
pub(crate) mod templating {
pub(crate) mod serde;
pub(crate) mod tags;
}
pub(crate) mod templater {
pub(crate) mod templater_enum;
pub(crate) mod templater_trait;
pub(crate) mod templater_with_handlebars;
pub(crate) mod templater_with_tera;
}
fn main() {
env_logger::init();
if let Err(ref e) = crate::app::run::run() {
println!("error: {}", e);
for e in e.iter().skip(1) {
println!("caused by: {}", e);
}
if let Some(backtrace) = e.backtrace() {
println!("backtrace: {:?}", backtrace);
}
std::process::exit(1);
}
}