public static HarshObjectMetadataException ObjectMetadata(this HarshLoggerFatal logger, String format, params Object[] args)
        {
            if (logger == null)
            {
                throw SelfLog.Fatal.ArgumentNull(nameof(logger));
            }

            return(logger.Write(
                       new HarshObjectMetadataException(
                           HarshLoggerWrapper.FormatCurrentCulture(format, args)
                           )
                       ));
        }
        public static ParameterValidationException ParameterValidationFormat(this HarshLoggerError logger, Parameter parameter, String format, params Object[] args)
        {
            if (logger == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(logger));
            }

            if (parameter == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(parameter));
            }

            return(logger.Write(
                       LogEventLevel.Error,
                       new ParameterValidationException(
                           parameter.Name,
                           HarshLoggerWrapper.FormatCurrentCulture(format, args)
                           )
                       ));
        }