Migrate schema verification apis to null-safety

This commit is contained in:
Simon Binder 2021-03-09 21:37:39 +01:00
parent 8c7679568c
commit f943576f5d
No known key found for this signature in database
GPG Key ID: 7891917E4147B8C0
5 changed files with 13 additions and 16 deletions

View File

@ -1,3 +1,7 @@
## 4.2.0-dev
- Migrate `package:moor_generator/api/migrations.dart` to null-safety
## 4.1.0 ## 4.1.0
- Stabilized support for generating null-safe code - Stabilized support for generating null-safe code

View File

@ -1,4 +1,3 @@
//@dart=2.9
import 'package:moor/moor.dart'; import 'package:moor/moor.dart';
import 'package:moor_generator/src/services/schema/verifier_impl.dart'; import 'package:moor_generator/src/services/schema/verifier_impl.dart';

View File

@ -1,4 +1,3 @@
//@dart=2.9
import 'package:sqlparser/sqlparser.dart'; import 'package:sqlparser/sqlparser.dart';
class MoorFfiExtension implements Extension { class MoorFfiExtension implements Extension {
@ -29,7 +28,7 @@ class _MoorFfiFunctions with ArgumentCountLinter implements FunctionHandler {
} }
@override @override
int argumentCountFor(String function) { int? argumentCountFor(String function) {
if (_unaryFunctions.contains(function)) { if (_unaryFunctions.contains(function)) {
return 1; return 1;
} else if (function == 'pow') { } else if (function == 'pow') {
@ -37,8 +36,6 @@ class _MoorFfiFunctions with ArgumentCountLinter implements FunctionHandler {
} else if (function == 'current_time_millis') { } else if (function == 'current_time_millis') {
return 0; return 0;
} }
// ignore: avoid_returning_null
return null;
} }
@override @override

View File

@ -1,5 +1,3 @@
//@dart=2.9
import 'package:meta/meta.dart';
import 'package:moor_generator/src/analyzer/moor/moor_ffi_extension.dart'; import 'package:moor_generator/src/analyzer/moor/moor_ffi_extension.dart';
import 'package:sqlparser/sqlparser.dart'; import 'package:sqlparser/sqlparser.dart';
// ignore: implementation_imports // ignore: implementation_imports
@ -48,10 +46,10 @@ class FindSchemaDifferences {
} }
CompareResult _compareNamed<T>({ CompareResult _compareNamed<T>({
@required List<T> reference, required List<T> reference,
@required List<T> actual, required List<T> actual,
@required String Function(T) name, required String Function(T) name,
@required CompareResult Function(T, T) compare, required CompareResult Function(T, T) compare,
bool validateActualInReference = true, bool validateActualInReference = true,
}) { }) {
final results = <String, CompareResult>{}; final results = <String, CompareResult>{};
@ -69,8 +67,8 @@ class FindSchemaDifferences {
results['comparing $inReference'] = FoundDifference( results['comparing $inReference'] = FoundDifference(
'The actual schema does not contain anything with this name.'); 'The actual schema does not contain anything with this name.');
} else { } else {
referenceToActual[referenceByName[inReference]] = referenceToActual[referenceByName[inReference]!] =
actualByName[inReference]; actualByName[inReference]!;
} }
} }
@ -188,7 +186,7 @@ class FindSchemaDifferences {
return const Success(); return const Success();
} catch (e) { } catch (e) {
return FoundDifference( return FoundDifference(
'Not equal: `${a.span.text}` and `${b.span.text}`'); 'Not equal: `${a.span?.text}` and `${b.span?.text}`');
} }
} }

View File

@ -1,4 +1,3 @@
//@dart=2.9
import 'dart:math'; import 'dart:math';
import 'package:moor/ffi.dart'; import 'package:moor/ffi.dart';
@ -98,7 +97,7 @@ extension on QueryExecutor {
class _DelegatingUser extends QueryExecutorUser { class _DelegatingUser extends QueryExecutorUser {
@override @override
final int schemaVersion; final int schemaVersion;
final QueryExecutorUser inner; final QueryExecutorUser? inner;
_DelegatingUser(this.schemaVersion, [this.inner]); _DelegatingUser(this.schemaVersion, [this.inner]);