/** * This module defines the `LoggerFactory`, a component that's part of a * LoggingProvider's implementation, and produces `Logger` instances to use at * runtime. */ module slf4d.factory; import slf4d.logger : Logger; /** * A factory that initializes a `Logger` wherever it's needed. Generally a * single factory is needed for your application, and this factory will take * any implementation-specific options into account when building the logger. */ interface LoggerFactory { /** * Gets a logger. * Params: * name = The name associated with the logger. This will default to the * current module name, which is sufficient for most use cases. */ Logger getLogger(string name = __MODULE__) shared; }