Rename things to ush for brevity. Add Tree system.

This commit is contained in:
Michael Mikovsky
2026-02-09 10:27:15 -07:00
parent ebeaa29d5b
commit 2a18639d84
86 changed files with 368 additions and 419 deletions
+23 -117
View File
@@ -1,15 +1,14 @@
#[cfg(feature = "log_debug")]
#[macro_export]
macro_rules! debug {
($fmt:tt) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt);
macro_rules! log {
($level:expr, $fmt:tt) => {{
use $crate::obfuscate;
let log_result = obfuscate::format_obs!($fmt);
$crate::logger::add_record(
$crate::logger::LogLevel::Debug,
$level,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
Some(String::from(obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
@@ -17,15 +16,15 @@ macro_rules! debug {
log_result
);
}};
($fmt:tt, $($arg:expr),*) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt, $($arg),*);
($level:expr, $fmt:tt, $($arg:expr),*) => {{
use $crate::obfuscate;
let log_result = obfuscate::format_obs!($fmt, $($arg),*);
$crate::logger::add_record(
$crate::logger::LogLevel::Debug,
$level,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
Some(String::from(obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
@@ -35,123 +34,30 @@ macro_rules! debug {
}};
}
#[cfg(not(feature = "log_debug"))]
#[macro_export]
macro_rules! debug {
($fmt:tt) => {{
let _ = $fmt;
}};
($fmt:tt, $($arg:expr),*) => {{
let _ = $fmt;
$(let _ = $arg;)*
}};
($($arg:tt)*) => {
$crate::log!($crate::logger::LogLevel::Debug, $($arg)*)
};
}
#[macro_export]
macro_rules! info {
($fmt:tt) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt);
$crate::logger::add_record(
$crate::logger::LogLevel::Info,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($fmt:tt, $($arg:expr),*) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt, $($arg),*);
$crate::logger::add_record(
$crate::logger::LogLevel::Info,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($($arg:tt)*) => {
$crate::log!($crate::logger::LogLevel::Info, $($arg)*)
};
}
#[macro_export]
macro_rules! warn {
($fmt:tt) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt);
$crate::logger::add_record(
$crate::logger::LogLevel::Warn,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($fmt:tt, $($arg:expr),*) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt, $($arg),*);
$crate::logger::add_record(
$crate::logger::LogLevel::Warn,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($($arg:tt)*) => {
$crate::log!($crate::logger::LogLevel::Warn, $($arg)*)
};
}
#[macro_export]
macro_rules! error {
($fmt:tt) => {{
let log_result = unshell_obfuscate::format_obs!($fmt);
$crate::logger::add_record(
$crate::logger::LogLevel::Error,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($fmt:tt, $($arg:expr),*) => {{
use $crate::unshell_obfuscate;
let log_result = unshell_obfuscate::format_obs!($fmt, $($arg),*);
$crate::logger::add_record(
$crate::logger::LogLevel::Error,
#[cfg(feature = "log_debug")]
Some(String::from(unshell_obfuscate::file_symbol!())),
#[cfg(not(feature = "log_debug"))]
None,
std::time::SystemTime::now(),
log_result
);
}};
($($arg:tt)*) => {
$crate::log!($crate::logger::LogLevel::Error, $($arg)*)
};
}
+1
View File
@@ -10,6 +10,7 @@ mod pretty_logger;
use std::time::SystemTime;
pub use pretty_logger::PrettyLogger;
pub use pretty_logger::log;
static mut LOGGER: &dyn Logger = &DefaultLogger;
+24 -16
View File
@@ -23,25 +23,33 @@ impl Logger for PrettyLogger {
(*func)(&message)
}
let log_level = match message.log_level {
LogLevel::Debug => format!("{DEBUG_COLOR}DBUG"),
LogLevel::Info => format!("{INFO_COLOR}INFO"),
LogLevel::Warn => format!("{WARN_COLOR}WARN"),
LogLevel::Error => format!("{ERROR_COLOR}ERR!"),
};
let date: DateTime<Utc> = message.time.into();
let date = date.to_rfc2822().to_string();
let location = message.location.unwrap_or("".to_string());
println!(
"{OFF_WHITE}[{TIME_COLOR}{}{OFF_WHITE}] {} {WHITE}{} {GREY}{}{WHITE}",
date, log_level, message.message, location
);
log(&message);
}
}
pub fn log(message: &Record) {
let log_level = match message.log_level {
LogLevel::Debug => format!("{DEBUG_COLOR}DBUG"),
LogLevel::Info => format!("{INFO_COLOR}INFO"),
LogLevel::Warn => format!("{WARN_COLOR}WARN"),
LogLevel::Error => format!("{ERROR_COLOR}ERR!"),
};
let date: DateTime<Utc> = message.time.into();
let date = date.to_rfc2822().to_string();
let location = if let Some(ref location) = message.location {
location
} else {
&String::new()
};
println!(
"{OFF_WHITE}[{TIME_COLOR}{}{OFF_WHITE}] {} {WHITE}{} {GREY}{}{WHITE}",
date, log_level, message.message, location
);
}
impl PrettyLogger {
pub fn init() {
crate::logger::set_logger_box(Box::new(PrettyLogger { output: None }));