enable lint prefer_final_in_for_each (#47724)
diff --git a/packages/flutter_tools/lib/src/android/android_builder.dart b/packages/flutter_tools/lib/src/android/android_builder.dart
index 17b5d5d..40ddbd6 100644
--- a/packages/flutter_tools/lib/src/android/android_builder.dart
+++ b/packages/flutter_tools/lib/src/android/android_builder.dart
@@ -68,7 +68,7 @@
// Module projects artifacts are located in `build/host`.
outputDirectory = outputDirectory.childDirectory('host');
}
- for (AndroidBuildInfo androidBuildInfo in androidBuildInfo) {
+ for (final AndroidBuildInfo androidBuildInfo in androidBuildInfo) {
await buildGradleAar(
project: project,
androidBuildInfo: androidBuildInfo,
diff --git a/packages/flutter_tools/lib/src/android/android_device.dart b/packages/flutter_tools/lib/src/android/android_device.dart
index 3b8d6b5..384e3b0 100644
--- a/packages/flutter_tools/lib/src/android/android_device.dart
+++ b/packages/flutter_tools/lib/src/android/android_device.dart
@@ -732,7 +732,7 @@
Map<String, String> parseAdbDeviceProperties(String str) {
final Map<String, String> properties = <String, String>{};
final RegExp propertyExp = RegExp(r'\[(.*?)\]: \[(.*?)\]');
- for (Match match in propertyExp.allMatches(str)) {
+ for (final Match match in propertyExp.allMatches(str)) {
properties[match.group(1)] = match.group(2);
}
return properties;
@@ -932,7 +932,7 @@
return;
}
- for (String line in text.trim().split('\n')) {
+ for (final String line in text.trim().split('\n')) {
// Skip lines like: * daemon started successfully *
if (line.startsWith('* daemon ')) {
continue;
@@ -958,7 +958,7 @@
final Map<String, String> info = <String, String>{};
if (rest != null && rest.isNotEmpty) {
rest = rest.trim();
- for (String data in rest.split(' ')) {
+ for (final String data in rest.split(' ')) {
if (data.contains(':')) {
final List<String> fields = data.split(':');
info[fields[0]] = fields[1];
@@ -1165,7 +1165,7 @@
}
final List<String> lines = LineSplitter.split(stdout).toList();
- for (String line in lines) {
+ for (final String line in lines) {
if (!line.startsWith(device.id)) {
continue;
}
@@ -1260,7 +1260,7 @@
@override
Future<void> dispose() async {
- for (ForwardedPort port in forwardedPorts) {
+ for (final ForwardedPort port in forwardedPorts) {
await unforward(port);
}
}
diff --git a/packages/flutter_tools/lib/src/android/android_emulator.dart b/packages/flutter_tools/lib/src/android/android_emulator.dart
index 5a7a04e..b7c0557 100644
--- a/packages/flutter_tools/lib/src/android/android_emulator.dart
+++ b/packages/flutter_tools/lib/src/android/android_emulator.dart
@@ -85,7 +85,7 @@
/// Parse the given `emulator -list-avds` output in [text], and fill out the given list
/// of emulators by reading information from the relevant ini files.
void extractEmulatorAvdInfo(String text, List<AndroidEmulator> emulators) {
- for (String id in text.trim().split('\n').where((String l) => l != '')) {
+ for (final String id in text.trim().split('\n').where((String l) => l != '')) {
emulators.add(_loadEmulatorInfo(id));
}
}
@@ -125,7 +125,7 @@
// Split into name/value
.map<List<String>>((String l) => l.split('='));
- for (List<String> property in properties) {
+ for (final List<String> property in properties) {
results[property[0].trim()] = property[1].trim();
}
diff --git a/packages/flutter_tools/lib/src/android/android_sdk.dart b/packages/flutter_tools/lib/src/android/android_sdk.dart
index 7c4ab74..50fc605 100644
--- a/packages/flutter_tools/lib/src/android/android_sdk.dart
+++ b/packages/flutter_tools/lib/src/android/android_sdk.dart
@@ -215,7 +215,7 @@
.map<String>((String line) => line.trim())
.where((String line) => line.isNotEmpty);
final Map<String, String> properties = <String, String>{};
- for (String line in propertiesFileLines) {
+ for (final String line in propertiesFileLines) {
final List<String> parts = line.split(' = ');
if (parts.length == 2) {
properties[parts[0]] = parts[1];
diff --git a/packages/flutter_tools/lib/src/android/android_studio.dart b/packages/flutter_tools/lib/src/android/android_studio.dart
index 32014e2..f7ebfb4 100644
--- a/packages/flutter_tools/lib/src/android/android_studio.dart
+++ b/packages/flutter_tools/lib/src/android/android_studio.dart
@@ -183,7 +183,7 @@
.directory(path)
.listSync(followLinks: false)
.whereType<Directory>();
- for (Directory directory in directories) {
+ for (final Directory directory in directories) {
final String name = directory.basename;
// An exact match, or something like 'Android Studio 3.0 Preview.app'.
if (name.startsWith('Android Studio') && name.endsWith('.app')) {
@@ -236,7 +236,7 @@
// Read all $HOME/.AndroidStudio*/system/.home files. There may be several
// pointing to the same installation, so we grab only the latest one.
if (homeDirPath != null && globals.fs.directory(homeDirPath).existsSync()) {
- for (FileSystemEntity entity in globals.fs.directory(homeDirPath).listSync(followLinks: false)) {
+ for (final FileSystemEntity entity in globals.fs.directory(homeDirPath).listSync(followLinks: false)) {
if (entity is Directory && entity.basename.startsWith('.AndroidStudio')) {
final AndroidStudio studio = AndroidStudio.fromHomeDot(entity);
if (studio != null && !_hasStudioAt(studio.directory, newerThan: studio.version)) {
diff --git a/packages/flutter_tools/lib/src/android/gradle.dart b/packages/flutter_tools/lib/src/android/gradle.dart
index 676599a..82364a1 100644
--- a/packages/flutter_tools/lib/src/android/gradle.dart
+++ b/packages/flutter_tools/lib/src/android/gradle.dart
@@ -116,7 +116,7 @@
if (!appGradle.existsSync()) {
return false;
}
- for (String line in appGradle.readAsLinesSync()) {
+ for (final String line in appGradle.readAsLinesSync()) {
if (line.contains(RegExp(r'apply from: .*/flutter.gradle')) ||
line.contains("def flutterPluginVersion = 'managed'")) {
return true;
@@ -184,7 +184,7 @@
existingVariants.add(settingsAarContent);
bool exactMatch = false;
- for (String fileContentVariant in existingVariants) {
+ for (final String fileContentVariant in existingVariants) {
if (currentFileContent.trim() == fileContentVariant.trim()) {
exactMatch = true;
break;
@@ -465,7 +465,7 @@
final File apkShaFile = apkDirectory.childFile('app.apk.sha1');
apkShaFile.writeAsStringSync(_calculateSha(apkFiles.first));
- for (File apkFile in apkFiles) {
+ for (final File apkFile in apkFiles) {
final String appSize = (buildInfo.mode == BuildMode.debug)
? '' // Don't display the size when building a debug variant.
: ' (${getSizeAsMB(apkFile.lengthSync())})';
@@ -618,7 +618,7 @@
dependencies {''');
- for (String buildMode in buildModes) {
+ for (final String buildMode in buildModes) {
globals.printStatus('''
${buildMode}Implementation '$androidPackage:flutter_$buildMode:$buildNumber''');
}
@@ -647,7 +647,7 @@
String _hex(List<int> bytes) {
final StringBuffer result = StringBuffer();
- for (int part in bytes) {
+ for (final int part in bytes) {
result.write('${part < 16 ? '0' : ''}${part.toRadixString(16)}');
}
return result.toString();
@@ -707,7 +707,7 @@
return;
}
final List<String> plugins = flutterPluginFile.readAsStringSync().split('\n');
- for (String plugin in plugins) {
+ for (final String plugin in plugins) {
final List<String> pluginParts = plugin.split('=');
if (pluginParts.length != 2) {
continue;
@@ -882,7 +882,7 @@
}
final Iterable<xml.XmlElement> project = document.findElements('project');
assert(project.isNotEmpty);
- for (xml.XmlElement versionElement in document.findAllElements('version')) {
+ for (final xml.XmlElement versionElement in document.findAllElements('version')) {
if (versionElement.parent == project.first) {
return versionElement.text;
}
@@ -919,7 +919,7 @@
'flutter_embedding_$buildMode.pom',
)
);
- for (String artifact in const <String>['pom', 'jar']) {
+ for (final String artifact in const <String>['pom', 'jar']) {
// The Android embedding artifacts.
_createSymlink(
globals.fs.path.join(
diff --git a/packages/flutter_tools/lib/src/android/gradle_errors.dart b/packages/flutter_tools/lib/src/android/gradle_errors.dart
index be2c00a..9d5e63b 100644
--- a/packages/flutter_tools/lib/src/android/gradle_errors.dart
+++ b/packages/flutter_tools/lib/src/android/gradle_errors.dart
@@ -283,7 +283,7 @@
);
// Extract build types and product flavors.
final Set<String> variants = <String>{};
- for (String task in tasksRunResult.stdout.split('\n')) {
+ for (final String task in tasksRunResult.stdout.split('\n')) {
final Match match = _assembleTaskPattern.matchAsPrefix(task);
if (match != null) {
final String variant = match.group(1).toLowerCase();
diff --git a/packages/flutter_tools/lib/src/aot.dart b/packages/flutter_tools/lib/src/aot.dart
index bbf4c0e..976eb09 100644
--- a/packages/flutter_tools/lib/src/aot.dart
+++ b/packages/flutter_tools/lib/src/aot.dart
@@ -89,7 +89,7 @@
if (platform == TargetPlatform.ios) {
// Determine which iOS architectures to build for.
final Map<DarwinArch, String> iosBuilds = <DarwinArch, String>{};
- for (DarwinArch arch in iosBuildArchs) {
+ for (final DarwinArch arch in iosBuildArchs) {
iosBuilds[arch] = globals.fs.path.join(outputPath, getNameForDarwinArch(arch));
}
@@ -224,7 +224,7 @@
));
status?.stop();
if (!result.success) {
- for (ExceptionMeasurement measurement in result.exceptions.values) {
+ for (final ExceptionMeasurement measurement in result.exceptions.values) {
globals.printError('Target ${measurement.target} failed: ${measurement.exception}',
stackTrace: measurement.fatal
? measurement.stackTrace
diff --git a/packages/flutter_tools/lib/src/application_package.dart b/packages/flutter_tools/lib/src/application_package.dart
index 27625a3..034f02d 100644
--- a/packages/flutter_tools/lib/src/application_package.dart
+++ b/packages/flutter_tools/lib/src/application_package.dart
@@ -213,16 +213,16 @@
final String packageId = manifests.first.getAttribute('package');
String launchActivity;
- for (xml.XmlElement activity in document.findAllElements('activity')) {
+ for (final xml.XmlElement activity in document.findAllElements('activity')) {
final String enabled = activity.getAttribute('android:enabled');
if (enabled != null && enabled == 'false') {
continue;
}
- for (xml.XmlElement element in activity.findElements('intent-filter')) {
+ for (final xml.XmlElement element in activity.findElements('intent-filter')) {
String actionName = '';
String categoryName = '';
- for (xml.XmlNode node in element.children) {
+ for (final xml.XmlNode node in element.children) {
if (node is! xml.XmlElement) {
continue;
}
@@ -511,7 +511,7 @@
static bool isAttributeWithValuePresent(_Element baseElement,
String childElement, String attributeName, String attributeValue) {
final Iterable<_Element> allElements = baseElement.allElements(childElement);
- for (_Element oneElement in allElements) {
+ for (final _Element oneElement in allElements) {
final String elementAttributeValue = oneElement
?.firstAttribute(attributeName)
?.value;
@@ -535,7 +535,7 @@
final _Element manifest = _Element.fromLine(lines[manifestLine], null);
_Element currentElement = manifest;
- for (String line in lines.skip(manifestLine)) {
+ for (final String line in lines.skip(manifestLine)) {
final String trimLine = line.trimLeft();
final int level = line.length - trimLine.length;
@@ -564,7 +564,7 @@
final Iterable<_Element> activities = application.allElements('activity');
_Element launchActivity;
- for (_Element activity in activities) {
+ for (final _Element activity in activities) {
final _Attribute enabled = activity.firstAttribute('android:enabled');
final Iterable<_Element> intentFilters = activity.allElements('intent-filter');
final bool isEnabledByDefault = enabled == null;
@@ -573,7 +573,7 @@
continue;
}
- for (_Element element in intentFilters) {
+ for (final _Element element in intentFilters) {
final bool isMainAction = isAttributeWithValuePresent(
element, 'action', 'android:name', '"android.intent.action.MAIN"');
if (!isMainAction) {
diff --git a/packages/flutter_tools/lib/src/artifacts.dart b/packages/flutter_tools/lib/src/artifacts.dart
index 60f6ef6..e9d7c46 100644
--- a/packages/flutter_tools/lib/src/artifacts.dart
+++ b/packages/flutter_tools/lib/src/artifacts.dart
@@ -509,7 +509,7 @@
String _genSnapshotPath() {
const List<String> clangDirs = <String>['.', 'clang_x64', 'clang_x86', 'clang_i386'];
final String genSnapshotName = _artifactToFileName(Artifact.genSnapshot);
- for (String clangDir in clangDirs) {
+ for (final String clangDir in clangDirs) {
final String genSnapshotPath = globals.fs.path.join(engineOutPath, clangDir, genSnapshotName);
if (globals.processManager.canRun(genSnapshotPath)) {
return genSnapshotPath;
diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
index 3c151c9..d1a4706 100644
--- a/packages/flutter_tools/lib/src/asset.dart
+++ b/packages/flutter_tools/lib/src/asset.dart
@@ -89,11 +89,11 @@
return true;
}
- for (Directory directory in _wildcardDirectories.values) {
+ for (final Directory directory in _wildcardDirectories.values) {
if (!directory.existsSync()) {
return true; // directory was deleted.
}
- for (File file in directory.listSync().whereType<File>()) {
+ for (final File file in directory.listSync().whereType<File>()) {
final DateTime dateTime = file.statSync().modified;
if (dateTime == null) {
continue;
@@ -166,7 +166,7 @@
);
// Add fonts and assets from packages.
- for (String packageName in packageMap.map.keys) {
+ for (final String packageName in packageMap.map.keys) {
final Uri package = packageMap.map[packageName];
if (package != null && package.scheme == 'file') {
final String packageManifestPath = globals.fs.path.fromUri(package.resolve('../pubspec.yaml'));
@@ -204,7 +204,7 @@
// Save the contents of each image, image variant, and font
// asset in entries.
- for (_Asset asset in assetVariants.keys) {
+ for (final _Asset asset in assetVariants.keys) {
if (!asset.assetFileExists && assetVariants[asset].isEmpty) {
globals.printStatus('Error detected in pubspec.yaml:', emphasis: true);
globals.printError('No file or variants found for $asset.\n');
@@ -220,7 +220,7 @@
assert(!assetVariants[asset].contains(asset));
assetVariants[asset].insert(0, asset);
}
- for (_Asset variant in assetVariants[asset]) {
+ for (final _Asset variant in assetVariants[asset]) {
assert(variant.assetFileExists);
entries[variant.entryUri.path] ??= DevFSFileContent(variant.assetFile);
}
@@ -230,13 +230,13 @@
if (flutterManifest.usesMaterialDesign && includeDefaultFonts)
..._getMaterialAssets(_fontSetMaterial),
];
- for (_Asset asset in materialAssets) {
+ for (final _Asset asset in materialAssets) {
assert(asset.assetFileExists);
entries[asset.entryUri.path] ??= DevFSFileContent(asset.assetFile);
}
// Update wildcard directories we we can detect changes in them.
- for (Uri uri in wildcardDirectories) {
+ for (final Uri uri in wildcardDirectories) {
_wildcardDirectories[uri] ??= globals.fs.directory(uri);
}
@@ -321,8 +321,8 @@
List<_Asset> _getMaterialAssets(String fontSet) {
final List<_Asset> result = <_Asset>[];
- for (Map<String, dynamic> family in _getMaterialFonts(fontSet)) {
- for (Map<dynamic, dynamic> font in family['fonts']) {
+ for (final Map<String, dynamic> family in _getMaterialFonts(fontSet)) {
+ for (final Map<dynamic, dynamic> font in family['fonts']) {
final Uri entryUri = globals.fs.path.toUri(font['asset'] as String);
result.add(_Asset(
baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
@@ -358,7 +358,7 @@
// sources, and might need to include a license for each one.)
final Map<String, Set<String>> packageLicenses = <String, Set<String>>{};
final Set<String> allPackages = <String>{};
- for (String packageName in packageMap.map.keys) {
+ for (final String packageName in packageMap.map.keys) {
final Uri package = packageMap.map[packageName];
if (package == null || package.scheme != 'file') {
continue;
@@ -369,7 +369,7 @@
}
final List<String> rawLicenses =
file.readAsStringSync().split(_licenseSeparator);
- for (String rawLicense in rawLicenses) {
+ for (final String rawLicense in rawLicenses) {
List<String> packageNames;
String licenseText;
if (rawLicenses.length > 1) {
@@ -421,9 +421,9 @@
.keys.toList()
..sort(_byBasename);
- for (_Asset main in sortedKeys) {
+ for (final _Asset main in sortedKeys) {
jsonObject[main.entryUri.path] = <String>[
- for (_Asset variant in assetVariants[main])
+ for (final _Asset variant in assetVariants[main])
variant.entryUri.path,
];
}
@@ -458,9 +458,9 @@
PackageMap packageMap,
) {
final List<Font> packageFonts = <Font>[];
- for (Font font in manifest.fonts) {
+ for (final Font font in manifest.fonts) {
final List<FontAsset> packageFontAssets = <FontAsset>[];
- for (FontAsset fontAsset in font.fontAssets) {
+ for (final FontAsset fontAsset in font.fontAssets) {
final Uri assetUri = fontAsset.assetUri;
if (assetUri.pathSegments.first == 'packages' &&
!globals.fs.isFileSync(globals.fs.path.fromUri(packageMap.map[packageName].resolve('../${assetUri.path}')))) {
@@ -513,7 +513,7 @@
if (_cache[directory] == null) {
final List<String> paths = <String>[];
- for (FileSystemEntity entity in globals.fs.directory(directory).listSync(recursive: true)) {
+ for (final FileSystemEntity entity in globals.fs.directory(directory).listSync(recursive: true)) {
final String path = entity.path;
if (globals.fs.isFileSync(path) && !_excluded.any((String exclude) => path.startsWith(exclude))) {
paths.add(path);
@@ -521,7 +521,7 @@
}
final Map<String, List<String>> variants = <String, List<String>>{};
- for (String path in paths) {
+ for (final String path in paths) {
final String variantName = globals.fs.path.basename(path);
if (directory == globals.fs.path.dirname(path)) {
continue;
@@ -572,7 +572,7 @@
final Map<_Asset, List<_Asset>> result = <_Asset, List<_Asset>>{};
final _AssetDirectoryCache cache = _AssetDirectoryCache(excludeDirs);
- for (Uri assetUri in flutterManifest.assets) {
+ for (final Uri assetUri in flutterManifest.assets) {
if (assetUri.toString().endsWith('/')) {
wildcardDirectories.add(assetUri);
_parseAssetsFromFolder(packageMap, flutterManifest, assetBase,
@@ -586,8 +586,8 @@
}
// Add assets referenced in the fonts section of the manifest.
- for (Font font in flutterManifest.fonts) {
- for (FontAsset fontAsset in font.fontAssets) {
+ for (final Font font in flutterManifest.fonts) {
+ for (final FontAsset fontAsset in font.fontAssets) {
final _Asset baseAsset = _resolveAsset(
packageMap,
assetBase,
@@ -626,7 +626,7 @@
final List<FileSystemEntity> lister = globals.fs.directory(directoryPath).listSync();
- for (FileSystemEntity entity in lister) {
+ for (final FileSystemEntity entity in lister) {
if (entity is File) {
final String relativePath = globals.fs.path.relative(entity.path, from: assetBase);
@@ -655,7 +655,7 @@
packageName,
);
final List<_Asset> variants = <_Asset>[];
- for (String path in cache.variantsFor(asset.assetFile.path)) {
+ for (final String path in cache.variantsFor(asset.assetFile.path)) {
final String relativePath = globals.fs.path.relative(path, from: asset.baseDir);
final Uri relativeUri = globals.fs.path.toUri(relativePath);
final Uri entryUri = asset.symbolicPrefixUri == null
diff --git a/packages/flutter_tools/lib/src/base/build.dart b/packages/flutter_tools/lib/src/base/build.dart
index 9d5c8fc..15e7bc9 100644
--- a/packages/flutter_tools/lib/src/base/build.dart
+++ b/packages/flutter_tools/lib/src/base/build.dart
@@ -185,7 +185,7 @@
final bool stripSymbols = platform == TargetPlatform.ios && buildMode == BuildMode.release && bitcode;
if (stripSymbols) {
final IOSink sink = globals.fs.file('$assembly.stripped.S').openWrite();
- for (String line in globals.fs.file(assembly).readAsLinesSync()) {
+ for (final String line in globals.fs.file(assembly).readAsLinesSync()) {
if (line.startsWith('.section __DWARF')) {
break;
}
diff --git a/packages/flutter_tools/lib/src/base/file_system.dart b/packages/flutter_tools/lib/src/base/file_system.dart
index 4100d77..6e3ccce 100644
--- a/packages/flutter_tools/lib/src/base/file_system.dart
+++ b/packages/flutter_tools/lib/src/base/file_system.dart
@@ -42,7 +42,7 @@
destDir.createSync(recursive: true);
}
- for (FileSystemEntity entity in srcDir.listSync()) {
+ for (final FileSystemEntity entity in srcDir.listSync()) {
final String newPath = destDir.fileSystem.path.join(destDir.path, entity.basename);
if (entity is File) {
final File newFile = destDir.fileSystem.file(newPath);
diff --git a/packages/flutter_tools/lib/src/base/fingerprint.dart b/packages/flutter_tools/lib/src/base/fingerprint.dart
index 5fc0b2f..9ef80c7 100644
--- a/packages/flutter_tools/lib/src/base/fingerprint.dart
+++ b/packages/flutter_tools/lib/src/base/fingerprint.dart
@@ -87,7 +87,7 @@
List<String> _getPaths() {
final Set<String> paths = <String>{
..._paths,
- for (String depfilePath in _depfilePaths)
+ for (final String depfilePath in _depfilePaths)
...readDepfile(depfilePath),
};
final FingerprintPathFilter filter = _pathFilter ?? (String path) => true;
@@ -108,7 +108,7 @@
}
_checksums = <String, String>{};
- for (File file in files) {
+ for (final File file in files) {
final List<int> bytes = file.readAsBytesSync();
_checksums[file.path] = md5.convert(bytes).toString();
}
diff --git a/packages/flutter_tools/lib/src/base/net.dart b/packages/flutter_tools/lib/src/base/net.dart
index 150e1a1..38fa19c 100644
--- a/packages/flutter_tools/lib/src/base/net.dart
+++ b/packages/flutter_tools/lib/src/base/net.dart
@@ -187,7 +187,7 @@
@override
void writeAll(Iterable<dynamic> objects, [ String separator = '' ]) {
bool addSeparator = false;
- for (dynamic object in objects) {
+ for (final dynamic object in objects) {
if (addSeparator) {
write(separator);
}
diff --git a/packages/flutter_tools/lib/src/base/os.dart b/packages/flutter_tools/lib/src/base/os.dart
index f07c758..b0cd1d4 100644
--- a/packages/flutter_tools/lib/src/base/os.dart
+++ b/packages/flutter_tools/lib/src/base/os.dart
@@ -248,7 +248,7 @@
@override
void zip(Directory data, File zipFile) {
final Archive archive = Archive();
- for (FileSystemEntity entity in data.listSync(recursive: true)) {
+ for (final FileSystemEntity entity in data.listSync(recursive: true)) {
if (entity is! File) {
continue;
}
@@ -299,7 +299,7 @@
}
void _unpackArchive(Archive archive, Directory targetDirectory) {
- for (ArchiveFile archiveFile in archive.files) {
+ for (final ArchiveFile archiveFile in archive.files) {
// The archive package doesn't correctly set isFile.
if (!archiveFile.isFile || archiveFile.name.endsWith('/')) {
continue;
diff --git a/packages/flutter_tools/lib/src/base/process.dart b/packages/flutter_tools/lib/src/base/process.dart
index e2e6128..fb634e8 100644
--- a/packages/flutter_tools/lib/src/base/process.dart
+++ b/packages/flutter_tools/lib/src/base/process.dart
@@ -78,11 +78,11 @@
globals.printTrace('Running shutdown hooks');
_shutdownHooksRunning = true;
try {
- for (ShutdownStage stage in _shutdownHooks.keys.toList()..sort()) {
+ for (final ShutdownStage stage in _shutdownHooks.keys.toList()..sort()) {
globals.printTrace('Shutdown hook priority ${stage.priority}');
final List<ShutdownHook> hooks = _shutdownHooks.remove(stage);
final List<Future<dynamic>> futures = <Future<dynamic>>[];
- for (ShutdownHook shutdownHook in hooks) {
+ for (final ShutdownHook shutdownHook in hooks) {
final FutureOr<dynamic> result = shutdownHook();
if (result is Future<dynamic>) {
futures.add(result);
diff --git a/packages/flutter_tools/lib/src/base/signals.dart b/packages/flutter_tools/lib/src/base/signals.dart
index 3899d4f..28b9e67 100644
--- a/packages/flutter_tools/lib/src/base/signals.dart
+++ b/packages/flutter_tools/lib/src/base/signals.dart
@@ -114,7 +114,7 @@
}
Future<void> _handleSignal(ProcessSignal s) async {
- for (SignalHandler handler in _handlersList[s]) {
+ for (final SignalHandler handler in _handlersList[s]) {
try {
await asyncGuard<void>(() async => handler(s));
} catch (e) {
diff --git a/packages/flutter_tools/lib/src/base/utils.dart b/packages/flutter_tools/lib/src/base/utils.dart
index 0cfcc72..b246d10 100644
--- a/packages/flutter_tools/lib/src/base/utils.dart
+++ b/packages/flutter_tools/lib/src/base/utils.dart
@@ -319,7 +319,7 @@
hangingIndent ??= 0;
final List<String> splitText = text.split('\n');
final List<String> result = <String>[];
- for (String line in splitText) {
+ for (final String line in splitText) {
String trimmedText = line.trimLeft();
final String leadingWhitespace = line.substring(0, line.length - trimmedText.length);
List<String> notIndented;
@@ -433,7 +433,7 @@
final RegExp characterOrCode = RegExp('(\u001b\[[0-9;]*m|.)', multiLine: true);
List<_AnsiRun> result = <_AnsiRun>[];
final StringBuffer current = StringBuffer();
- for (Match match in characterOrCode.allMatches(input)) {
+ for (final Match match in characterOrCode.allMatches(input)) {
current.write(match[0]);
if (match[0].length < 4) {
// This is a regular character, write it out.
@@ -461,7 +461,7 @@
final List<String> result = <String>[];
final int effectiveLength = max(columnWidth - start, kMinColumnWidth);
- for (String line in text.split('\n')) {
+ for (final String line in text.split('\n')) {
// If the line is short enough, even with ANSI codes, then we can just add
// add it and move on.
if (line.length <= effectiveLength || !shouldWrap) {
diff --git a/packages/flutter_tools/lib/src/base/version.dart b/packages/flutter_tools/lib/src/base/version.dart
index 5e79435..e89772c 100644
--- a/packages/flutter_tools/lib/src/base/version.dart
+++ b/packages/flutter_tools/lib/src/base/version.dart
@@ -52,7 +52,7 @@
/// This is the highest-numbered stable version.
static Version primary(List<Version> versions) {
Version primary;
- for (Version version in versions) {
+ for (final Version version in versions) {
if (primary == null || (version > primary)) {
primary = version;
}
diff --git a/packages/flutter_tools/lib/src/build_runner/build_runner.dart b/packages/flutter_tools/lib/src/build_runner/build_runner.dart
index 082605f..0a9334e 100644
--- a/packages/flutter_tools/lib/src/build_runner/build_runner.dart
+++ b/packages/flutter_tools/lib/src/build_runner/build_runner.dart
@@ -78,7 +78,7 @@
stringBuffer.writeln('dependencies:');
final YamlMap builders = flutterProject.builders;
if (builders != null) {
- for (String name in builders.keys.cast<String>()) {
+ for (final String name in builders.keys.cast<String>()) {
final Object node = builders[name];
// For relative paths, make sure it is accounted for
// parent directories.
diff --git a/packages/flutter_tools/lib/src/build_runner/web_compilation_delegate.dart b/packages/flutter_tools/lib/src/build_runner/web_compilation_delegate.dart
index de5f20d..df9c642 100644
--- a/packages/flutter_tools/lib/src/build_runner/web_compilation_delegate.dart
+++ b/packages/flutter_tools/lib/src/build_runner/web_compilation_delegate.dart
@@ -60,7 +60,7 @@
);
client.startBuild();
bool success = true;
- await for (BuildResults results in client.buildResults) {
+ await for (final BuildResults results in client.buildResults) {
final BuildResult result = results.results.firstWhere((BuildResult result) {
return result.target == 'web';
});
@@ -81,7 +81,7 @@
final Iterable<Directory> childDirectories = rootDirectory
.listSync()
.whereType<Directory>();
- for (Directory childDirectory in childDirectories) {
+ for (final Directory childDirectory in childDirectories) {
final String path = globals.fs.path.join(testOutputDir, 'packages',
globals.fs.path.basename(childDirectory.path));
copyDirectorySync(childDirectory.childDirectory('lib'), globals.fs.directory(path));
@@ -135,7 +135,7 @@
Stream<AssetId> findAssets(Glob glob, {String package}) async* {
if (package == null || packageGraph.root.name == package) {
final String generatedRoot = globals.fs.path.join(generatedDirectory.path, packageGraph.root.name);
- await for (io.FileSystemEntity entity in glob.list(followLinks: true, root: packageGraph.root.path)) {
+ await for (final io.FileSystemEntity entity in glob.list(followLinks: true, root: packageGraph.root.path)) {
if (entity is io.File && _isNotHidden(entity) && !globals.fs.path.isWithin(generatedRoot, entity.path)) {
yield _fileToAssetId(entity, packageGraph.root);
}
@@ -143,7 +143,7 @@
if (!globals.fs.isDirectorySync(generatedRoot)) {
return;
}
- await for (io.FileSystemEntity entity in glob.list(followLinks: true, root: generatedRoot)) {
+ await for (final io.FileSystemEntity entity in glob.list(followLinks: true, root: generatedRoot)) {
if (entity is io.File && _isNotHidden(entity)) {
yield _fileToAssetId(entity, packageGraph.root, globals.fs.path.relative(generatedRoot), true);
}
diff --git a/packages/flutter_tools/lib/src/build_runner/web_fs.dart b/packages/flutter_tools/lib/src/build_runner/web_fs.dart
index 1e9c0bd..f4c97b6 100644
--- a/packages/flutter_tools/lib/src/build_runner/web_fs.dart
+++ b/packages/flutter_tools/lib/src/build_runner/web_fs.dart
@@ -154,7 +154,7 @@
return true;
}
_client.startBuild();
- await for (BuildResults results in _client.buildResults) {
+ await for (final BuildResults results in _client.buildResults) {
final BuildResult result = results.results.firstWhere((BuildResult result) {
return result.target == kBuildTargetName;
});
@@ -367,7 +367,7 @@
@override
Future<Response> handle(Request request) async {
Uri fileUri;
- for (Uri uri in _searchPaths) {
+ for (final Uri uri in _searchPaths) {
final Uri potential = uri.resolve(request.url.path);
if (potential == null || !globals.fs.isFileSync(potential.toFilePath())) {
continue;
@@ -445,7 +445,7 @@
final Archive archive = TarDecoder().decodeBytes(dart2jsArchive.readAsBytesSync());
partFiles = globals.fs.systemTempDirectory.createTempSync('flutter_tool.')
..createSync();
- for (ArchiveFile file in archive) {
+ for (final ArchiveFile file in archive) {
partFiles.childFile(file.name).writeAsBytesSync(file.content as List<int>);
}
}
@@ -664,7 +664,7 @@
'--define', 'flutter_tools:shell=initializePlatform=$initializePlatform',
// The following will cause build runner to only build tests that were requested.
if (testTargets != null && testTargets.hasBuildFilters)
- for (String buildFilter in testTargets.buildFilters)
+ for (final String buildFilter in testTargets.buildFilters)
'--build-filter=$buildFilter',
];
diff --git a/packages/flutter_tools/lib/src/build_system/build_system.dart b/packages/flutter_tools/lib/src/build_system/build_system.dart
index 1f67a56..6f4f85a 100644
--- a/packages/flutter_tools/lib/src/build_system/build_system.dart
+++ b/packages/flutter_tools/lib/src/build_system/build_system.dart
@@ -138,7 +138,7 @@
inputsFiles.sources,
outputFiles.sources,
<Node>[
- for (Target target in dependencies) target._toNode(environment),
+ for (final Target target in dependencies) target._toNode(environment),
],
environment,
inputsFiles.containsNewDepfile,
@@ -160,11 +160,11 @@
) {
final File stamp = _findStampFile(environment);
final List<String> inputPaths = <String>[];
- for (File input in inputs) {
+ for (final File input in inputs) {
inputPaths.add(input.path);
}
final List<String> outputPaths = <String>[];
- for (File output in outputs) {
+ for (final File output in outputs) {
outputPaths.add(output.path);
}
final Map<String, Object> result = <String, Object>{
@@ -207,13 +207,13 @@
return <String, Object>{
'name': name,
'dependencies': <String>[
- for (Target target in dependencies) target.name,
+ for (final Target target in dependencies) target.name,
],
'inputs': <String>[
- for (File file in resolveInputs(environment).sources) file.path,
+ for (final File file in resolveInputs(environment).sources) file.path,
],
'outputs': <String>[
- for (File file in resolveOutputs(environment).sources) file.path,
+ for (final File file in resolveOutputs(environment).sources) file.path,
],
'stamp': _findStampFile(environment).absolute.path,
};
@@ -229,7 +229,7 @@
List<String> depfiles, Environment environment, { bool implicit = true, bool inputs = true,
}) {
final SourceVisitor collector = SourceVisitor(environment, inputs);
- for (Source source in config) {
+ for (final Source source in config) {
source.accept(collector);
}
depfiles.forEach(collector.visitDepfile);
@@ -292,7 +292,7 @@
String buildPrefix;
final List<String> keys = defines.keys.toList()..sort();
final StringBuffer buffer = StringBuffer();
- for (String key in keys) {
+ for (final String key in keys) {
buffer.write(key);
buffer.write(defines[key]);
}
@@ -502,10 +502,10 @@
// these files are included as both inputs and outputs then it isn't
// possible to construct a DAG describing the build.
void updateGraph() {
- for (File output in node.outputs) {
+ for (final File output in node.outputs) {
outputFiles[output.path] = output;
}
- for (File input in node.inputs) {
+ for (final File input in node.inputs) {
final String resolvedPath = input.absolute.path;
if (outputFiles.containsKey(resolvedPath)) {
continue;
@@ -550,7 +550,7 @@
// Delete outputs from previous stages that are no longer a part of the
// build.
- for (String previousOutput in node.previousOutputs) {
+ for (final String previousOutput in node.previousOutputs) {
if (outputFiles.containsKey(previousOutput)) {
continue;
}
@@ -614,7 +614,7 @@
}
visited.add(target);
stack.add(target);
- for (Target dependency in target.dependencies) {
+ for (final Target dependency in target.dependencies) {
checkInternal(dependency, visited, stack);
}
stack.remove(target);
@@ -627,7 +627,7 @@
final String buildDirectory = environment.buildDir.resolveSymbolicLinksSync();
final String projectDirectory = environment.projectDir.resolveSymbolicLinksSync();
final List<File> missingOutputs = <File>[];
- for (File sourceFile in outputs) {
+ for (final File sourceFile in outputs) {
if (!sourceFile.existsSync()) {
missingOutputs.add(sourceFile);
continue;
@@ -733,13 +733,13 @@
FileHashStore fileHashStore,
) async {
final Set<String> currentOutputPaths = <String>{
- for (File file in outputs) file.path,
+ for (final File file in outputs) file.path,
};
// For each input, first determine if we've already computed the hash
// for it. Then collect it to be sent off for hashing as a group.
final List<File> sourcesToHash = <File>[];
final List<File> missingInputs = <File>[];
- for (File file in inputs) {
+ for (final File file in inputs) {
if (!file.existsSync()) {
missingInputs.add(file);
continue;
@@ -760,7 +760,7 @@
// For each output, first determine if we've already computed the hash
// for it. Then collect it to be sent off for hashing as a group.
- for (String previousOutput in previousOutputs) {
+ for (final String previousOutput in previousOutputs) {
// output paths changed.
if (!currentOutputPaths.contains(previousOutput)) {
_dirty = true;
diff --git a/packages/flutter_tools/lib/src/build_system/depfile.dart b/packages/flutter_tools/lib/src/build_system/depfile.dart
index 6e777af..6ae6021 100644
--- a/packages/flutter_tools/lib/src/build_system/depfile.dart
+++ b/packages/flutter_tools/lib/src/build_system/depfile.dart
@@ -31,7 +31,7 @@
/// file must be manually specified.
factory Depfile.parseDart2js(File file, File output) {
final List<File> inputs = <File>[];
- for (String rawUri in file.readAsLinesSync()) {
+ for (final String rawUri in file.readAsLinesSync()) {
if (rawUri.trim().isEmpty) {
continue;
}
@@ -72,7 +72,7 @@
}
void _writeFilesToBuffer(List<File> files, StringBuffer buffer) {
- for (File outputFile in files) {
+ for (final File outputFile in files) {
if (globals.platform.isWindows) {
// Paths in a depfile have to be escaped on windows.
final String escapedPath = outputFile.path.replaceAll(r'\', r'\\');
diff --git a/packages/flutter_tools/lib/src/build_system/file_hash_store.dart b/packages/flutter_tools/lib/src/build_system/file_hash_store.dart
index 72925ee..0879c7b 100644
--- a/packages/flutter_tools/lib/src/build_system/file_hash_store.dart
+++ b/packages/flutter_tools/lib/src/build_system/file_hash_store.dart
@@ -24,7 +24,7 @@
final int version = json['version'] as int;
final List<Map<String, Object>> rawCachedFiles = (json['files'] as List<dynamic>).cast<Map<String, Object>>();
final List<FileHash> cachedFiles = <FileHash>[
- for (Map<String, Object> rawFile in rawCachedFiles) FileHash.fromJson(rawFile),
+ for (final Map<String, Object> rawFile in rawCachedFiles) FileHash.fromJson(rawFile),
];
return FileStorage(version, cachedFiles);
}
@@ -36,7 +36,7 @@
final Map<String, Object> json = <String, Object>{
'version': version,
'files': <Object>[
- for (FileHash file in files) file.toJson(),
+ for (final FileHash file in files) file.toJson(),
],
};
return utf8.encode(jsonEncode(json));
@@ -118,7 +118,7 @@
cacheFile.deleteSync();
return;
}
- for (FileHash fileHash in fileStorage.files) {
+ for (final FileHash fileHash in fileStorage.files) {
previousHashes[fileHash.path] = fileHash.hash;
}
globals.printTrace('Done initializing file store');
@@ -132,7 +132,7 @@
cacheFile.createSync(recursive: true);
}
final List<FileHash> fileHashes = <FileHash>[];
- for (MapEntry<String, String> entry in currentHashes.entries) {
+ for (final MapEntry<String, String> entry in currentHashes.entries) {
fileHashes.add(FileHash(entry.key, entry.value));
}
final FileStorage fileStorage = FileStorage(
@@ -158,7 +158,7 @@
final List<File> dirty = <File>[];
final Pool openFiles = Pool(kMaxOpenFiles);
await Future.wait(<Future<void>>[
- for (File file in files) _hashFile(file, dirty, openFiles)
+ for (final File file in files) _hashFile(file, dirty, openFiles)
]);
return dirty;
}
diff --git a/packages/flutter_tools/lib/src/build_system/source.dart b/packages/flutter_tools/lib/src/build_system/source.dart
index eb35f95..e0df5cb 100644
--- a/packages/flutter_tools/lib/src/build_system/source.dart
+++ b/packages/flutter_tools/lib/src/build_system/source.dart
@@ -146,7 +146,7 @@
if (!globals.fs.directory(filePath).existsSync()) {
throw Exception('$filePath does not exist!');
}
- for (FileSystemEntity entity in globals.fs.directory(filePath).listSync()) {
+ for (final FileSystemEntity entity in globals.fs.directory(filePath).listSync()) {
final String filename = globals.fs.path.basename(entity.path);
if (wildcardSegments.isEmpty) {
sources.add(globals.fs.file(entity.absolute));
diff --git a/packages/flutter_tools/lib/src/build_system/targets/ios.dart b/packages/flutter_tools/lib/src/build_system/targets/ios.dart
index 1d9152a..032e270 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/ios.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/ios.dart
@@ -59,7 +59,7 @@
// If we're building multiple iOS archs the binaries need to be lipo'd
// together.
final List<Future<int>> pending = <Future<int>>[];
- for (DarwinArch iosArch in iosArchs) {
+ for (final DarwinArch iosArch in iosArchs) {
pending.add(snapshotter.build(
platform: targetPlatform,
buildMode: buildMode,
diff --git a/packages/flutter_tools/lib/src/build_system/targets/linux.dart b/packages/flutter_tools/lib/src/build_system/targets/linux.dart
index 706b788..8375ecd 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/linux.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/linux.dart
@@ -59,7 +59,7 @@
);
// The native linux artifacts are composed of 6 files and a directory (listed above)
// which need to be copied to the target directory.
- for (String artifact in _kLinuxArtifacts) {
+ for (final String artifact in _kLinuxArtifacts) {
final String entityPath = globals.fs.path.join(basePath, artifact);
// If this artifact is a file, just copy the source over.
if (globals.fs.isFileSync(entityPath)) {
@@ -79,7 +79,7 @@
}
// If the artifact is the directory cpp_client_wrapper, recursively
// copy every file from it.
- for (File input in globals.fs.directory(entityPath)
+ for (final File input in globals.fs.directory(entityPath)
.listSync(recursive: true)
.whereType<File>()) {
final String outputPath = globals.fs.path.join(
diff --git a/packages/flutter_tools/lib/src/build_system/targets/web.dart b/packages/flutter_tools/lib/src/build_system/targets/web.dart
index 97e0a00..00d9f63 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/web.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/web.dart
@@ -170,7 +170,7 @@
'-Ddart.vm.profile=true'
else
'-Ddart.vm.product=true',
- for (String dartDefine in parseDartDefines(environment))
+ for (final String dartDefine in parseDartDefines(environment))
'-D$dartDefine',
environment.buildDir.childFile('main.dart').path,
]);
@@ -224,7 +224,7 @@
@override
Future<void> build(Environment environment) async {
- for (File outputFile in environment.buildDir.listSync(recursive: true).whereType<File>()) {
+ for (final File outputFile in environment.buildDir.listSync(recursive: true).whereType<File>()) {
if (!globals.fs.path.basename(outputFile.path).contains('main.dart.js')) {
continue;
}
diff --git a/packages/flutter_tools/lib/src/build_system/targets/windows.dart b/packages/flutter_tools/lib/src/build_system/targets/windows.dart
index 5b05aa1..ce1ee7b 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/windows.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/windows.dart
@@ -41,7 +41,7 @@
Future<void> build(Environment environment) async {
// This path needs to match the prefix in the rule below.
final String basePath = globals.artifacts.getArtifactPath(Artifact.windowsDesktopPath);
- for (File input in globals.fs.directory(basePath)
+ for (final File input in globals.fs.directory(basePath)
.listSync(recursive: true)
.whereType<File>()) {
final String outputPath = globals.fs.path.join(
diff --git a/packages/flutter_tools/lib/src/bundle.dart b/packages/flutter_tools/lib/src/bundle.dart
index 2a3c938..b496587 100644
--- a/packages/flutter_tools/lib/src/bundle.dart
+++ b/packages/flutter_tools/lib/src/bundle.dart
@@ -126,7 +126,7 @@
final BuildResult result = await buildSystem.build(target, environment);
if (!result.success) {
- for (ExceptionMeasurement measurement in result.exceptions.values) {
+ for (final ExceptionMeasurement measurement in result.exceptions.values) {
globals.printError('Target ${measurement.target} failed: ${measurement.exception}',
stackTrace: measurement.fatal
? measurement.stackTrace
diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
index 821f4c2..4320f34 100644
--- a/packages/flutter_tools/lib/src/cache.dart
+++ b/packages/flutter_tools/lib/src/cache.dart
@@ -108,7 +108,7 @@
_artifacts.add(MacOSFuchsiaSDKArtifacts(this));
_artifacts.add(FlutterRunnerSDKArtifacts(this));
_artifacts.add(FlutterRunnerDebugSymbols(this));
- for (String artifactName in IosUsbArtifacts.artifactNames) {
+ for (final String artifactName in IosUsbArtifacts.artifactNames) {
_artifacts.add(IosUsbArtifacts(artifactName, this));
}
} else {
@@ -300,7 +300,7 @@
return _dyLdLibEntry;
}
final List<String> paths = <String>[];
- for (ArtifactSet artifact in _artifacts) {
+ for (final ArtifactSet artifact in _artifacts) {
final Map<String, String> env = artifact.environment;
if (env == null || !env.containsKey('DYLD_LIBRARY_PATH')) {
continue;
@@ -378,7 +378,7 @@
if (!_lockEnabled) {
return;
}
- for (ArtifactSet artifact in _artifacts) {
+ for (final ArtifactSet artifact in _artifacts) {
if (!requiredArtifacts.contains(artifact.developmentArtifact)) {
globals.printTrace('Artifact $artifact is not required, skipping update.');
continue;
@@ -409,7 +409,7 @@
final bool includeAllPlatformsState = globals.cache.includeAllPlatforms;
bool allAvailible = true;
globals.cache.includeAllPlatforms = includeAllPlatforms;
- for (ArtifactSet cachedArtifact in _artifacts) {
+ for (final ArtifactSet cachedArtifact in _artifacts) {
if (cachedArtifact is EngineCachedArtifact) {
allAvailible &= await cachedArtifact.checkForArtifacts(engineVersion);
}
@@ -496,7 +496,7 @@
/// Clear any zip/gzip files downloaded.
void _removeDownloadedFiles() {
- for (File f in downloadedFiles) {
+ for (final File f in downloadedFiles) {
try {
f.deleteSync();
} on FileSystemException catch (e) {
@@ -606,7 +606,7 @@
final Uri url = Uri.parse('${cache.storageBaseUrl}/flutter_infra/flutter/$version/$platformName.zip');
await _downloadZipArchive('Downloading Web SDK...', url, location);
// This is a temporary work-around for not being able to safely download into a shared directory.
- for (FileSystemEntity entity in location.listSync(recursive: true)) {
+ for (final FileSystemEntity entity in location.listSync(recursive: true)) {
if (entity is File) {
final List<String> segments = globals.fs.path.split(entity.path);
segments.remove('flutter_web_sdk');
@@ -643,21 +643,21 @@
@override
bool isUpToDateInner() {
final Directory pkgDir = cache.getCacheDir('pkg');
- for (String pkgName in getPackageDirs()) {
+ for (final String pkgName in getPackageDirs()) {
final String pkgPath = globals.fs.path.join(pkgDir.path, pkgName);
if (!globals.fs.directory(pkgPath).existsSync()) {
return false;
}
}
- for (List<String> toolsDir in getBinaryDirs()) {
+ for (final List<String> toolsDir in getBinaryDirs()) {
final Directory dir = globals.fs.directory(globals.fs.path.join(location.path, toolsDir[0]));
if (!dir.existsSync()) {
return false;
}
}
- for (String licenseDir in getLicenseDirs()) {
+ for (final String licenseDir in getLicenseDirs()) {
final File file = globals.fs.file(globals.fs.path.join(location.path, licenseDir, 'LICENSE'));
if (!file.existsSync()) {
return false;
@@ -671,11 +671,11 @@
final String url = '${cache.storageBaseUrl}/flutter_infra/flutter/$version/';
final Directory pkgDir = cache.getCacheDir('pkg');
- for (String pkgName in getPackageDirs()) {
+ for (final String pkgName in getPackageDirs()) {
await _downloadZipArchive('Downloading package $pkgName...', Uri.parse(url + pkgName + '.zip'), pkgDir);
}
- for (List<String> toolsDir in getBinaryDirs()) {
+ for (final List<String> toolsDir in getBinaryDirs()) {
final String cacheDir = toolsDir[0];
final String urlPath = toolsDir[1];
final Directory dir = globals.fs.directory(globals.fs.path.join(location.path, cacheDir));
@@ -684,7 +684,7 @@
_makeFilesExecutable(dir);
const List<String> frameworkNames = <String>['Flutter', 'FlutterMacOS'];
- for (String frameworkName in frameworkNames) {
+ for (final String frameworkName in frameworkNames) {
final File frameworkZip = globals.fs.file(globals.fs.path.join(dir.path, '$frameworkName.framework.zip'));
if (frameworkZip.existsSync()) {
final Directory framework = globals.fs.directory(globals.fs.path.join(dir.path, '$frameworkName.framework'));
@@ -695,7 +695,7 @@
}
final File licenseSource = cache.getLicenseFile();
- for (String licenseDir in getLicenseDirs()) {
+ for (final String licenseDir in getLicenseDirs()) {
final String licenseDestinationPath = globals.fs.path.join(location.path, licenseDir, 'LICENSE');
await licenseSource.copy(licenseDestinationPath);
}
@@ -706,7 +706,7 @@
final String url = '${cache.storageBaseUrl}/flutter_infra/flutter/$engineVersion/';
bool exists = false;
- for (String pkgName in getPackageDirs()) {
+ for (final String pkgName in getPackageDirs()) {
exists = await _doesRemoteExist('Checking package $pkgName is available...',
Uri.parse(url + pkgName + '.zip'));
if (!exists) {
@@ -714,7 +714,7 @@
}
}
- for (List<String> toolsDir in getBinaryDirs()) {
+ for (final List<String> toolsDir in getBinaryDirs()) {
final String cacheDir = toolsDir[0];
final String urlPath = toolsDir[1];
exists = await _doesRemoteExist('Checking $cacheDir tools are available...',
@@ -728,7 +728,7 @@
void _makeFilesExecutable(Directory dir) {
os.chmod(dir, 'a+r,a+x');
- for (FileSystemEntity entity in dir.listSync(recursive: true)) {
+ for (final FileSystemEntity entity in dir.listSync(recursive: true)) {
if (entity is File) {
final FileStat stat = entity.statSync();
final bool isUserExecutable = ((stat.mode >> 6) & 0x1) == 1;
@@ -1000,7 +1000,7 @@
if (!globals.fs.directory(wrapperDir).existsSync()) {
return false;
}
- for (String scriptName in _gradleScripts) {
+ for (final String scriptName in _gradleScripts) {
final File scriptFile = globals.fs.file(globals.fs.path.join(wrapperDir.path, scriptName));
if (!scriptFile.existsSync()) {
return false;
@@ -1189,7 +1189,7 @@
if (executables == null) {
return true;
}
- for (String executable in executables) {
+ for (final String executable in executables) {
if (!location.childFile(executable).existsSync()) {
return false;
}
diff --git a/packages/flutter_tools/lib/src/codegen.dart b/packages/flutter_tools/lib/src/codegen.dart
index 75e1072..6be4fed 100644
--- a/packages/flutter_tools/lib/src/codegen.dart
+++ b/packages/flutter_tools/lib/src/codegen.dart
@@ -118,7 +118,7 @@
codeGenerator.updatePackages(flutterProject);
final CodegenDaemon codegenDaemon = await codeGenerator.daemon(flutterProject);
codegenDaemon.startBuild();
- await for (CodegenStatus codegenStatus in codegenDaemon.buildResults) {
+ await for (final CodegenStatus codegenStatus in codegenDaemon.buildResults) {
if (codegenStatus == CodegenStatus.Failed) {
globals.printError('Code generation failed, build may have compile errors.');
break;
diff --git a/packages/flutter_tools/lib/src/commands/analyze_base.dart b/packages/flutter_tools/lib/src/commands/analyze_base.dart
index 568e117..63fb3dc 100644
--- a/packages/flutter_tools/lib/src/commands/analyze_base.dart
+++ b/packages/flutter_tools/lib/src/commands/analyze_base.dart
@@ -86,8 +86,8 @@
bool get hasConflict => values.length > 1;
bool get hasConflictAffectingFlutterRepo {
assert(globals.fs.path.isAbsolute(Cache.flutterRoot));
- for (List<String> targetSources in values.values) {
- for (String source in targetSources) {
+ for (final List<String> targetSources in values.values) {
+ for (final String source in targetSources) {
assert(globals.fs.path.isAbsolute(source));
if (globals.fs.path.isWithin(Cache.flutterRoot, source)) {
return true;
@@ -100,11 +100,11 @@
assert(hasConflict);
final List<String> targets = values.keys.toList();
targets.sort((String a, String b) => values[b].length.compareTo(values[a].length));
- for (String target in targets) {
+ for (final String target in targets) {
final int count = values[target].length;
result.writeln(' $count ${count == 1 ? 'source wants' : 'sources want'} "$target":');
bool canonical = false;
- for (String source in values[target]) {
+ for (final String source in values[target]) {
result.writeln(' $source');
if (source == canonicalSource) {
canonical = true;
@@ -140,7 +140,7 @@
.readAsStringSync()
.split('\n')
.where((String line) => !line.startsWith(RegExp(r'^ *#')));
- for (String line in lines) {
+ for (final String line in lines) {
final int colon = line.indexOf(':');
if (colon > 0) {
final String packageName = line.substring(0, colon);
@@ -165,7 +165,7 @@
}
void checkForConflictingDependencies(Iterable<Directory> pubSpecDirectories, PackageDependencyTracker dependencies) {
- for (Directory directory in pubSpecDirectories) {
+ for (final Directory directory in pubSpecDirectories) {
final String pubSpecYamlPath = globals.fs.path.join(directory.path, 'pubspec.yaml');
final File pubSpecYamlFile = globals.fs.file(pubSpecYamlPath);
if (pubSpecYamlFile.existsSync()) {
@@ -219,7 +219,7 @@
String generateConflictReport() {
assert(hasConflicts);
final StringBuffer result = StringBuffer();
- for (String package in packages.keys.where((String package) => packages[package].hasConflict)) {
+ for (final String package in packages.keys.where((String package) => packages[package].hasConflict)) {
result.writeln('Package "$package" has conflicts:');
packages[package].describeConflict(result);
}
@@ -228,7 +228,7 @@
Map<String, String> asPackageMap() {
final Map<String, String> result = <String, String>{};
- for (String package in packages.keys) {
+ for (final String package in packages.keys) {
result[package] = packages[package].target;
}
return result;
diff --git a/packages/flutter_tools/lib/src/commands/analyze_continuously.dart b/packages/flutter_tools/lib/src/commands/analyze_continuously.dart
index 2e9802c..c6271d5 100644
--- a/packages/flutter_tools/lib/src/commands/analyze_continuously.dart
+++ b/packages/flutter_tools/lib/src/commands/analyze_continuously.dart
@@ -43,7 +43,7 @@
analysisTarget = 'Flutter repository';
globals.printTrace('Analyzing Flutter repository:');
- for (String projectPath in repoRoots) {
+ for (final String projectPath in repoRoots) {
globals.printTrace(' ${globals.fs.path.relative(projectPath)}');
}
} else {
@@ -91,7 +91,7 @@
// Remove errors for deleted files, sort, and print errors.
final List<AnalysisError> errors = <AnalysisError>[];
- for (String path in analysisErrors.keys.toList()) {
+ for (final String path in analysisErrors.keys.toList()) {
if (globals.fs.isFileSync(path)) {
errors.addAll(analysisErrors[path]);
} else {
@@ -112,7 +112,7 @@
errors.sort();
- for (AnalysisError error in errors) {
+ for (final AnalysisError error in errors) {
globals.printStatus(error.toString());
if (error.code != null) {
globals.printTrace('error code: ${error.code}');
diff --git a/packages/flutter_tools/lib/src/commands/analyze_once.dart b/packages/flutter_tools/lib/src/commands/analyze_once.dart
index aaa44df..db2b724 100644
--- a/packages/flutter_tools/lib/src/commands/analyze_once.dart
+++ b/packages/flutter_tools/lib/src/commands/analyze_once.dart
@@ -41,7 +41,7 @@
final Set<String> directories = Set<String>.from(argResults.rest
.map<String>((String path) => globals.fs.path.canonicalize(path)));
if (directories.isNotEmpty) {
- for (String directory in directories) {
+ for (final String directory in directories) {
final FileSystemEntityType type = globals.fs.typeSync(directory);
if (type == FileSystemEntityType.notFound) {
@@ -138,7 +138,7 @@
globals.printStatus('');
}
errors.sort();
- for (AnalysisError error in errors) {
+ for (final AnalysisError error in errors) {
globals.printStatus(error.toString(), hangingIndent: 7);
}
diff --git a/packages/flutter_tools/lib/src/commands/assemble.dart b/packages/flutter_tools/lib/src/commands/assemble.dart
index 583412b..75fc58d 100644
--- a/packages/flutter_tools/lib/src/commands/assemble.dart
+++ b/packages/flutter_tools/lib/src/commands/assemble.dart
@@ -115,11 +115,11 @@
}
final String name = argResults.rest.first;
final Map<String, Target> targetMap = <String, Target>{
- for (Target target in _kDefaultTargets)
+ for (final Target target in _kDefaultTargets)
target.name: target
};
final List<Target> results = <Target>[
- for (String targetName in argResults.rest)
+ for (final String targetName in argResults.rest)
if (targetMap.containsKey(targetName))
targetMap[targetName]
];
@@ -153,7 +153,7 @@
Map<String, String> _parseDefines(List<String> values) {
final Map<String, String> results = <String, String>{};
- for (String chunk in values) {
+ for (final String chunk in values) {
final int indexEquals = chunk.indexOf('=');
if (indexEquals == -1) {
throwToolExit('Improperly formatted define flag: $chunk');
@@ -179,7 +179,7 @@
: null,
));
if (!result.success) {
- for (ExceptionMeasurement measurement in result.exceptions.values) {
+ for (final ExceptionMeasurement measurement in result.exceptions.values) {
globals.printError('Target ${measurement.target} failed: ${measurement.exception}',
stackTrace: measurement.fatal
? measurement.stackTrace
@@ -209,7 +209,7 @@
final File file = globals.fs.file(path);
final StringBuffer buffer = StringBuffer();
// These files are already sorted.
- for (File file in files) {
+ for (final File file in files) {
buffer.writeln(file.path);
}
final String newContents = buffer.toString();
diff --git a/packages/flutter_tools/lib/src/commands/attach.dart b/packages/flutter_tools/lib/src/commands/attach.dart
index 3ce4a89..421b425 100644
--- a/packages/flutter_tools/lib/src/commands/attach.dart
+++ b/packages/flutter_tools/lib/src/commands/attach.dart
@@ -226,7 +226,7 @@
} catch (_) {
isolateDiscoveryProtocol?.dispose();
final List<ForwardedPort> ports = device.portForwarder.forwardedPorts.toList();
- for (ForwardedPort port in ports) {
+ for (final ForwardedPort port in ports) {
await device.portForwarder.unforward(port);
}
rethrow;
@@ -329,7 +329,7 @@
}
} finally {
final List<ForwardedPort> ports = device.portForwarder.forwardedPorts.toList();
- for (ForwardedPort port in ports) {
+ for (final ForwardedPort port in ports) {
await device.portForwarder.unforward(port);
}
}
diff --git a/packages/flutter_tools/lib/src/commands/build_aar.dart b/packages/flutter_tools/lib/src/commands/build_aar.dart
index 84a83d8..7b798c6 100644
--- a/packages/flutter_tools/lib/src/commands/build_aar.dart
+++ b/packages/flutter_tools/lib/src/commands/build_aar.dart
@@ -101,7 +101,7 @@
? stringArg('build-number')
: '1.0';
- for (String buildMode in const <String>['debug', 'profile', 'release']) {
+ for (final String buildMode in const <String>['debug', 'profile', 'release']) {
if (boolArg(buildMode)) {
androidBuildInfo.add(AndroidBuildInfo(
BuildInfo(BuildMode.fromName(buildMode), stringArg('flavor')),
diff --git a/packages/flutter_tools/lib/src/commands/build_ios_framework.dart b/packages/flutter_tools/lib/src/commands/build_ios_framework.dart
index bd48a12..3ac3b48 100644
--- a/packages/flutter_tools/lib/src/commands/build_ios_framework.dart
+++ b/packages/flutter_tools/lib/src/commands/build_ios_framework.dart
@@ -158,7 +158,7 @@
bundleBuilder ??= BundleBuilder();
cache ??= globals.cache;
- for (BuildMode mode in buildModes) {
+ for (final BuildMode mode in buildModes) {
globals.printStatus('Building framework for $iosProject in ${getNameForBuildMode(mode)} mode...');
final String xcodeBuildConfiguration = toTitleCase(getNameForBuildMode(mode));
final Directory modeDirectory = outputDirectory.childDirectory(xcodeBuildConfiguration);
@@ -470,8 +470,8 @@
final Directory iPhoneBuildConfiguration = iPhoneBuildOutput.childDirectory('$xcodeBuildConfiguration-iphoneos');
final Directory simulatorBuildConfiguration = simulatorBuildOutput.childDirectory('$xcodeBuildConfiguration-iphonesimulator');
- for (Directory builtProduct in iPhoneBuildConfiguration.listSync(followLinks: false).whereType<Directory>()) {
- for (FileSystemEntity podProduct in builtProduct.listSync(followLinks: false)) {
+ for (final Directory builtProduct in iPhoneBuildConfiguration.listSync(followLinks: false).whereType<Directory>()) {
+ for (final FileSystemEntity podProduct in builtProduct.listSync(followLinks: false)) {
final String podFrameworkName = podProduct.basename;
if (globals.fs.path.extension(podFrameworkName) == '.framework') {
final String binaryName = globals.fs.path.basenameWithoutExtension(podFrameworkName);
diff --git a/packages/flutter_tools/lib/src/commands/clean.dart b/packages/flutter_tools/lib/src/commands/clean.dart
index 5d7bc07..db78584 100644
--- a/packages/flutter_tools/lib/src/commands/clean.dart
+++ b/packages/flutter_tools/lib/src/commands/clean.dart
@@ -73,7 +73,7 @@
try {
final Directory xcodeWorkspace = xcodeProject.xcodeWorkspace;
final XcodeProjectInfo projectInfo = await xcodeProjectInterpreter.getInfo(xcodeWorkspace.parent.path);
- for (String scheme in projectInfo.schemes) {
+ for (final String scheme in projectInfo.schemes) {
xcodeProjectInterpreter.cleanWorkspace(xcodeWorkspace.path, scheme);
}
} catch (error) {
diff --git a/packages/flutter_tools/lib/src/commands/config.dart b/packages/flutter_tools/lib/src/commands/config.dart
index d1626ac..c4ab2c8 100644
--- a/packages/flutter_tools/lib/src/commands/config.dart
+++ b/packages/flutter_tools/lib/src/commands/config.dart
@@ -30,7 +30,7 @@
negatable: false,
hide: !verboseHelp,
help: 'Print config values as json.');
- for (Feature feature in allFeatures) {
+ for (final Feature feature in allFeatures) {
if (feature.configSetting == null) {
continue;
}
@@ -69,7 +69,7 @@
// are available.
final Map<String, Feature> featuresByName = <String, Feature>{};
final String channel = FlutterVersion.instance.channel;
- for (Feature feature in allFeatures) {
+ for (final Feature feature in allFeatures) {
if (feature.configSetting != null) {
featuresByName[feature.configSetting] = feature;
}
@@ -105,7 +105,7 @@
}
if (boolArg('clear-features')) {
- for (Feature feature in allFeatures) {
+ for (final Feature feature in allFeatures) {
if (feature.configSetting != null) {
globals.config.removeValue(feature.configSetting);
}
@@ -140,7 +140,7 @@
_updateConfig('build-dir', buildDir);
}
- for (Feature feature in allFeatures) {
+ for (final Feature feature in allFeatures) {
if (feature.configSetting == null) {
continue;
}
@@ -163,7 +163,7 @@
Future<void> handleMachine() async {
// Get all the current values.
final Map<String, dynamic> results = <String, dynamic>{};
- for (String key in globals.config.keys) {
+ for (final String key in globals.config.keys) {
results[key] = globals.config.getValue(key);
}
diff --git a/packages/flutter_tools/lib/src/commands/create.dart b/packages/flutter_tools/lib/src/commands/create.dart
index 823da6a..3de6c2b 100644
--- a/packages/flutter_tools/lib/src/commands/create.dart
+++ b/packages/flutter_tools/lib/src/commands/create.dart
@@ -44,7 +44,7 @@
_ProjectType _stringToProjectType(String value) {
_ProjectType result;
- for (_ProjectType type in _ProjectType.values) {
+ for (final _ProjectType type in _ProjectType.values) {
if (value == getEnumName(type)) {
result = type;
break;
@@ -306,7 +306,7 @@
if (argResults.rest.length > 1) {
String message = 'Multiple output directories specified.';
- for (String arg in argResults.rest) {
+ for (final String arg in argResults.rest) {
if (arg.startsWith('-')) {
message += '\nTry moving $arg to be immediately following $name';
break;
diff --git a/packages/flutter_tools/lib/src/commands/daemon.dart b/packages/flutter_tools/lib/src/commands/daemon.dart
index 0c30d60..1b7cf43 100644
--- a/packages/flutter_tools/lib/src/commands/daemon.dart
+++ b/packages/flutter_tools/lib/src/commands/daemon.dart
@@ -204,7 +204,7 @@
void shutdown({ dynamic error }) {
_commandSubscription?.cancel();
- for (Domain domain in _domainMap.values) {
+ for (final Domain domain in _domainMap.values) {
domain.dispose();
}
if (!_onExitCompleter.isCompleted) {
@@ -791,15 +791,15 @@
/// of properties (id, name, platform, ...).
Future<List<Map<String, dynamic>>> getDevices([ Map<String, dynamic> args ]) async {
return <Map<String, dynamic>>[
- for (PollingDeviceDiscovery discoverer in _discoverers)
- for (Device device in await discoverer.devices)
+ for (final PollingDeviceDiscovery discoverer in _discoverers)
+ for (final Device device in await discoverer.devices)
await _deviceToMap(device),
];
}
/// Enable device events.
Future<void> enable(Map<String, dynamic> args) {
- for (PollingDeviceDiscovery discoverer in _discoverers) {
+ for (final PollingDeviceDiscovery discoverer in _discoverers) {
discoverer.startPolling();
}
return Future<void>.value();
@@ -807,7 +807,7 @@
/// Disable device events.
Future<void> disable(Map<String, dynamic> args) {
- for (PollingDeviceDiscovery discoverer in _discoverers) {
+ for (final PollingDeviceDiscovery discoverer in _discoverers) {
discoverer.stopPolling();
}
return Future<void>.value();
@@ -845,14 +845,14 @@
@override
void dispose() {
- for (PollingDeviceDiscovery discoverer in _discoverers) {
+ for (final PollingDeviceDiscovery discoverer in _discoverers) {
discoverer.dispose();
}
}
/// Return the device matching the deviceId field in the args.
Future<Device> _getDevice(String deviceId) async {
- for (PollingDeviceDiscovery discoverer in _discoverers) {
+ for (final PollingDeviceDiscovery discoverer in _discoverers) {
final Device device = (await discoverer.devices).firstWhere((Device device) => device.id == deviceId, orElse: () => null);
if (device != null) {
return device;
diff --git a/packages/flutter_tools/lib/src/commands/devices.dart b/packages/flutter_tools/lib/src/commands/devices.dart
index dbae667..5b478e9 100644
--- a/packages/flutter_tools/lib/src/commands/devices.dart
+++ b/packages/flutter_tools/lib/src/commands/devices.dart
@@ -38,7 +38,7 @@
final List<String> diagnostics = await deviceManager.getDeviceDiagnostics();
if (diagnostics.isNotEmpty) {
globals.printStatus('');
- for (String diagnostic in diagnostics) {
+ for (final String diagnostic in diagnostics) {
globals.printStatus('• $diagnostic', hangingIndent: 2);
}
}
diff --git a/packages/flutter_tools/lib/src/commands/generate.dart b/packages/flutter_tools/lib/src/commands/generate.dart
index 7b23bae..6d58bea 100644
--- a/packages/flutter_tools/lib/src/commands/generate.dart
+++ b/packages/flutter_tools/lib/src/commands/generate.dart
@@ -26,7 +26,7 @@
final FlutterProject flutterProject = FlutterProject.current();
final CodegenDaemon codegenDaemon = await codeGenerator.daemon(flutterProject);
codegenDaemon.startBuild();
- await for (CodegenStatus codegenStatus in codegenDaemon.buildResults) {
+ await for (final CodegenStatus codegenStatus in codegenDaemon.buildResults) {
if (codegenStatus == CodegenStatus.Failed) {
globals.printError('Code generation failed.');
break;
@@ -44,7 +44,7 @@
return null;
}
final Directory errorCache = errorCacheParent.childDirectory('error_cache');
- for (File errorFile in errorCache.listSync(recursive: true).whereType<File>()) {
+ for (final File errorFile in errorCache.listSync(recursive: true).whereType<File>()) {
try {
final List<Object> errorData = json.decode(errorFile.readAsStringSync()) as List<Object>;
final List<Object> stackData = errorData[1] as List<Object>;
diff --git a/packages/flutter_tools/lib/src/commands/ide_config.dart b/packages/flutter_tools/lib/src/commands/ide_config.dart
index fd1c6fc..f42899a 100644
--- a/packages/flutter_tools/lib/src/commands/ide_config.dart
+++ b/packages/flutter_tools/lib/src/commands/ide_config.dart
@@ -126,7 +126,7 @@
final Set<String> manifest = <String>{};
final Iterable<File> flutterFiles = _flutterRoot.listSync(recursive: true).whereType<File>();
- for (File srcFile in flutterFiles) {
+ for (final File srcFile in flutterFiles) {
final String relativePath = globals.fs.path.relative(srcFile.path, from: _flutterRoot.absolute.path);
// Skip template files in both the ide_templates and templates
@@ -186,7 +186,7 @@
// Look for any files under the template dir that don't exist in the manifest and remove
// them.
final Iterable<File> templateFiles = _templateDirectory.listSync(recursive: true).whereType<File>();
- for (File templateFile in templateFiles) {
+ for (final File templateFile in templateFiles) {
final String relativePath = globals.fs.path.relative(
templateFile.absolute.path,
from: _templateDirectory.absolute.path,
diff --git a/packages/flutter_tools/lib/src/commands/precache.dart b/packages/flutter_tools/lib/src/commands/precache.dart
index d9a6dd2..10b0316 100644
--- a/packages/flutter_tools/lib/src/commands/precache.dart
+++ b/packages/flutter_tools/lib/src/commands/precache.dart
@@ -66,7 +66,7 @@
globals.cache.useUnsignedMacBinaries = true;
}
final Set<DevelopmentArtifact> requiredArtifacts = <DevelopmentArtifact>{};
- for (DevelopmentArtifact artifact in DevelopmentArtifact.values) {
+ for (final DevelopmentArtifact artifact in DevelopmentArtifact.values) {
// Don't include unstable artifacts on stable branches.
if (!FlutterVersion.instance.isMaster && artifact.unstable) {
continue;
diff --git a/packages/flutter_tools/lib/src/commands/run.dart b/packages/flutter_tools/lib/src/commands/run.dart
index 0fe5581..e428579 100644
--- a/packages/flutter_tools/lib/src/commands/run.dart
+++ b/packages/flutter_tools/lib/src/commands/run.dart
@@ -245,7 +245,7 @@
deviceType = 'multiple';
deviceOsVersion = 'multiple';
isEmulator = false;
- for (Device device in devices) {
+ for (final Device device in devices) {
final TargetPlatform platform = await device.targetPlatform;
anyAndroidDevices = anyAndroidDevices || (platform == TargetPlatform.android);
anyIOSDevices = anyIOSDevices || (platform == TargetPlatform.ios);
@@ -426,7 +426,7 @@
'channel.', null);
}
- for (Device device in devices) {
+ for (final Device device in devices) {
if (!device.supportsFastStart && boolArg('fast-start')) {
globals.printStatus(
'Using --fast-start option with device ${device.name}, but this device '
@@ -456,7 +456,7 @@
}
if (hotMode) {
- for (Device device in devices) {
+ for (final Device device in devices) {
if (!device.supportsHotReload) {
throwToolExit('Hot reload is not supported by ${device.name}. Run with --no-hot.');
}
@@ -470,7 +470,7 @@
}
final FlutterProject flutterProject = FlutterProject.current();
final List<FlutterDevice> flutterDevices = <FlutterDevice>[
- for (Device device in devices)
+ for (final Device device in devices)
await FlutterDevice.create(
device,
flutterProject: flutterProject,
diff --git a/packages/flutter_tools/lib/src/commands/test.dart b/packages/flutter_tools/lib/src/commands/test.dart
index 21e2e0f..efdaecc 100644
--- a/packages/flutter_tools/lib/src/commands/test.dart
+++ b/packages/flutter_tools/lib/src/commands/test.dart
@@ -222,7 +222,7 @@
if (flutterProject.hasBuilders) {
final CodegenDaemon codegenDaemon = await codeGenerator.daemon(flutterProject);
codegenDaemon.startBuild();
- await for (CodegenStatus status in codegenDaemon.buildResults) {
+ await for (final CodegenStatus status in codegenDaemon.buildResults) {
if (status == CodegenStatus.Succeeded) {
break;
}
@@ -296,7 +296,7 @@
return true;
}
- for (DevFSFileContent entry in entries.values.whereType<DevFSFileContent>()) {
+ for (final DevFSFileContent entry in entries.values.whereType<DevFSFileContent>()) {
// Calling isModified to access file stats first in order for isModifiedAfter
// to work.
if (entry.isModified && entry.isModifiedAfter(lastModified)) {
diff --git a/packages/flutter_tools/lib/src/commands/update_packages.dart b/packages/flutter_tools/lib/src/commands/update_packages.dart
index 169e276..b892a4f 100644
--- a/packages/flutter_tools/lib/src/commands/update_packages.dart
+++ b/packages/flutter_tools/lib/src/commands/update_packages.dart
@@ -134,7 +134,7 @@
if (isVerifyOnly) {
bool needsUpdate = false;
globals.printStatus('Verifying pubspecs...');
- for (Directory directory in packages) {
+ for (final Directory directory in packages) {
PubspecYaml pubspec;
try {
pubspec = PubspecYaml(directory);
@@ -153,7 +153,7 @@
}
// all dependencies in the pubspec sorted lexically.
final Map<String, String> checksumDependencies = <String, String>{};
- for (PubspecLine data in pubspec.inputData) {
+ for (final PubspecLine data in pubspec.inputData) {
if (data is PubspecDependency && data.kind == DependencyKind.normal) {
checksumDependencies[data.name] = data.version;
}
@@ -194,7 +194,7 @@
final List<PubspecYaml> pubspecs = <PubspecYaml>[];
final Map<String, PubspecDependency> dependencies = <String, PubspecDependency>{};
final Set<String> specialDependencies = <String>{};
- for (Directory directory in packages) { // these are all the directories with pubspec.yamls we care about
+ for (final Directory directory in packages) { // these are all the directories with pubspec.yamls we care about
globals.printTrace('Reading pubspec.yaml from: ${directory.path}');
PubspecYaml pubspec;
try {
@@ -203,7 +203,7 @@
throwToolExit(message);
}
pubspecs.add(pubspec); // remember it for later
- for (PubspecDependency dependency in pubspec.allDependencies) { // this is all the explicit dependencies
+ for (final PubspecDependency dependency in pubspec.allDependencies) { // this is all the explicit dependencies
if (dependencies.containsKey(dependency.name)) {
// If we've seen the dependency before, make sure that we are
// importing it the same way. There's several ways to import a
@@ -272,13 +272,13 @@
// The transitive dependency tree for the fake package does not contain
// dependencies between Flutter SDK packages and pub packages. We add them
// here.
- for (PubspecYaml pubspec in pubspecs) {
+ for (final PubspecYaml pubspec in pubspecs) {
final String package = pubspec.name;
specialDependencies.add(package);
tree._versions[package] = pubspec.version;
assert(!tree._dependencyTree.containsKey(package));
tree._dependencyTree[package] = <String>{};
- for (PubspecDependency dependency in pubspec.dependencies) {
+ for (final PubspecDependency dependency in pubspec.dependencies) {
if (dependency.kind == DependencyKind.normal) {
tree._dependencyTree[package].add(dependency.name);
}
@@ -305,7 +305,7 @@
// to specific versions because they are explicitly pinned by their
// constraints. Here we list the names we earlier established we didn't
// need to pin because they come from the Dart or Flutter SDKs.
- for (PubspecYaml pubspec in pubspecs) {
+ for (final PubspecYaml pubspec in pubspecs) {
pubspec.apply(tree, specialDependencies);
}
@@ -318,7 +318,7 @@
final Stopwatch timer = Stopwatch()..start();
int count = 0;
- for (Directory dir in packages) {
+ for (final Directory dir in packages) {
await pub.get(context: PubContext.updatePackages, directory: dir.path, checkLastModified: false);
count += 1;
}
@@ -356,7 +356,7 @@
if (link.from != null) {
visited.add(link.from.to);
}
- for (String dependency in tree._dependencyTree[link.to]) {
+ for (final String dependency in tree._dependencyTree[link.to]) {
if (!visited.contains(dependency)) {
traversalQueue.addFirst(_DependencyLink(from: link, to: dependency));
}
@@ -483,7 +483,7 @@
// the dependency. So we track what is the "current" (or "last") dependency
// that we are dealing with using this variable.
PubspecDependency lastDependency;
- for (String line in lines) {
+ for (final String line in lines) {
if (lastDependency == null) {
// First we look to see if we're transitioning to a new top-level section.
// The PubspecHeader.parse static method can recognize those headers.
@@ -614,7 +614,7 @@
// overridden by subsequent entries in the same file and any that have the
// magic comment flagging them as auto-generated transitive dependencies
// that we added in a previous run.
- for (PubspecLine data in inputData) {
+ for (final PubspecLine data in inputData) {
if (data is PubspecDependency && data.kind != DependencyKind.overridden && !data.isTransitive && !data.isDevDependency) {
yield data;
}
@@ -623,7 +623,7 @@
/// This returns all regular dependencies and all dev dependencies.
Iterable<PubspecDependency> get allDependencies sync* {
- for (PubspecLine data in inputData) {
+ for (final PubspecLine data in inputData) {
if (data is PubspecDependency && data.kind != DependencyKind.overridden && !data.isTransitive) {
yield data;
}
@@ -652,7 +652,7 @@
// blank lines, and trailing blank lines, and ensuring the file ends with a
// newline. This cleanup lets us be a little more aggressive while building
// the output.
- for (PubspecLine data in inputData) {
+ for (final PubspecLine data in inputData) {
if (data is PubspecHeader) {
// This line was a header of some sort.
//
@@ -754,10 +754,10 @@
// Create a new set to hold the list of packages we've already processed, so
// that we don't redundantly process them multiple times.
final Set<String> done = <String>{};
- for (String package in directDependencies) {
+ for (final String package in directDependencies) {
transitiveDependencies.addAll(versions.getTransitiveDependenciesFor(package, seen: done, exclude: implied));
}
- for (String package in devDependencies) {
+ for (final String package in devDependencies) {
transitiveDevDependencies.addAll(versions.getTransitiveDependenciesFor(package, seen: done, exclude: implied));
}
@@ -770,10 +770,10 @@
}
// Add a line for each transitive dependency and transitive dev dependency using our magic string to recognize them later.
- for (String package in transitiveDependenciesAsList) {
+ for (final String package in transitiveDependenciesAsList) {
transitiveDependencyOutput.add(computeTransitiveDependencyLineFor(package));
}
- for (String package in transitiveDevDependenciesAsList) {
+ for (final String package in transitiveDevDependenciesAsList) {
transitiveDevDependencyOutput.add(computeTransitiveDependencyLineFor(package));
}
@@ -1148,10 +1148,10 @@
if (_kManuallyPinnedDependencies.isNotEmpty) {
globals.printStatus('WARNING: the following packages use hard-coded version constraints:');
final Set<String> allTransitive = <String>{
- for (PubspecDependency dependency in dependencies)
+ for (final PubspecDependency dependency in dependencies)
dependency.name,
};
- for (String package in _kManuallyPinnedDependencies.keys) {
+ for (final String package in _kManuallyPinnedDependencies.keys) {
// Don't add pinned dependency if it is not in the set of all transitive dependencies.
if (!allTransitive.contains(package)) {
globals.printStatus('Skipping $package because it was not transitive');
@@ -1162,7 +1162,7 @@
globals.printStatus(' - $package: $version');
}
}
- for (PubspecDependency dependency in dependencies) {
+ for (final PubspecDependency dependency in dependencies) {
if (!dependency.pointsToSdk) {
dependency.describeForFakePubspec(result, overrides);
}
@@ -1256,7 +1256,7 @@
// because they were omitted from pubspec.yaml used for 'pub upgrade' run.
return;
}
- for (String dependency in _dependencyTree[package]) {
+ for (final String dependency in _dependencyTree[package]) {
if (!seen.contains(dependency)) {
if (!exclude.contains(dependency)) {
yield dependency;
@@ -1279,7 +1279,7 @@
int lowerCheck = 0;
int upperCheck = 0;
final List<String> sortedNames = names.toList()..sort();
- for (String name in sortedNames) {
+ for (final String name in sortedNames) {
final String version = getVersion(name);
assert(version != '');
if (version == null) {
@@ -1287,7 +1287,7 @@
}
final String value = '$name: $version';
// Each code unit is 16 bits.
- for (int codeUnit in value.codeUnits) {
+ for (final int codeUnit in value.codeUnits) {
final int upper = codeUnit >> 8;
final int lower = codeUnit & 0xFF;
lowerCheck = (lowerCheck + upper) % 255;
diff --git a/packages/flutter_tools/lib/src/compile.dart b/packages/flutter_tools/lib/src/compile.dart
index 30a03bb..af7ce54 100644
--- a/packages/flutter_tools/lib/src/compile.dart
+++ b/packages/flutter_tools/lib/src/compile.dart
@@ -198,7 +198,7 @@
PackageUriMapper(String scriptPath, String packagesPath, String fileSystemScheme, List<String> fileSystemRoots) {
final Map<String, Uri> packageMap = PackageMap(globals.fs.path.absolute(packagesPath)).map;
final String scriptUri = Uri.file(scriptPath, windows: globals.platform.isWindows).toString();
- for (String packageName in packageMap.keys) {
+ for (final String packageName in packageMap.keys) {
final String prefix = packageMap[packageName].toString();
// Only perform a multi-root mapping if there are multiple roots.
if (fileSystemScheme != null
@@ -227,7 +227,7 @@
return null;
}
final String scriptUri = Uri.file(scriptPath, windows: globals.platform.isWindows).toString();
- for (String uriPrefix in _uriPrefixes) {
+ for (final String uriPrefix in _uriPrefixes) {
if (scriptUri.startsWith(uriPrefix)) {
return Uri.parse('package:$_packageName/${scriptUri.substring(uriPrefix.length)}');
}
@@ -314,7 +314,7 @@
sdkRoot,
'--target=$targetModel',
'-Ddart.developer.causal_async_stacks=$causalAsyncStacks',
- for (Object dartDefine in dartDefines)
+ for (final Object dartDefine in dartDefines)
'-D$dartDefine',
..._buildModeOptions(buildMode),
if (trackWidgetCreation) '--track-widget-creation',
@@ -336,7 +336,7 @@
depFilePath,
],
if (fileSystemRoots != null)
- for (String root in fileSystemRoots) ...<String>[
+ for (final String root in fileSystemRoots) ...<String>[
'--filesystem-root',
root,
],
@@ -608,7 +608,7 @@
: '';
_server.stdin.writeln('recompile $mainUri$inputKey');
globals.printTrace('<- recompile $mainUri$inputKey');
- for (Uri fileUri in request.invalidatedFiles) {
+ for (final Uri fileUri in request.invalidatedFiles) {
_server.stdin.writeln(_mapFileUri(fileUri.toString(), packageUriMapper));
globals.printTrace('${_mapFileUri(fileUri.toString(), packageUriMapper)}');
}
@@ -651,7 +651,7 @@
'--incremental',
'--target=$targetModel',
'-Ddart.developer.causal_async_stacks=$causalAsyncStacks',
- for (Object dartDefine in dartDefines)
+ for (final Object dartDefine in dartDefines)
'-D$dartDefine',
if (outputPath != null) ...<String>[
'--output-dill',
@@ -667,7 +667,7 @@
..._buildModeOptions(buildMode),
if (trackWidgetCreation) '--track-widget-creation',
if (fileSystemRoots != null)
- for (String root in fileSystemRoots) ...<String>[
+ for (final String root in fileSystemRoots) ...<String>[
'--filesystem-root',
root,
],
@@ -824,7 +824,7 @@
}
if (fileSystemRoots != null) {
- for (String root in fileSystemRoots) {
+ for (final String root in fileSystemRoots) {
if (filename.startsWith(root)) {
return Uri(
scheme: fileSystemScheme, path: filename.substring(root.length))
diff --git a/packages/flutter_tools/lib/src/dart/pub.dart b/packages/flutter_tools/lib/src/dart/pub.dart
index 375fdd3..a2a5c4e 100644
--- a/packages/flutter_tools/lib/src/dart/pub.dart
+++ b/packages/flutter_tools/lib/src/dart/pub.dart
@@ -29,7 +29,7 @@
// We have server-side tooling that assumes the values are consistent.
class PubContext {
PubContext._(this._values) {
- for (String item in _values) {
+ for (final String item in _values) {
if (!_validContext.hasMatch(item)) {
throw ArgumentError.value(
_values, 'value', 'Must match RegExp ${_validContext.pattern}');
diff --git a/packages/flutter_tools/lib/src/desktop_device.dart b/packages/flutter_tools/lib/src/desktop_device.dart
index 0922824..65a2339 100644
--- a/packages/flutter_tools/lib/src/desktop_device.dart
+++ b/packages/flutter_tools/lib/src/desktop_device.dart
@@ -130,7 +130,7 @@
bool succeeded = true;
// Walk a copy of _runningProcesses, since the exit handler removes from the
// set.
- for (Process process in Set<Process>.from(_runningProcesses)) {
+ for (final Process process in Set<Process>.from(_runningProcesses)) {
succeeded &= process.kill();
}
return succeeded;
diff --git a/packages/flutter_tools/lib/src/device.dart b/packages/flutter_tools/lib/src/device.dart
index d7ac151..9109845 100644
--- a/packages/flutter_tools/lib/src/device.dart
+++ b/packages/flutter_tools/lib/src/device.dart
@@ -118,7 +118,7 @@
}
// Match on a id or name starting with [deviceId].
- for (Device device in devices.where(startsWithDeviceId)) {
+ for (final Device device in devices.where(startsWithDeviceId)) {
yield device;
}
}
@@ -136,8 +136,8 @@
/// Return the list of all connected devices.
Stream<Device> getAllConnectedDevices() async* {
- for (DeviceDiscovery discoverer in _platformDiscoverers) {
- for (Device device in await discoverer.devices) {
+ for (final DeviceDiscovery discoverer in _platformDiscoverers) {
+ for (final Device device in await discoverer.devices) {
yield device;
}
}
@@ -151,7 +151,7 @@
/// Get diagnostics about issues with any connected devices.
Future<List<String>> getDeviceDiagnostics() async {
return <String>[
- for (DeviceDiscovery discoverer in _platformDiscoverers)
+ for (final DeviceDiscovery discoverer in _platformDiscoverers)
...await discoverer.getDiagnostics(),
];
}
@@ -178,7 +178,7 @@
// compilers, and web requires an entirely different resident runner.
if (hasSpecifiedAllDevices) {
devices = <Device>[
- for (Device device in devices)
+ for (final Device device in devices)
if (await device.targetPlatform != TargetPlatform.fuchsia_arm64 &&
await device.targetPlatform != TargetPlatform.fuchsia_x64 &&
await device.targetPlatform != TargetPlatform.web_javascript)
@@ -191,7 +191,7 @@
// 'android' folder then don't attempt to launch with an Android device.
if (devices.length > 1 && !hasSpecifiedDeviceId) {
devices = <Device>[
- for (Device device in devices)
+ for (final Device device in devices)
if (isDeviceSupportedForProject(device, flutterProject))
device,
];
@@ -460,7 +460,7 @@
// Extract device information
final List<List<String>> table = <List<String>>[];
- for (Device device in devices) {
+ for (final Device device in devices) {
String supportIndicator = device.isSupported() ? '' : ' (unsupported)';
final TargetPlatform targetPlatform = await device.targetPlatform;
if (await device.isLocalEmulator) {
@@ -478,12 +478,12 @@
// Calculate column widths
final List<int> indices = List<int>.generate(table[0].length - 1, (int i) => i);
List<int> widths = indices.map<int>((int i) => 0).toList();
- for (List<String> row in table) {
+ for (final List<String> row in table) {
widths = indices.map<int>((int i) => math.max(widths[i], row[i].length)).toList();
}
// Join columns into lines of text
- for (List<String> row in table) {
+ for (final List<String> row in table) {
yield indices.map<String>((int i) => row[i].padRight(widths[i])).join(' • ') + ' • ${row.last}';
}
}
diff --git a/packages/flutter_tools/lib/src/doctor.dart b/packages/flutter_tools/lib/src/doctor.dart
index ccaf690..366e2f1 100644
--- a/packages/flutter_tools/lib/src/doctor.dart
+++ b/packages/flutter_tools/lib/src/doctor.dart
@@ -147,7 +147,7 @@
/// Return a list of [ValidatorTask] objects and starts validation on all
/// objects in [validators].
List<ValidatorTask> startValidatorTasks() => <ValidatorTask>[
- for (DoctorValidator validator in validators)
+ for (final DoctorValidator validator in validators)
ValidatorTask(
validator,
// We use an asyncGuard() here to be absolutely certain that
@@ -178,7 +178,7 @@
bool missingComponent = false;
bool sawACrash = false;
- for (DoctorValidator validator in validators) {
+ for (final DoctorValidator validator in validators) {
final StringBuffer lineBuffer = StringBuffer();
ValidationResult result;
try {
@@ -248,7 +248,7 @@
bool doctorResult = true;
int issues = 0;
- for (ValidatorTask validatorTask in startValidatorTasks()) {
+ for (final ValidatorTask validatorTask in startValidatorTasks()) {
final DoctorValidator validator = validatorTask.validator;
final Status status = Status.withSpinner(
timeout: timeoutConfiguration.fastOperation,
@@ -291,12 +291,12 @@
hangingIndent: result.leadingBox.length + 1);
}
- for (ValidationMessage message in result.messages) {
+ for (final ValidationMessage message in result.messages) {
if (message.type != ValidationMessageType.information || verbose == true) {
int hangingIndent = 2;
int indent = 4;
final String indicator = showColor ? message.coloredIndicator : message.indicator;
- for (String line in '$indicator ${message.message}'.split('\n')) {
+ for (final String line in '$indicator ${message.message}'.split('\n')) {
globals.printStatus(line, hangingIndent: hangingIndent, indent: indent, emphasis: true);
// Only do hanging indent for the first line.
hangingIndent = 0;
@@ -402,7 +402,7 @@
@override
Future<ValidationResult> validate() async {
final List<ValidatorTask> tasks = <ValidatorTask>[
- for (DoctorValidator validator in subValidators)
+ for (final DoctorValidator validator in subValidators)
ValidatorTask(
validator,
asyncGuard<ValidationResult>(() => validator.validate()),
@@ -410,7 +410,7 @@
];
final List<ValidationResult> results = <ValidationResult>[];
- for (ValidatorTask subValidator in tasks) {
+ for (final ValidatorTask subValidator in tasks) {
_currentSlowWarning = subValidator.validator.slowWarning;
try {
results.add(await subValidator.result);
@@ -429,7 +429,7 @@
final List<ValidationMessage> mergedMessages = <ValidationMessage>[];
String statusInfo;
- for (ValidationResult result in results) {
+ for (final ValidationResult result in results) {
statusInfo ??= result.statusInfo;
switch (result.type) {
case ValidationType.installed:
@@ -753,7 +753,7 @@
validators.add(validator);
}
- for (FileSystemEntity dir in globals.fs.directory(homeDirPath).listSync()) {
+ for (final FileSystemEntity dir in globals.fs.directory(homeDirPath).listSync()) {
if (dir is Directory) {
final String name = globals.fs.path.basename(dir.path);
IntelliJValidator._idToTitle.forEach((String id, String title) {
@@ -808,10 +808,10 @@
.map<List<FileSystemEntity>>((Directory dir) => dir.existsSync() ? dir.listSync() : <FileSystemEntity>[])
.expand<FileSystemEntity>((List<FileSystemEntity> mappedDirs) => mappedDirs)
.whereType<Directory>();
- for (Directory dir in installDirs) {
+ for (final Directory dir in installDirs) {
checkForIntelliJ(dir);
if (!dir.path.endsWith('.app')) {
- for (FileSystemEntity subdir in dir.listSync()) {
+ for (final FileSystemEntity subdir in dir.listSync()) {
if (subdir is Directory) {
checkForIntelliJ(subdir);
}
diff --git a/packages/flutter_tools/lib/src/emulator.dart b/packages/flutter_tools/lib/src/emulator.dart
index d29f281..3cfcac6 100644
--- a/packages/flutter_tools/lib/src/emulator.dart
+++ b/packages/flutter_tools/lib/src/emulator.dart
@@ -250,7 +250,7 @@
// Extract emulators information
final List<List<String>> table = <List<String>>[
- for (Emulator emulator in emulators)
+ for (final Emulator emulator in emulators)
<String>[
emulator.id ?? '',
emulator.name ?? '',
@@ -262,7 +262,7 @@
// Calculate column widths
final List<int> indices = List<int>.generate(table[0].length - 1, (int i) => i);
List<int> widths = indices.map<int>((int i) => 0).toList();
- for (List<String> row in table) {
+ for (final List<String> row in table) {
widths = indices.map<int>((int i) => math.max(widths[i], row[i].length)).toList();
}
diff --git a/packages/flutter_tools/lib/src/flutter_manifest.dart b/packages/flutter_tools/lib/src/flutter_manifest.dart
index f3351a3..36c25ef 100644
--- a/packages/flutter_tools/lib/src/flutter_manifest.dart
+++ b/packages/flutter_tools/lib/src/flutter_manifest.dart
@@ -197,7 +197,7 @@
return const <Uri>[];
}
final List<Uri> results = <Uri>[];
- for (Object asset in assets) {
+ for (final Object asset in assets) {
if (asset is! String || asset == null || asset == '') {
globals.printError('Asset manifest contains a null or empty uri.');
continue;
@@ -225,7 +225,7 @@
}
final List<Font> fonts = <Font>[];
- for (Map<String, dynamic> fontFamily in _rawFontsDescriptor) {
+ for (final Map<String, dynamic> fontFamily in _rawFontsDescriptor) {
final YamlList fontFiles = fontFamily['fonts'] as YamlList;
final String familyName = fontFamily['family'] as String;
if (familyName == null) {
@@ -238,7 +238,7 @@
}
final List<FontAsset> fontAssets = <FontAsset>[];
- for (Map<dynamic, dynamic> fontFile in fontFiles.cast<Map<dynamic, dynamic>>()) {
+ for (final Map<dynamic, dynamic> fontFile in fontFiles.cast<Map<dynamic, dynamic>>()) {
final String asset = fontFile['asset'] as String;
if (asset == null) {
globals.printError('Warning: Missing asset in fonts for $familyName', emphasis: true);
@@ -431,7 +431,7 @@
continue;
}
final YamlMap fontMap = fontListEntry as YamlMap;
- for (dynamic key in fontMap.keys.where((dynamic key) => key != 'family' && key != 'fonts')) {
+ for (final dynamic key in fontMap.keys.where((dynamic key) => key != 'family' && key != 'fonts')) {
errors.add('Unexpected child "$key" found under "fonts".');
}
if (fontMap['family'] != null && fontMap['family'] is! String) {
diff --git a/packages/flutter_tools/lib/src/fuchsia/fuchsia_build.dart b/packages/flutter_tools/lib/src/fuchsia/fuchsia_build.dart
index 24f1419..9ccc04c 100644
--- a/packages/flutter_tools/lib/src/fuchsia/fuchsia_build.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/fuchsia_build.dart
@@ -148,7 +148,7 @@
await destFile.create(recursive: true);
final IOSink outFile = destFile.openWrite();
- for (String path in assets.entries.keys) {
+ for (final String path in assets.entries.keys) {
outFile.write('data/$appName/$path=$assetDir/$path\n');
}
await outFile.flush();
diff --git a/packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart b/packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart
index 5ae5a89..21e1fbe 100644
--- a/packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/fuchsia_device.dart
@@ -164,7 +164,7 @@
@visibleForTesting
List<FuchsiaDevice> parseListDevices(String text) {
final List<FuchsiaDevice> devices = <FuchsiaDevice>[];
- for (String rawLine in text.trim().split('\n')) {
+ for (final String rawLine in text.trim().split('\n')) {
final String line = rawLine.trim();
// ['ip', 'device name']
final List<String> words = line.split(' ');
@@ -501,7 +501,7 @@
return null;
}
final List<int> ports = <int>[];
- for (String path in findOutput.split('\n')) {
+ for (final String path in findOutput.split('\n')) {
if (path == '') {
continue;
}
@@ -512,7 +512,7 @@
return null;
}
final String lsOutput = lsResult.stdout;
- for (String line in lsOutput.split('\n')) {
+ for (final String line in lsOutput.split('\n')) {
if (line == '') {
continue;
}
@@ -557,7 +557,7 @@
// TODO(jonahwilliams): replacing this with the hub will require an update
// to the flutter_runner.
Future<int> findIsolatePort(String isolateName, List<int> ports) async {
- for (int port in ports) {
+ for (final int port in ports) {
try {
// Note: The square-bracket enclosure for using the IPv6 loopback
// didn't appear to work, but when assigning to the IPv4 loopback device,
@@ -567,7 +567,7 @@
final VMService vmService = await VMService.connect(uri);
await vmService.getVM();
await vmService.refreshViews();
- for (FlutterView flutterView in vmService.vm.views) {
+ for (final FlutterView flutterView in vmService.vm.views) {
if (flutterView.uiIsolate == null) {
continue;
}
@@ -647,7 +647,7 @@
Future<void> _findIsolate() async {
final List<int> ports = await _device.servicePorts();
- for (int port in ports) {
+ for (final int port in ports) {
VMService service;
if (_ports.containsKey(port)) {
service = _ports[port];
@@ -664,7 +664,7 @@
}
await service.getVM();
await service.refreshViews();
- for (FlutterView flutterView in service.vm.views) {
+ for (final FlutterView flutterView in service.vm.views) {
if (flutterView.uiIsolate == null) {
continue;
}
@@ -753,7 +753,7 @@
@override
Future<void> dispose() async {
- for (ForwardedPort port in forwardedPorts) {
+ for (final ForwardedPort port in forwardedPorts) {
await unforward(port);
}
}
diff --git a/packages/flutter_tools/lib/src/fuchsia/tiles_ctl.dart b/packages/flutter_tools/lib/src/fuchsia/tiles_ctl.dart
index 5357a9f..21ab56f 100644
--- a/packages/flutter_tools/lib/src/fuchsia/tiles_ctl.dart
+++ b/packages/flutter_tools/lib/src/fuchsia/tiles_ctl.dart
@@ -26,7 +26,7 @@
globals.printTrace('tiles_ctl is not running');
return -1;
}
- for (MapEntry<int, String> entry in runningApps.entries) {
+ for (final MapEntry<int, String> entry in runningApps.entries) {
if (entry.value.contains('$appName#meta')) {
return entry.key;
}
@@ -70,7 +70,7 @@
return null;
}
// Find lines beginning with 'Tile'
- for (String line in result.stdout.split('\n')) {
+ for (final String line in result.stdout.split('\n')) {
final List<String> words = line.split(' ');
if (words.isNotEmpty && words[0] == 'Tile') {
final int key = int.tryParse(words[2]);
diff --git a/packages/flutter_tools/lib/src/intellij/intellij.dart b/packages/flutter_tools/lib/src/intellij/intellij.dart
index aa2fd20..48a9a50 100644
--- a/packages/flutter_tools/lib/src/intellij/intellij.dart
+++ b/packages/flutter_tools/lib/src/intellij/intellij.dart
@@ -22,7 +22,7 @@
String title, {
Version minVersion,
}) {
- for (String packageName in packageNames) {
+ for (final String packageName in packageNames) {
if (!_hasPackage(packageName)) {
continue;
}
diff --git a/packages/flutter_tools/lib/src/ios/devices.dart b/packages/flutter_tools/lib/src/ios/devices.dart
index 5b5fd27..c9b4341 100644
--- a/packages/flutter_tools/lib/src/ios/devices.dart
+++ b/packages/flutter_tools/lib/src/ios/devices.dart
@@ -660,7 +660,7 @@
@override
void dispose() {
- for (StreamSubscription<ServiceEvent> loggingSubscription in _loggingSubscriptions) {
+ for (final StreamSubscription<ServiceEvent> loggingSubscription in _loggingSubscriptions) {
loggingSubscription.cancel();
}
_idevicesyslogProcess?.kill();
@@ -747,7 +747,7 @@
@override
Future<void> dispose() async {
- for (ForwardedPort forwardedPort in _forwardedPorts) {
+ for (final ForwardedPort forwardedPort in _forwardedPorts) {
forwardedPort.dispose();
}
}
diff --git a/packages/flutter_tools/lib/src/ios/mac.dart b/packages/flutter_tools/lib/src/ios/mac.dart
index 7974313..a220b42 100644
--- a/packages/flutter_tools/lib/src/ios/mac.dart
+++ b/packages/flutter_tools/lib/src/ios/mac.dart
@@ -371,7 +371,7 @@
}
if (autoSigningConfigs != null) {
- for (MapEntry<String, String> signingConfig in autoSigningConfigs.entries) {
+ for (final MapEntry<String, String> signingConfig in autoSigningConfigs.entries) {
buildCommands.add('${signingConfig.key}=${signingConfig.value}');
}
buildCommands.add('-allowProvisioningUpdates');
@@ -379,7 +379,7 @@
}
final List<FileSystemEntity> contents = app.project.hostAppRoot.listSync();
- for (FileSystemEntity entity in contents) {
+ for (final FileSystemEntity entity in contents) {
if (globals.fs.path.extension(entity.path) == '.xcworkspace') {
buildCommands.addAll(<String>[
'-workspace', globals.fs.path.basename(entity.path),
@@ -426,7 +426,7 @@
Future<void> listenToScriptOutputLine() async {
final List<String> lines = await scriptOutputPipeFile.readAsLines();
- for (String line in lines) {
+ for (final String line in lines) {
if (line == 'done' || line == 'all done') {
buildSubStatus?.stop();
buildSubStatus = null;
diff --git a/packages/flutter_tools/lib/src/ios/simulators.dart b/packages/flutter_tools/lib/src/ios/simulators.dart
index 748d1dc..72b7aa6 100644
--- a/packages/flutter_tools/lib/src/ios/simulators.dart
+++ b/packages/flutter_tools/lib/src/ios/simulators.dart
@@ -112,10 +112,10 @@
final Map<String, dynamic> devicesSection = await _list(SimControlListSection.devices);
- for (String deviceCategory in devicesSection.keys) {
+ for (final String deviceCategory in devicesSection.keys) {
final Object devicesData = devicesSection[deviceCategory];
if (devicesData != null && devicesData is List<dynamic>) {
- for (Map<String, dynamic> data in devicesData.map<Map<String, dynamic>>(castStringKeyedMap)) {
+ for (final Map<String, dynamic> data in devicesData.map<Map<String, dynamic>>(castStringKeyedMap)) {
devices.add(SimDevice(deviceCategory, data));
}
}
@@ -809,7 +809,7 @@
@override
Future<void> dispose() async {
- for (ForwardedPort port in _ports) {
+ for (final ForwardedPort port in _ports) {
await unforward(port);
}
}
diff --git a/packages/flutter_tools/lib/src/ios/xcodeproj.dart b/packages/flutter_tools/lib/src/ios/xcodeproj.dart
index ff966cb..09b50ca 100644
--- a/packages/flutter_tools/lib/src/ios/xcodeproj.dart
+++ b/packages/flutter_tools/lib/src/ios/xcodeproj.dart
@@ -106,7 +106,7 @@
localsBuffer.writeln('#!/bin/sh');
localsBuffer.writeln('# This is a generated file; do not edit or check into version control.');
- for (String line in xcodeBuildSettings) {
+ for (final String line in xcodeBuildSettings) {
localsBuffer.writeln('export "$line"');
}
@@ -372,7 +372,7 @@
Map<String, String> parseXcodeBuildSettings(String showBuildSettingsOutput) {
final Map<String, String> settings = <String, String>{};
- for (Match match in showBuildSettingsOutput.split('\n').map<Match>(_settingExpr.firstMatch)) {
+ for (final Match match in showBuildSettingsOutput.split('\n').map<Match>(_settingExpr.firstMatch)) {
if (match != null) {
settings[match[1]] = match[2];
}
@@ -402,7 +402,7 @@
final List<String> buildConfigurations = <String>[];
final List<String> schemes = <String>[];
List<String> collector;
- for (String line in output.split('\n')) {
+ for (final String line in output.split('\n')) {
if (line.isEmpty) {
collector = null;
continue;
@@ -454,7 +454,7 @@
/// regard to case.
bool hasBuildConfiguratinForBuildMode(String buildMode) {
buildMode = buildMode.toLowerCase();
- for (String name in buildConfigurations) {
+ for (final String name in buildConfigurations) {
if (name.toLowerCase() == buildMode) {
return true;
}
diff --git a/packages/flutter_tools/lib/src/linux/makefile.dart b/packages/flutter_tools/lib/src/linux/makefile.dart
index 3569082..94331ac 100644
--- a/packages/flutter_tools/lib/src/linux/makefile.dart
+++ b/packages/flutter_tools/lib/src/linux/makefile.dart
@@ -11,7 +11,7 @@
///
/// Returns `null` if it cannot be found.
String makefileExecutableName(LinuxProject project) {
- for (String line in project.makeFile.readAsLinesSync()) {
+ for (final String line in project.makeFile.readAsLinesSync()) {
if (line.startsWith(_kBinaryNameVariable)) {
return line.split(_kBinaryNameVariable).last.trim();
}
diff --git a/packages/flutter_tools/lib/src/mdns_discovery.dart b/packages/flutter_tools/lib/src/mdns_discovery.dart
index 033e097..dea4976 100644
--- a/packages/flutter_tools/lib/src/mdns_discovery.dart
+++ b/packages/flutter_tools/lib/src/mdns_discovery.dart
@@ -75,7 +75,7 @@
String domainName;
if (applicationId != null) {
- for (String name in uniqueDomainNames) {
+ for (final String name in uniqueDomainNames) {
if (name.toLowerCase().startsWith(applicationId.toLowerCase())) {
domainName = name;
break;
@@ -206,10 +206,10 @@
}
void _logInterfaces(List<NetworkInterface> interfaces) {
- for (NetworkInterface interface in interfaces) {
+ for (final NetworkInterface interface in interfaces) {
if (globals.logger.isVerbose) {
globals.printTrace('Found interface "${interface.name}":');
- for (InternetAddress address in interface.addresses) {
+ for (final InternetAddress address in interface.addresses) {
final String linkLocal = address.isLinkLocal ? 'link local' : '';
globals.printTrace('\tBound address: "${address.address}" $linkLocal');
}
diff --git a/packages/flutter_tools/lib/src/plugins.dart b/packages/flutter_tools/lib/src/plugins.dart
index 22f506b..cd7eb43 100644
--- a/packages/flutter_tools/lib/src/plugins.dart
+++ b/packages/flutter_tools/lib/src/plugins.dart
@@ -321,10 +321,10 @@
final StringBuffer flutterPluginsBuffer = StringBuffer('# $info\n');
final Set<String> pluginNames = <String>{};
- for (Plugin plugin in plugins) {
+ for (final Plugin plugin in plugins) {
pluginNames.add(plugin.name);
}
- for (Plugin plugin in plugins) {
+ for (final Plugin plugin in plugins) {
flutterPluginsBuffer.write('${plugin.name}=${escapePath(plugin.path)}\n');
directAppDependencies.add(<String, dynamic>{
'name': plugin.name,
@@ -439,7 +439,7 @@
List<Map<String, dynamic>> _extractPlatformMaps(List<Plugin> plugins, String type) {
final List<Map<String, dynamic>> pluginConfigs = <Map<String, dynamic>>[];
- for (Plugin p in plugins) {
+ for (final Plugin p in plugins) {
final PluginPlatform platformPlugin = p.platforms[type];
if (platformPlugin != null) {
pluginConfigs.add(platformPlugin.toMap());
@@ -484,7 +484,7 @@
templateContext['needsShim'] = false;
// If a plugin is using an embedding version older than 2.0 and the app is using 2.0,
// then add shim for the old plugins.
- for (Map<String, dynamic> plugin in androidPlugins) {
+ for (final Map<String, dynamic> plugin in androidPlugins) {
if (plugin['supportsEmbeddingV1'] as bool && !(plugin['supportsEmbeddingV2'] as bool)) {
templateContext['needsShim'] = true;
if (project.isModule) {
@@ -504,7 +504,7 @@
break;
case AndroidEmbeddingVersion.v1:
default:
- for (Map<String, dynamic> plugin in androidPlugins) {
+ for (final Map<String, dynamic> plugin in androidPlugins) {
if (!(plugin['supportsEmbeddingV1'] as bool) && plugin['supportsEmbeddingV2'] as bool) {
throwToolExit(
'The plugin `${plugin['name']}` requires your app to be migrated to '
diff --git a/packages/flutter_tools/lib/src/project.dart b/packages/flutter_tools/lib/src/project.dart
index 234a266..6d14011 100644
--- a/packages/flutter_tools/lib/src/project.dart
+++ b/packages/flutter_tools/lib/src/project.dart
@@ -699,7 +699,7 @@
throwToolExit('Error reading $appManifestFile even though it exists. '
'Please ensure that you have read permission to this file and try again.');
}
- for (xml.XmlElement metaData in document.findAllElements('meta-data')) {
+ for (final xml.XmlElement metaData in document.findAllElements('meta-data')) {
final String name = metaData.getAttribute('android:name');
if (name == 'flutterEmbedding') {
final String embeddingVersionString = metaData.getAttribute('android:value');
@@ -764,7 +764,7 @@
if (!file.existsSync()) {
return null;
}
- for (String line in file.readAsLinesSync()) {
+ for (final String line in file.readAsLinesSync()) {
final Match match = regExp.firstMatch(line);
if (match != null) {
return match;
diff --git a/packages/flutter_tools/lib/src/protocol_discovery.dart b/packages/flutter_tools/lib/src/protocol_discovery.dart
index 6133048..a13878e 100644
--- a/packages/flutter_tools/lib/src/protocol_discovery.dart
+++ b/packages/flutter_tools/lib/src/protocol_discovery.dart
@@ -157,7 +157,7 @@
StreamController<T> get _streamController {
_streamControllerInstance ??= StreamController<T>.broadcast(onListen: () {
- for (dynamic event in _events) {
+ for (final dynamic event in _events) {
assert(T is! List);
if (event is T) {
_streamControllerInstance.add(event);
diff --git a/packages/flutter_tools/lib/src/proxy_validator.dart b/packages/flutter_tools/lib/src/proxy_validator.dart
index 3a8931e..95896f2 100644
--- a/packages/flutter_tools/lib/src/proxy_validator.dart
+++ b/packages/flutter_tools/lib/src/proxy_validator.dart
@@ -34,7 +34,7 @@
messages.add(ValidationMessage.hint('NO_PROXY is not set'));
} else {
messages.add(ValidationMessage('NO_PROXY is $_noProxy'));
- for (String host in const <String>['127.0.0.1', 'localhost']) {
+ for (final String host in const <String>['127.0.0.1', 'localhost']) {
final ValidationMessage msg = _noProxy.contains(host)
? ValidationMessage('NO_PROXY contains $host')
: ValidationMessage.hint('NO_PROXY does not contain $host');
diff --git a/packages/flutter_tools/lib/src/reporting/github_template.dart b/packages/flutter_tools/lib/src/reporting/github_template.dart
index 367232e..ff35e3b 100644
--- a/packages/flutter_tools/lib/src/reporting/github_template.dart
+++ b/packages/flutter_tools/lib/src/reporting/github_template.dart
@@ -99,7 +99,7 @@
description.writeln('### Plugins');
// Format is:
// camera=/path/to/.pub-cache/hosted/pub.dartlang.org/camera-0.5.7+2/
- for (String plugin in project.flutterPluginsFile.readAsLinesSync()) {
+ for (final String plugin in project.flutterPluginsFile.readAsLinesSync()) {
final List<String> pluginParts = plugin.split('=');
if (pluginParts.length != 2) {
continue;
diff --git a/packages/flutter_tools/lib/src/resident_runner.dart b/packages/flutter_tools/lib/src/resident_runner.dart
index 15e4b03..9e46694 100644
--- a/packages/flutter_tools/lib/src/resident_runner.dart
+++ b/packages/flutter_tools/lib/src/resident_runner.dart
@@ -249,7 +249,7 @@
return;
}
final List<Future<void>> futures = <Future<void>>[];
- for (FlutterView view in flutterViews) {
+ for (final FlutterView view in flutterViews) {
if (view != null && view.uiIsolate != null) {
assert(!view.uiIsolate.pauseEvent.isPauseEvent);
futures.add(view.uiIsolate.flutterExit());
@@ -283,7 +283,7 @@
final Uri deviceEntryUri = devFS.baseUri.resolveUri(globals.fs.path.toUri(entryPath));
final Uri devicePackagesUri = devFS.baseUri.resolve('.packages');
return <Future<Map<String, dynamic>>>[
- for (FlutterView view in views)
+ for (final FlutterView view in views)
view.uiIsolate.reloadSources(
pause: pause,
rootLibUri: deviceEntryUri,
@@ -302,68 +302,68 @@
}
Future<void> debugDumpApp() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterDebugDumpApp();
}
}
Future<void> debugDumpRenderTree() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterDebugDumpRenderTree();
}
}
Future<void> debugDumpLayerTree() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterDebugDumpLayerTree();
}
}
Future<void> debugDumpSemanticsTreeInTraversalOrder() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterDebugDumpSemanticsTreeInTraversalOrder();
}
}
Future<void> debugDumpSemanticsTreeInInverseHitTestOrder() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterDebugDumpSemanticsTreeInInverseHitTestOrder();
}
}
Future<void> toggleDebugPaintSizeEnabled() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterToggleDebugPaintSizeEnabled();
}
}
Future<void> toggleDebugCheckElevationsEnabled() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterToggleDebugCheckElevationsEnabled();
}
}
Future<void> debugTogglePerformanceOverlayOverride() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterTogglePerformanceOverlayOverride();
}
}
Future<void> toggleWidgetInspector() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterToggleWidgetInspector();
}
}
Future<void> toggleProfileWidgetBuilds() async {
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterToggleProfileWidgetBuilds();
}
}
Future<String> togglePlatform({ String from }) async {
final String to = nextPlatform(from, featureFlags);
- for (FlutterView view in views) {
+ for (final FlutterView view in views) {
await view.uiIsolate.flutterPlatformOverride(to);
}
return to;
@@ -578,7 +578,7 @@
/// Returns `true` if any of the devices is running Android Q.
Future<bool> hasDeviceRunningAndroidQ(List<FlutterDevice> flutterDevices) async {
- for (FlutterDevice flutterDevice in flutterDevices) {
+ for (final FlutterDevice flutterDevice in flutterDevices) {
final String sdkNameAndVersion = await flutterDevice.device.sdkNameAndVersion;
if (sdkNameAndVersion != null && sdkNameAndVersion.startsWith('Android 10')) {
return true;
@@ -755,77 +755,77 @@
Future<void> refreshViews() async {
final List<Future<void>> futures = <Future<void>>[
- for (FlutterDevice device in flutterDevices) device.refreshViews(),
+ for (final FlutterDevice device in flutterDevices) device.refreshViews(),
];
await Future.wait(futures);
}
Future<void> debugDumpApp() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugDumpApp();
}
}
Future<void> debugDumpRenderTree() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugDumpRenderTree();
}
}
Future<void> debugDumpLayerTree() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugDumpLayerTree();
}
}
Future<void> debugDumpSemanticsTreeInTraversalOrder() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugDumpSemanticsTreeInTraversalOrder();
}
}
Future<void> debugDumpSemanticsTreeInInverseHitTestOrder() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugDumpSemanticsTreeInInverseHitTestOrder();
}
}
Future<void> debugToggleDebugPaintSizeEnabled() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.toggleDebugPaintSizeEnabled();
}
}
Future<void> debugToggleDebugCheckElevationsEnabled() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.toggleDebugCheckElevationsEnabled();
}
}
Future<void> debugTogglePerformanceOverlayOverride() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.debugTogglePerformanceOverlayOverride();
}
}
Future<void> debugToggleWidgetInspector() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.toggleWidgetInspector();
}
}
Future<void> debugToggleProfileWidgetBuilds() async {
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.toggleProfileWidgetBuilds();
}
}
@@ -845,7 +845,7 @@
if (supportsServiceProtocol && isRunningDebug) {
await device.refreshViews();
try {
- for (FlutterView view in device.views) {
+ for (final FlutterView view in device.views) {
await view.uiIsolate.flutterDebugAllowBanner(false);
}
} catch (error) {
@@ -859,7 +859,7 @@
} finally {
if (supportsServiceProtocol && isRunningDebug) {
try {
- for (FlutterView view in device.views) {
+ for (final FlutterView view in device.views) {
await view.uiIsolate.flutterDebugAllowBanner(true);
}
} catch (error) {
@@ -882,7 +882,7 @@
await refreshViews();
final String from = await flutterDevices[0].views[0].uiIsolate.flutterPlatformOverride();
String to;
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
to = await device.togglePlatform(from: from);
}
globals.printStatus('Switched operating system to $to');
@@ -913,7 +913,7 @@
_finished = Completer<int>();
bool viewFound = false;
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
await device.connect(
reloadSources: reloadSources,
restart: restart,
@@ -935,7 +935,7 @@
}
// Listen for service protocol connection to close.
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
// This hooks up callbacks for when the connection stops in the future.
// We don't want to wait for them. We don't handle errors in those callbacks'
// futures either because they just print to logger and is not critical.
@@ -993,7 +993,7 @@
Future<void> exitApp() async {
final List<Future<void>> futures = <Future<void>>[
- for (FlutterDevice device in flutterDevices) device.exitApps(),
+ for (final FlutterDevice device in flutterDevices) device.exitApps(),
];
await Future.wait(futures);
appFinished();
@@ -1116,7 +1116,7 @@
/// Unregisters terminal signal and keystroke handlers.
void stop() {
assert(residentRunner.stayResident);
- for (MapEntry<io.ProcessSignal, Object> entry in _signalTokens.entries) {
+ for (final MapEntry<io.ProcessSignal, Object> entry in _signalTokens.entries) {
signals.removeHandler(entry.key, entry.value);
}
_signalTokens.clear();
@@ -1154,7 +1154,7 @@
final List<FlutterView> views = residentRunner.flutterDevices
.expand((FlutterDevice d) => d.views).toList();
globals.printStatus('Connected ${pluralize('view', views.length)}:');
- for (FlutterView v in views) {
+ for (final FlutterView v in views) {
globals.printStatus('${v.uiIsolate.name} (${v.uiIsolate.id})', indent: 2);
}
return true;
@@ -1189,7 +1189,7 @@
await residentRunner.exit();
return true;
case 's':
- for (FlutterDevice device in residentRunner.flutterDevices) {
+ for (final FlutterDevice device in residentRunner.flutterDevices) {
if (device.device.supportsScreenshot) {
await residentRunner.screenshot(device);
}
diff --git a/packages/flutter_tools/lib/src/run_cold.dart b/packages/flutter_tools/lib/src/run_cold.dart
index 02f95ae..1211452 100644
--- a/packages/flutter_tools/lib/src/run_cold.dart
+++ b/packages/flutter_tools/lib/src/run_cold.dart
@@ -60,7 +60,7 @@
}
}
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final int result = await device.runCold(
coldRunner: this,
route: route,
@@ -90,7 +90,7 @@
globals.printTrace('Application running.');
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (device.vmService == null) {
continue;
}
@@ -142,12 +142,12 @@
}
return 2;
}
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
device.initLogReader();
}
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
globals.printTrace('Connected to $view.');
}
}
@@ -170,7 +170,7 @@
@override
Future<void> cleanupAtFinish() async {
- for (FlutterDevice flutterDevice in flutterDevices) {
+ for (final FlutterDevice flutterDevice in flutterDevices) {
await flutterDevice.device.dispose();
}
@@ -181,7 +181,7 @@
void printHelp({ @required bool details }) {
bool haveDetails = false;
bool haveAnything = false;
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final String dname = device.device.name;
if (device.vmService != null) {
globals.printStatus('An Observatory debugger and profiler on $dname is '
@@ -209,7 +209,7 @@
@override
Future<void> preExit() async {
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
// If we're running in release mode, stop the app using the device logic.
if (device.vmService == null) {
await device.device.stopApp(device.package);
diff --git a/packages/flutter_tools/lib/src/run_hot.dart b/packages/flutter_tools/lib/src/run_hot.dart
index e8d9337..2eadea5 100644
--- a/packages/flutter_tools/lib/src/run_hot.dart
+++ b/packages/flutter_tools/lib/src/run_hot.dart
@@ -137,7 +137,7 @@
String klass,
bool isStatic,
) async {
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (device.generator != null) {
final CompilerOutput compilerOutput =
await device.generator.compileExpression(expression, definitions,
@@ -155,7 +155,7 @@
final Stopwatch stopwatch = Stopwatch()..start();
final UpdateFSReport results = UpdateFSReport(success: true);
final List<Uri> invalidated = <Uri>[Uri.parse(libraryId)];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
results.incorporateResults(await device.updateDevFS(
mainPath: mainPath,
target: target,
@@ -178,7 +178,7 @@
getReloadPath(fullRestart: false),
from: projectRootPath,
);
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final List<Future<Map<String, dynamic>>> reportFutures = device.reloadSources(
entryPath, pause: false,
);
@@ -190,8 +190,8 @@
return OperationResult(1, error.toString());
}
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
await view.uiIsolate.flutterFastReassemble(classId);
}
}
@@ -227,7 +227,7 @@
return 2;
}
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
device.initLogReader();
}
try {
@@ -257,13 +257,13 @@
}
await refreshViews();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
// VM must have accepted the kernel binary, there will be no reload
// report, so we let incremental compiler know that source code was accepted.
if (device.generator != null) {
device.generator.accept();
}
- for (FlutterView view in device.views) {
+ for (final FlutterView view in device.views) {
globals.printTrace('Connected to $view.');
}
}
@@ -330,7 +330,7 @@
firstBuildTime = DateTime.now();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final int result = await device.runHot(
hotRunner: this,
route: route,
@@ -349,7 +349,7 @@
Future<List<Uri>> _initDevFS() async {
final String fsName = globals.fs.path.basename(projectRootPath);
return <Uri>[
- for (FlutterDevice device in flutterDevices)
+ for (final FlutterDevice device in flutterDevices)
await device.setupDevFS(
fsName,
globals.fs.directory(projectRootPath),
@@ -378,7 +378,7 @@
asyncScanning: hotRunnerConfig.asyncScanning,
);
final UpdateFSReport results = UpdateFSReport(success: true);
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
results.incorporateResults(await device.updateDevFS(
mainPath: mainPath,
target: target,
@@ -397,14 +397,14 @@
}
void _resetDirtyAssets() {
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
device.devFS.assetPathsToEvict.clear();
}
}
Future<void> _cleanupDevFS() async {
final List<Future<void>> futures = <Future<void>>[];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (device.devFS != null) {
// Cleanup the devFS, but don't wait indefinitely.
// We ignore any errors, because it's not clear what we would do anyway.
@@ -426,7 +426,7 @@
Uri assetsDirectoryUri,
) {
return Future.wait(<Future<void>>[
- for (FlutterView view in device.views)
+ for (final FlutterView view in device.views)
view.runFromSource(entryUri, packagesUri, assetsDirectoryUri),
]);
}
@@ -434,7 +434,7 @@
Future<void> _launchFromDevFS(String mainScript) async {
final String entryUri = globals.fs.path.relative(mainScript, from: projectRootPath);
final List<Future<void>> futures = <Future<void>>[];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final Uri deviceEntryUri = device.devFS.baseUri.resolveUri(
globals.fs.path.toUri(entryUri));
final Uri devicePackagesUri = device.devFS.baseUri.resolve('.packages');
@@ -448,8 +448,8 @@
await Future.wait(futures);
if (benchmarkMode) {
futures.clear();
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
futures.add(view.flushUIThreadTasks());
}
}
@@ -471,7 +471,7 @@
// compiler for full application recompilation on restart.
final UpdateFSReport updatedDevFS = await _updateDevFS(fullRestart: true);
if (!updatedDevFS.success) {
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (device.generator != null) {
await device.generator.reject();
}
@@ -479,7 +479,7 @@
return OperationResult(1, 'DevFS synchronization failed');
}
_resetDirtyAssets();
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
// VM must have accepted the kernel binary, there will be no reload
// report, so we let incremental compiler know that source code was accepted.
if (device.generator != null) {
@@ -488,8 +488,8 @@
}
// Check if the isolate is paused and resume it.
final List<Future<void>> futures = <Future<void>>[];
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
if (view.uiIsolate == null) {
continue;
}
@@ -522,12 +522,12 @@
// In benchmark mode, make sure all stream notifications have finished.
if (benchmarkMode) {
final List<Future<void>> isolateNotifications = <Future<void>>[];
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
isolateNotifications.add(
view.owner.vm.vmService.onIsolateEvent
.then((Stream<ServiceEvent> serviceEvents) async {
- await for (ServiceEvent serviceEvent in serviceEvents) {
+ await for (final ServiceEvent serviceEvent in serviceEvents) {
if (serviceEvent.owner.name.contains('_spawn')
&& serviceEvent.kind == ServiceEvent.kIsolateExit) {
return;
@@ -575,7 +575,7 @@
if (!(reloadReport['success'] as bool)) {
if (printErrors) {
globals.printError('Hot reload was rejected:');
- for (Map<String, dynamic> notice in reloadReport['details']['notices']) {
+ for (final Map<String, dynamic> notice in reloadReport['details']['notices']) {
globals.printError('${notice['message']}');
}
}
@@ -747,8 +747,8 @@
String reason,
void Function(String message) onSlow,
}) async {
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
if (view.uiIsolate == null) {
return OperationResult(2, 'Application isolate not found', fatal: true);
}
@@ -785,7 +785,7 @@
from: projectRootPath,
);
final List<Future<DeviceReloadReport>> allReportsFutures = <Future<DeviceReloadReport>>[];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (_runningFromSnapshot) {
// Asset directory has to be set only once when we switch from
// running from snapshot to running from uploaded files.
@@ -809,7 +809,7 @@
));
}
final List<DeviceReloadReport> reports = await Future.wait(allReportsFutures);
- for (DeviceReloadReport report in reports) {
+ for (final DeviceReloadReport report in reports) {
final Map<String, dynamic> reloadReport = report.reports[0];
if (!validateReloadReport(reloadReport)) {
// Reload failed.
@@ -859,10 +859,10 @@
final Stopwatch reassembleTimer = Stopwatch()..start();
// Reload the isolate.
final List<Future<void>> allDevices = <Future<void>>[];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
globals.printTrace('Sending reload events to ${device.device.name}');
final List<Future<ServiceObject>> futuresViews = <Future<ServiceObject>>[];
- for (FlutterView view in device.views) {
+ for (final FlutterView view in device.views) {
globals.printTrace('Sending reload event to "${view.uiIsolate.name}"');
futuresViews.add(view.uiIsolate.reload());
}
@@ -878,8 +878,8 @@
final List<FlutterView> reassembleViews = <FlutterView>[];
String serviceEventKind;
int pausedIsolatesFound = 0;
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
// Check if the isolate is paused, and if so, don't reassemble. Ignore the
// PostPauseEvent event - the client requesting the pause will resume the app.
final ServiceEvent pauseEvent = view.uiIsolate.pauseEvent;
@@ -910,7 +910,7 @@
globals.printTrace('Reassembling application');
bool failedReassemble = false;
final List<Future<void>> futures = <Future<void>>[
- for (FlutterView view in reassembleViews)
+ for (final FlutterView view in reassembleViews)
() async {
try {
await view.uiIsolate.flutterReassemble();
@@ -933,7 +933,7 @@
globals.printTrace('This is taking a long time; will now check for paused isolates.');
int postReloadPausedIsolatesFound = 0;
String serviceEventKind;
- for (FlutterView view in reassembleViews) {
+ for (final FlutterView view in reassembleViews) {
await view.uiIsolate.reload();
final ServiceEvent pauseEvent = view.uiIsolate.pauseEvent;
if (pauseEvent != null && pauseEvent.isPauseEvent) {
@@ -1030,8 +1030,8 @@
}
bool _isPaused() {
- for (FlutterDevice device in flutterDevices) {
- for (FlutterView view in device.views) {
+ for (final FlutterDevice device in flutterDevices) {
+ for (final FlutterView view in device.views) {
if (view.uiIsolate != null) {
final ServiceEvent pauseEvent = view.uiIsolate.pauseEvent;
if (pauseEvent != null && pauseEvent.isPauseEvent) {
@@ -1055,7 +1055,7 @@
TerminalColor.red,
);
globals.printStatus(message);
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
final String dname = device.device.name;
globals.printStatus('An Observatory debugger and profiler on $dname is '
'available at: ${device.vmService.httpAddress}');
@@ -1073,7 +1073,7 @@
Future<void> _evictDirtyAssets() {
final List<Future<Map<String, dynamic>>> futures = <Future<Map<String, dynamic>>>[];
- for (FlutterDevice device in flutterDevices) {
+ for (final FlutterDevice device in flutterDevices) {
if (device.devFS.assetPathsToEvict.isEmpty) {
continue;
}
@@ -1081,7 +1081,7 @@
globals.printError('Application isolate not found for $device');
continue;
}
- for (String assetPath in device.devFS.assetPathsToEvict) {
+ for (final String assetPath in device.devFS.assetPathsToEvict) {
futures.add(device.views.first.uiIsolate.flutterEvictAsset(assetPath));
}
device.devFS.assetPathsToEvict.clear();
@@ -1109,7 +1109,7 @@
@override
Future<void> cleanupAtFinish() async {
- for (FlutterDevice flutterDevice in flutterDevices) {
+ for (final FlutterDevice flutterDevice in flutterDevices) {
await flutterDevice.device.dispose();
}
await _cleanupDevFS();
@@ -1161,7 +1161,7 @@
final Stopwatch stopwatch = Stopwatch()..start();
final List<Uri> urisToScan = <Uri>[
// Don't watch pub cache directories to speed things up a little.
- for (Uri uri in urisToMonitor)
+ for (final Uri uri in urisToMonitor)
if (_isNotInPubCache(uri)) uri,
// We need to check the .packages file too since it is not used in compilation.
diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart
index a04e402..0d81d6f 100644
--- a/packages/flutter_tools/lib/src/runner/flutter_command.dart
+++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart
@@ -445,7 +445,7 @@
: null;
if (argParser.options.containsKey(FlutterOptions.kEnableExperiment) &&
argResults[FlutterOptions.kEnableExperiment] != null) {
- for (String expFlag in stringsArg(FlutterOptions.kEnableExperiment)) {
+ for (final String expFlag in stringsArg(FlutterOptions.kEnableExperiment)) {
final String flag = '--enable-experiment=' + expFlag;
if (extraFrontEndOptions != null) {
extraFrontEndOptions += ',' + flag;
@@ -743,7 +743,7 @@
final Set<DevelopmentArtifact> artifacts = <DevelopmentArtifact>{
DevelopmentArtifact.universal,
};
- for (Device device in devices) {
+ for (final Device device in devices) {
final TargetPlatform targetPlatform = await device.targetPlatform;
final DevelopmentArtifact developmentArtifact = _artifactFromTargetPlatform(targetPlatform);
if (developmentArtifact != null) {
diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
index ca6d672..7731bd0 100644
--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
@@ -206,7 +206,7 @@
}
Command<void> command = commands[error.commands.first];
- for (String commandName in error.commands.skip(1)) {
+ for (final String commandName in error.commands.skip(1)) {
command = command.subcommands[commandName];
}
@@ -386,7 +386,7 @@
tmpBasename = tmpBasename.substring(tmpBasename.indexOf('_') + 1);
// Strip suffix for various archs.
final List<String> suffixes = <String>['_arm', '_arm64', '_x86', '_x64'];
- for (String suffix in suffixes) {
+ for (final String suffix in suffixes) {
tmpBasename = tmpBasename.replaceFirst(RegExp('$suffix\$'), '');
}
return 'host_' + tmpBasename;
diff --git a/packages/flutter_tools/lib/src/template.dart b/packages/flutter_tools/lib/src/template.dart
index f47f450..e37fddd 100644
--- a/packages/flutter_tools/lib/src/template.dart
+++ b/packages/flutter_tools/lib/src/template.dart
@@ -33,7 +33,7 @@
final List<FileSystemEntity> templateFiles = templateSource.listSync(recursive: true);
- for (FileSystemEntity entity in templateFiles) {
+ for (final FileSystemEntity entity in templateFiles) {
if (entity is! File) {
// We are only interesting in template *file* URIs.
continue;
diff --git a/packages/flutter_tools/lib/src/test/coverage_collector.dart b/packages/flutter_tools/lib/src/test/coverage_collector.dart
index b9dad72..2d8e6a8 100644
--- a/packages/flutter_tools/lib/src/test/coverage_collector.dart
+++ b/packages/flutter_tools/lib/src/test/coverage_collector.dart
@@ -188,7 +188,7 @@
Future<Map<String, dynamic>> _getAllCoverage(VMService service, bool Function(String) libraryPredicate) async {
await service.getVM();
final List<Map<String, dynamic>> coverage = <Map<String, dynamic>>[];
- for (Isolate isolateRef in service.vm.isolates) {
+ for (final Isolate isolateRef in service.vm.isolates) {
await isolateRef.load();
final Map<String, dynamic> scriptList = await isolateRef.invokeRpcRaw('getScripts', params: <String, dynamic>{'isolateId': isolateRef.id});
final List<Future<void>> futures = <Future<void>>[];
@@ -204,7 +204,7 @@
if (scriptList['scripts'] == null) {
continue;
}
- for (Map<String, dynamic> script in scriptList['scripts']) {
+ for (final Map<String, dynamic> script in scriptList['scripts']) {
if (!libraryPredicate(script['uri'] as String)) {
continue;
}
@@ -243,9 +243,9 @@
List<Map<String, dynamic>> coverage,
) {
final Map<String, Map<int, int>> hitMaps = <String, Map<int, int>>{};
- for (String scriptId in scripts.keys) {
+ for (final String scriptId in scripts.keys) {
final Map<String, dynamic> sourceReport = sourceReports[scriptId];
- for (Map<String, dynamic> range in sourceReport['ranges']) {
+ for (final Map<String, dynamic> range in sourceReport['ranges']) {
final Map<String, dynamic> coverage = castStringKeyedMap(range['coverage']);
// Coverage reports may sometimes be null for a Script.
if (coverage == null) {
@@ -264,14 +264,14 @@
continue;
}
if (hits != null) {
- for (int hit in hits) {
+ for (final int hit in hits) {
final int line = _lineAndColumn(hit, tokenPositions)[0];
final int current = hitMap[line] ?? 0;
hitMap[line] = current + 1;
}
}
if (misses != null) {
- for (int miss in misses) {
+ for (final int miss in misses) {
final int line = _lineAndColumn(miss, tokenPositions)[0];
hitMap[line] ??= 0;
}
diff --git a/packages/flutter_tools/lib/src/test/flutter_platform.dart b/packages/flutter_tools/lib/src/test/flutter_platform.dart
index 8b73b57..c47af1e 100644
--- a/packages/flutter_tools/lib/src/test/flutter_platform.dart
+++ b/packages/flutter_tools/lib/src/test/flutter_platform.dart
@@ -678,7 +678,7 @@
} finally {
globals.printTrace('test $ourTestCount: cleaning up...');
// Finalizers are treated like a stack; run them in reverse order.
- for (Finalizer finalizer in finalizers.reversed) {
+ for (final Finalizer finalizer in finalizers.reversed) {
try {
await finalizer();
} catch (error, stack) {
@@ -850,7 +850,7 @@
void reportObservatoryUri(Uri uri),
}) {
const String observatoryString = 'Observatory listening on ';
- for (Stream<List<int>> stream in <Stream<List<int>>>[
+ for (final Stream<List<int>> stream in <Stream<List<int>>>[
process.stderr,
process.stdout,
]) {
diff --git a/packages/flutter_tools/lib/src/test/flutter_web_platform.dart b/packages/flutter_tools/lib/src/test/flutter_web_platform.dart
index 7aa705b..c638f67 100644
--- a/packages/flutter_tools/lib/src/test/flutter_web_platform.dart
+++ b/packages/flutter_tools/lib/src/test/flutter_web_platform.dart
@@ -440,7 +440,7 @@
/// the longest matching prefix wins.
void add(String path, shelf.Handler handler) {
_Node node = _paths;
- for (String component in p.url.split(path)) {
+ for (final String component in p.url.split(path)) {
node = node.children.putIfAbsent(component, () => _Node());
}
node.handler = handler;
@@ -489,7 +489,7 @@
// Start this canceled because we don't want it to start ticking until we
// get some response from the iframe.
_timer = RestartableTimer(const Duration(seconds: 3), () {
- for (RunnerSuiteController controller in _controllers) {
+ for (final RunnerSuiteController controller in _controllers) {
controller.setDebugging(true);
}
})
@@ -503,7 +503,7 @@
if (!_closed) {
_timer.reset();
}
- for (RunnerSuiteController controller in _controllers) {
+ for (final RunnerSuiteController controller in _controllers) {
controller.setDebugging(false);
}
@@ -933,7 +933,7 @@
.transform<String>(utf8.decoder)
.transform<String>(const LineSplitter())
.map<Object>(jsonDecode);
- await for (Object command in commands) {
+ await for (final Object command in commands) {
if (command is Map<String, dynamic>) {
File imageFile = File(command['imageFile']);
Uri goldenKey = Uri.parse(command['key']);
diff --git a/packages/flutter_tools/lib/src/test/runner.dart b/packages/flutter_tools/lib/src/test/runner.dart
index 593603d..490cf50 100644
--- a/packages/flutter_tools/lib/src/test/runner.dart
+++ b/packages/flutter_tools/lib/src/test/runner.dart
@@ -61,9 +61,9 @@
else
...<String>['-r', 'compact'],
'--concurrency=$concurrency',
- for (String name in names)
+ for (final String name in names)
...<String>['--name', name],
- for (String plainName in plainNames)
+ for (final String plainName in plainNames)
...<String>['--plain-name', plainName],
'--test-randomize-ordering-seed=$randomSeed',
];
diff --git a/packages/flutter_tools/lib/src/tracing.dart b/packages/flutter_tools/lib/src/tracing.dart
index 623a10d..020d068 100644
--- a/packages/flutter_tools/lib/src/tracing.dart
+++ b/packages/flutter_tools/lib/src/tracing.dart
@@ -51,7 +51,7 @@
}
});
bool done = false;
- for (FlutterView view in vmService.vm.views) {
+ for (final FlutterView view in vmService.vm.views) {
if (await view.uiIsolate.flutterAlreadyPaintedFirstUsefulFrame()) {
done = true;
break;
diff --git a/packages/flutter_tools/lib/src/vmservice.dart b/packages/flutter_tools/lib/src/vmservice.dart
index 9d0450e..99adc78 100644
--- a/packages/flutter_tools/lib/src/vmservice.dart
+++ b/packages/flutter_tools/lib/src/vmservice.dart
@@ -856,7 +856,7 @@
void _removeDeadIsolates(List<Isolate> newIsolates) {
// Build a set of new isolates.
final Set<String> newIsolateSet = <String>{};
- for (Isolate iso in newIsolates) {
+ for (final Isolate iso in newIsolates) {
newIsolateSet.add(iso.id);
}
diff --git a/packages/flutter_tools/lib/src/vscode/vscode.dart b/packages/flutter_tools/lib/src/vscode/vscode.dart
index 6410493..b110046 100644
--- a/packages/flutter_tools/lib/src/vscode/vscode.dart
+++ b/packages/flutter_tools/lib/src/vscode/vscode.dart
@@ -204,7 +204,7 @@
final List<VsCode> results = <VsCode>[];
- for (_VsCodeInstallLocation searchLocation in searchLocations) {
+ for (final _VsCodeInstallLocation searchLocation in searchLocations) {
if (globals.fs.isDirectorySync(searchLocation.installPath)) {
final String extensionDirectory =
globals.fs.path.join(homeDirPath, searchLocation.extensionsFolder, 'extensions');
diff --git a/packages/flutter_tools/lib/src/web/compile.dart b/packages/flutter_tools/lib/src/web/compile.dart
index 8f024d2..c062031 100644
--- a/packages/flutter_tools/lib/src/web/compile.dart
+++ b/packages/flutter_tools/lib/src/web/compile.dart
@@ -53,7 +53,7 @@
},
));
if (!result.success) {
- for (ExceptionMeasurement measurement in result.exceptions.values) {
+ for (final ExceptionMeasurement measurement in result.exceptions.values) {
globals.printError('Target ${measurement.target} failed: ${measurement.exception}',
stackTrace: measurement.fatal
? measurement.stackTrace
diff --git a/packages/flutter_tools/lib/src/web/devfs_web.dart b/packages/flutter_tools/lib/src/web/devfs_web.dart
index c28815b..e24ef5e 100644
--- a/packages/flutter_tools/lib/src/web/devfs_web.dart
+++ b/packages/flutter_tools/lib/src/web/devfs_web.dart
@@ -177,7 +177,7 @@
final Uint8List codeBytes = codeFile.readAsBytesSync();
final Uint8List sourcemapBytes = sourcemapFile.readAsBytesSync();
final Map<String, dynamic> manifest = castStringKeyedMap(json.decode(manifestFile.readAsStringSync()));
- for (String filePath in manifest.keys) {
+ for (final String filePath in manifest.keys) {
if (filePath == null) {
globals.printTrace('Invalid manfiest file: $filePath');
continue;
diff --git a/packages/flutter_tools/lib/src/windows/windows_device.dart b/packages/flutter_tools/lib/src/windows/windows_device.dart
index 1161d6d..f7f0b65 100644
--- a/packages/flutter_tools/lib/src/windows/windows_device.dart
+++ b/packages/flutter_tools/lib/src/windows/windows_device.dart
@@ -93,7 +93,7 @@
if (result.exitCode != 0) {
return null;
}
- for (String rawProcess in result.stdout.split('\n')) {
+ for (final String rawProcess in result.stdout.split('\n')) {
final String process = rawProcess.trim();
if (!process.contains(processName)) {
continue;