1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
pub mod cli;
pub mod config;
pub mod fs;
pub mod logger;
pub mod utils;
pub mod prelude {
pub use crate::config::Configure;
pub use itertools::Itertools;
pub use anyhow::Context as _Context; pub use anyhow::Ok as Ok_; pub use anyhow::{anyhow, bail, ensure, format_err};
pub use anyhow::{Error, Result};
#[doc(hidden)]
pub use serde::*;
pub use super::log_dbg;
#[doc(hidden)]
pub use log::{debug, error, info, trace, warn};
pub use rayon::prelude::*;
pub use std::fmt::Write as FmtWrite;
pub use std::io::{Read, Write};
pub use std::str::FromStr;
pub use crate::fs::{ShellEscapeExt, ShellEscapeLossyExt};
}
pub use itertools;
#[macro_export]
macro_rules! log_dbg {
() => {
info!("{}:{}", file!(), line!())
};
($val:expr $(,)?) => {
match $val {
tmp => {
info!("{}:{} {} = {:#?}",
file!(), line!(), stringify!($val), &tmp);
tmp
}
}
};
($($val:expr),+ $(,)?) => {
($($crate::log_dbg!($val)),+,)
};
}