run<T extends Object> static method

Future<Result<T>> run<T extends Object>(
  1. String operation,
  2. Future<Result<T>> action()
)

Implementation

static Future<Result<T>> run<T extends Object>(
  String operation,
  Future<Result<T>> Function() action,
) async {
  try {
    final result = await action();
    if (result.isSuccess()) return result;
    return Failure(
      normalizeOdbcError(result.exceptionOrNull()!, operation: operation),
    );
  } on Object catch (error, stackTrace) {
    return Failure(
      normalizeOdbcError(
        error,
        operation: operation,
        stackTrace: stackTrace,
      ),
    );
  }
}