define2<T1, T2> static method

void Function(Logger, T1, T2, Exception?) define2<T1, T2>(
  1. LogLevel logLevel,
  2. EventId eventId,
  3. String formatString, {
  4. LogDefineOptions? options,
})

Defines a log message with two parameters.

Implementation

static void Function(Logger, T1, T2, Exception?) define2<T1, T2>(
  LogLevel logLevel,
  EventId eventId,
  String formatString, {
  LogDefineOptions? options,
}) {
  final skipCheck = options?.skipEnabledCheck ?? false;

  return (logger, arg1, arg2, exception) {
    if (skipCheck || logger.isEnabled(logLevel)) {
      logger.log(
        logLevel: logLevel,
        eventId: eventId,
        state: (arg1, arg2),
        error: exception,
        formatter: (state, error) => formatString
            .replaceAll('{0}', state.$1.toString())
            .replaceAll('{1}', state.$2.toString()),
      );
    }
  };
}