Merge pull request #362 from TheBlueMatt/2019-07-no-bogus-sec-required
[rust-lightning] / src / util / logger.rs
index b05ab10f3110b3446b4d8d0775b6f356d1314307..e727723c16dedbc6bb4713b4bd137238884ce0b5 100644 (file)
 
 use std::cmp;
 use std::fmt;
+use std::sync::Arc;
 
 static LOG_LEVEL_NAMES: [&'static str; 6] = ["OFF", "ERROR", "WARN", "INFO", "DEBUG", "TRACE"];
 
 /// An enum representing the available verbosity levels of the logger.
-#[derive(Copy, Clone, Eq, Debug, Hash)]
+#[derive(Copy, Clone, PartialEq, Eq, Debug, Hash)]
 pub enum Level {
        ///Designates logger being silent
        Off,
@@ -36,13 +37,6 @@ pub enum Level {
        Trace,
 }
 
-impl PartialEq for Level {
-       #[inline]
-       fn eq(&self, other: &Level) -> bool {
-               *self as usize == *other as usize
-       }
-}
-
 impl PartialOrd for Level {
        #[inline]
        fn partial_cmp(&self, other: &Level) -> Option<cmp::Ordering> {
@@ -127,6 +121,8 @@ pub trait Logger: Sync + Send {
        fn log(&self, record: &Record);
 }
 
+pub(crate) struct LogHolder<'a> { pub(crate) logger: &'a Arc<Logger> }
+
 #[cfg(test)]
 mod tests {
        use util::logger::{Logger, Level};