diff --git a/lib/src/generator/resource_loader.dart b/lib/src/generator/resource_loader.dart index aa5a53b4e3..b4f77842d3 100644 --- a/lib/src/generator/resource_loader.dart +++ b/lib/src/generator/resource_loader.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - /// Make it possible to load resources from the dartdoc code repository. library dartdoc.resource_loader; diff --git a/lib/src/generator/template_data.dart b/lib/src/generator/template_data.dart index 69ac0022a0..7f900571eb 100644 --- a/lib/src/generator/template_data.dart +++ b/lib/src/generator/template_data.dart @@ -2,8 +2,7 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - +import 'package:collection/collection.dart'; import 'package:dartdoc/src/model/model.dart'; typedef ContainerSidebar = String Function( @@ -31,7 +30,7 @@ abstract class TemplateData { List get navLinks; List get navLinksWithGenerics => []; - Documentable get parent { + Documentable? get parent { if (navLinksWithGenerics.isEmpty) { return navLinks.isNotEmpty ? navLinks.last : null; } @@ -42,7 +41,7 @@ abstract class TemplateData { bool get hasHomepage => false; - String get homepage => null; + String? get homepage => null; String get htmlBase; T get self; @@ -212,10 +211,10 @@ class ClassTemplateData extends InheritingContainerTemplateData { abstract class InheritingContainerTemplateData extends TemplateData implements TemplateDataWithLibrary, TemplateDataWithContainer { - final InheritingContainer clazz; + final T clazz; @override final Library library; - Class _objectType; + Class? _objectType; final LibrarySidebar _sidebarForLibrary; final ContainerSidebar _sidebarForContainer; @@ -236,8 +235,7 @@ abstract class InheritingContainerTemplateData @override T get self => clazz; - String get linkedObjectType => - objectType == null ? 'Object' : objectType.linkedName; + String get linkedObjectType => objectType?.linkedName ?? 'Object'; @override String get title => '${clazz.name} ${clazz.kind} - ${library.name} library - Dart API'; @@ -254,13 +252,13 @@ abstract class InheritingContainerTemplateData @override String get htmlBase => '../'; - Class get objectType { + Class? get objectType { if (_objectType != null) { - return _objectType; + return _objectType!; } var dc = _packageGraph.libraries - .firstWhere((it) => it.name == 'dart:core', orElse: () => null); + .firstWhereOrNull((it) => it.name == 'dart:core'); return _objectType = dc?.getClassByName('Object'); } diff --git a/lib/src/package_config_provider.dart b/lib/src/package_config_provider.dart index 61a0a50116..194293506e 100644 --- a/lib/src/package_config_provider.dart +++ b/lib/src/package_config_provider.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - import 'dart:io' as io; import 'package:analyzer/file_system/file_system.dart'; @@ -14,12 +12,12 @@ import 'package:package_config/package_config.dart' as package_config; /// This provides an abstraction around package_config, which can only work /// with the physical file system. abstract class PackageConfigProvider { - Future findPackageConfig(Folder dir); + Future findPackageConfig(Folder dir); } class PhysicalPackageConfigProvider implements PackageConfigProvider { @override - Future findPackageConfig(Folder dir) => + Future findPackageConfig(Folder dir) => package_config.findPackageConfig(io.Directory(dir.path)); } @@ -35,8 +33,9 @@ class FakePackageConfigProvider implements PackageConfigProvider { @override Future findPackageConfig(Folder dir) async { - assert(_packageConfigData[dir.path] != null, + var packageConfig = _packageConfigData[dir.path]; + assert(packageConfig != null, 'Package config data at ${dir.path} should not be null'); - return package_config.PackageConfig(_packageConfigData[dir.path]); + return package_config.PackageConfig(packageConfig!); } } diff --git a/lib/src/quiver.dart b/lib/src/quiver.dart index 4e79c2883d..dd36843303 100644 --- a/lib/src/quiver.dart +++ b/lib/src/quiver.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - /// Methods in-lined from package:quiver. // From lib/iterables.dart: diff --git a/lib/src/tuple.dart b/lib/src/tuple.dart index a0655e03b8..e4e1dfe926 100644 --- a/lib/src/tuple.dart +++ b/lib/src/tuple.dart @@ -1,7 +1,5 @@ // Copied from source at github.com/kseo/tuple/blob/470ed3aeb/lib/src/tuple.dart -// @dart=2.9 - // Original copyright: // Copyright (c) 2014, the tuple project authors. Please see the AUTHORS // file for details. All rights reserved. Use of this source code is governed