| /// | |
| module std.experimental.logger.nulllogger; | |
| import std.experimental.logger.core; | |
| /** The $(D NullLogger) will not process any log messages. | |
| In case of a log message with $(D LogLevel.fatal) nothing will happen. | |
| */ | |
| class NullLogger : Logger | |
| { | |
| /** The default constructor for the $(D NullLogger). | |
| Independent of the parameter this Logger will never log a message. | |
| Params: | |
| lv = The $(D LogLevel) for the $(D NullLogger). By default the $(D LogLevel) | |
| for $(D NullLogger) is $(D LogLevel.all). | |
| */ | |
| this(const LogLevel lv = LogLevel.all) @safe | |
| { | |
| super(lv); | |
| this.fatalHandler = delegate() {}; | |
| } | |
| override protected void writeLogMsg(ref LogEntry payload) @safe @nogc | |
| { | |
| } | |
| } | |
| /// | |
| @safe unittest | |
| { | |
| import std.experimental.logger.nulllogger : LogLevel; | |
| auto nl1 = new NullLogger(LogLevel.all); | |
| nl1.info("You will never read this."); | |
| nl1.fatal("You will never read this, either and it will not throw"); | |
| } |