Move __static_max_level to other hidden functions and add warning

This commit is contained in:
Steven Fackler 2015-10-29 22:05:02 -07:00
parent 0405d78f79
commit d2433cf0ef

View File

@ -563,40 +563,6 @@ pub fn max_log_level() -> LogLevelFilter {
unsafe { mem::transmute(MAX_LOG_LEVEL_FILTER.load(Ordering::Relaxed)) }
}
#[inline(always)]
#[doc(hidden)]
pub fn __static_max_level() -> LogLevelFilter {
if !cfg!(debug_assertions) {
// This is a release build. Check `release_max_level_*` first.
if cfg!(feature = "release_max_level_off") {
return LogLevelFilter::Off
} else if cfg!(feature = "release_max_level_error") {
return LogLevelFilter::Error
} else if cfg!(feature = "release_max_level_warn") {
return LogLevelFilter::Warn
} else if cfg!(feature = "release_max_level_info") {
return LogLevelFilter::Info
} else if cfg!(feature = "release_max_level_debug") {
return LogLevelFilter::Debug
} else if cfg!(feature = "release_max_level_trace") {
return LogLevelFilter::Trace
}
}
if cfg!(feature = "max_level_off") {
LogLevelFilter::Off
} else if cfg!(feature = "max_level_error") {
LogLevelFilter::Error
} else if cfg!(feature = "max_level_warn") {
LogLevelFilter::Warn
} else if cfg!(feature = "max_level_info") {
LogLevelFilter::Info
} else if cfg!(feature = "max_level_debug") {
LogLevelFilter::Debug
} else {
LogLevelFilter::Trace
}
}
/// Sets the global logger.
///
/// The `make_logger` closure is passed a `MaxLogLevel` object, which the
@ -712,6 +678,43 @@ pub fn __log(level: LogLevel, target: &str, loc: &LogLocation,
}
}
// WARNING
// This is not considered part of the crate's public API. It is subject to
// change at any time.
#[inline(always)]
#[doc(hidden)]
pub fn __static_max_level() -> LogLevelFilter {
if !cfg!(debug_assertions) {
// This is a release build. Check `release_max_level_*` first.
if cfg!(feature = "release_max_level_off") {
return LogLevelFilter::Off
} else if cfg!(feature = "release_max_level_error") {
return LogLevelFilter::Error
} else if cfg!(feature = "release_max_level_warn") {
return LogLevelFilter::Warn
} else if cfg!(feature = "release_max_level_info") {
return LogLevelFilter::Info
} else if cfg!(feature = "release_max_level_debug") {
return LogLevelFilter::Debug
} else if cfg!(feature = "release_max_level_trace") {
return LogLevelFilter::Trace
}
}
if cfg!(feature = "max_level_off") {
LogLevelFilter::Off
} else if cfg!(feature = "max_level_error") {
LogLevelFilter::Error
} else if cfg!(feature = "max_level_warn") {
LogLevelFilter::Warn
} else if cfg!(feature = "max_level_info") {
LogLevelFilter::Info
} else if cfg!(feature = "max_level_debug") {
LogLevelFilter::Debug
} else {
LogLevelFilter::Trace
}
}
#[cfg(test)]
mod tests {
use std::error::Error;