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
// ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
// ┃ __ _ ____ ______ ┃
// ┃ ____ / /_ (_)______ __/ __ \/ ____/ ┃
// ┃ / __ \/ __ \/ / ___/ / / / /_/ / / ┃
// ┃ / /_/ / / / / (__ ) /_/ / _, _/ /___ ┃
// ┃ / .___/_/ /_/_/____/\__, /_/ |_|\____/ ┃
// ┃ /_/ /____/ ┃
// ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
// ┃ Copyright: (c) 2023, Mike 'PhiSyX' S. (https://github.com/PhiSyX) ┃
// ┃ SPDX-License-Identifier: MPL-2.0 ┃
// ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃
// ┃ ┃
// ┃ This Source Code Form is subject to the terms of the Mozilla Public ┃
// ┃ License, v. 2.0. If a copy of the MPL was not distributed with this ┃
// ┃ file, You can obtain one at https://mozilla.org/MPL/2.0/. ┃
// ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
pub(crate) mod builder;
pub(crate) mod echo;
pub mod layout;
#[cfg(feature = "serde")]
mod settings;
pub mod stdout;
use std::fmt;
pub use log::*;
#[cfg(feature = "serde")]
pub use self::settings::Settings;
// ---- //
// Type //
// ---- //
pub(crate) type FormatFn =
fn(&mut self::echo::Echo, &fmt::Arguments, &Record) -> String;
pub(crate) type FilterFn = dyn Fn(&log::Metadata) -> bool + Send + Sync;
// --------- //
// Constante //
// --------- //
pub(crate) const NO: NopeLogger = NopeLogger;
// --------- //
// Structure //
// --------- //
pub(crate) struct NopeLogger;
impl Log for NopeLogger {
fn enabled(&self, _: &Metadata) -> bool {
false
}
fn log(&self, _: &Record) {}
fn flush(&self) {}
}