delayed static method

DriftConnection delayed(
  1. Future<DriftConnection> open(), {
  2. required DriftDialectFactory dialect,
})

A drift connection referring to another DriftConnection lazily when opening.

Implementation

static DriftConnection delayed(
  Future<DriftConnection> Function() open, {
  required DriftDialectFactory dialect,
}) {
  return DriftConnection.withImplementation(
    dialect: dialect,
    implementation: (dialect) async {
      final session = await open();
      final opened = await session.open(dialect);
      return opened;
    },
  );
}