mirror of
https://github.com/dart-lang/sdk
synced 2024-10-07 08:39:41 +00:00
analysis_server: Remove implicit casts in lib/
Bug: https://github.com/dart-lang/sdk/issues/41651 Change-Id: I1a804bbf0c0b2d26fcd12111ec68f673f4a41a04 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/222042 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Reviewed-by: Konstantin Shcheglov <scheglov@google.com> Commit-Queue: Samuel Rawlins <srawlins@google.com>
This commit is contained in:
parent
3bfb2db3d0
commit
2206b6999b
|
@ -743,7 +743,7 @@ class PluginManager {
|
|||
sourceUrl: pubspecFile.toUri());
|
||||
var contents = document.contents;
|
||||
if (contents is YamlMap) {
|
||||
YamlNode dependencies = contents['dependencies'];
|
||||
var dependencies = contents['dependencies'] as YamlNode?;
|
||||
if (dependencies is YamlMap) {
|
||||
return dependencies.keys.cast<String>();
|
||||
}
|
||||
|
|
|
@ -80,20 +80,21 @@ class DevAnalysisServer {
|
|||
continue;
|
||||
}
|
||||
|
||||
String severity = error['severity'].toLowerCase();
|
||||
var severity = (error['severity'] as String).toLowerCase();
|
||||
if (severity == 'warning' && exitCode < 1) {
|
||||
exitCode = 1;
|
||||
} else if (severity == 'error' && exitCode < 2) {
|
||||
exitCode = 2;
|
||||
}
|
||||
|
||||
String message = error['message'];
|
||||
var message = error['message'] as String;
|
||||
if (message.endsWith('.')) {
|
||||
message = message.substring(0, message.length - 1);
|
||||
}
|
||||
String code = error['code'];
|
||||
int line = error['location']['startLine'];
|
||||
int column = error['location']['startColumn'];
|
||||
var code = error['code'] as String;
|
||||
var location = error['location'] as Map<Object?, Object?>;
|
||||
var line = location['startLine'] as int;
|
||||
var column = location['startColumn'] as int;
|
||||
|
||||
print(' $severity • $bold$message$none at $filePath:$line:$column • '
|
||||
'($code)');
|
||||
|
|
|
@ -145,10 +145,12 @@ class Driver implements ServerStarter {
|
|||
|
||||
var analysisServerOptions = AnalysisServerOptions();
|
||||
analysisServerOptions.newAnalysisDriverLog =
|
||||
results[ANALYSIS_DRIVER_LOG] ?? results[ANALYSIS_DRIVER_LOG_ALIAS];
|
||||
analysisServerOptions.clientId = results[CLIENT_ID];
|
||||
(results[ANALYSIS_DRIVER_LOG] ?? results[ANALYSIS_DRIVER_LOG_ALIAS])
|
||||
as String?;
|
||||
analysisServerOptions.clientId = results[CLIENT_ID] as String?;
|
||||
if (results.wasParsed(USE_LSP)) {
|
||||
analysisServerOptions.useLanguageServerProtocol = results[USE_LSP];
|
||||
analysisServerOptions.useLanguageServerProtocol =
|
||||
results[USE_LSP] as bool;
|
||||
} else {
|
||||
analysisServerOptions.useLanguageServerProtocol =
|
||||
results[SERVER_PROTOCOL] == PROTOCOL_LSP;
|
||||
|
@ -160,18 +162,18 @@ class Driver implements ServerStarter {
|
|||
? 'unknown.client.lsp'
|
||||
: 'unknown.client.classic';
|
||||
|
||||
analysisServerOptions.clientVersion = results[CLIENT_VERSION];
|
||||
analysisServerOptions.cacheFolder = results[CACHE_FOLDER];
|
||||
analysisServerOptions.packagesFile = results[PACKAGES_FILE];
|
||||
analysisServerOptions.clientVersion = results[CLIENT_VERSION] as String?;
|
||||
analysisServerOptions.cacheFolder = results[CACHE_FOLDER] as String?;
|
||||
analysisServerOptions.packagesFile = results[PACKAGES_FILE] as String?;
|
||||
analysisServerOptions.reportProtocolVersion =
|
||||
results[REPORT_PROTOCOL_VERSION];
|
||||
results[REPORT_PROTOCOL_VERSION] as String?;
|
||||
|
||||
// Read in any per-SDK overrides specified in <sdk>/config/settings.json.
|
||||
var sdkConfig = SdkConfiguration.readFromSdk();
|
||||
analysisServerOptions.configurationOverrides = sdkConfig;
|
||||
|
||||
// Analytics
|
||||
bool disableAnalyticsForSession = results[SUPPRESS_ANALYTICS_FLAG];
|
||||
var disableAnalyticsForSession = results[SUPPRESS_ANALYTICS_FLAG] as bool;
|
||||
if (results.wasParsed(TRAIN_USING)) {
|
||||
disableAnalyticsForSession = true;
|
||||
}
|
||||
|
@ -212,15 +214,16 @@ class Driver implements ServerStarter {
|
|||
|
||||
if (telemetry.showAnalyticsUI) {
|
||||
if (results.wasParsed(ANALYTICS_FLAG)) {
|
||||
analytics.enabled = results[ANALYTICS_FLAG];
|
||||
analytics.enabled = results[ANALYTICS_FLAG] as bool;
|
||||
print(telemetry.createAnalyticsStatusMessage(analytics.enabled));
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
bool disableCompletion = results[DISABLE_SERVER_FEATURE_COMPLETION];
|
||||
bool disableSearch = results[DISABLE_SERVER_FEATURE_SEARCH];
|
||||
var disableCompletion =
|
||||
results[DISABLE_SERVER_FEATURE_COMPLETION] as bool;
|
||||
var disableSearch = results[DISABLE_SERVER_FEATURE_SEARCH] as bool;
|
||||
if (disableCompletion || disableSearch) {
|
||||
analysisServerOptions.featureSet = FeatureSet(
|
||||
completion: !disableCompletion,
|
||||
|
@ -229,7 +232,7 @@ class Driver implements ServerStarter {
|
|||
}
|
||||
}
|
||||
|
||||
if (results[HELP_OPTION]) {
|
||||
if (results[HELP_OPTION] as bool) {
|
||||
_printUsage(parser, analytics, fromHelp: true);
|
||||
return null;
|
||||
}
|
||||
|
@ -244,8 +247,8 @@ class Driver implements ServerStarter {
|
|||
//
|
||||
// Initialize the instrumentation service.
|
||||
//
|
||||
var logFilePath =
|
||||
results[PROTOCOL_TRAFFIC_LOG] ?? results[PROTOCOL_TRAFFIC_LOG_ALIAS];
|
||||
var logFilePath = (results[PROTOCOL_TRAFFIC_LOG] ??
|
||||
results[PROTOCOL_TRAFFIC_LOG_ALIAS]) as String?;
|
||||
var allInstrumentationServices = this.instrumentationService == null
|
||||
? <InstrumentationService>[]
|
||||
: [this.instrumentationService!];
|
||||
|
@ -274,8 +277,8 @@ class Driver implements ServerStarter {
|
|||
AnalysisEngine.instance.instrumentationService = instrumentationService;
|
||||
|
||||
int? diagnosticServerPort;
|
||||
final String? portValue =
|
||||
results[DIAGNOSTIC_PORT] ?? results[DIAGNOSTIC_PORT_ALIAS];
|
||||
final portValue =
|
||||
(results[DIAGNOSTIC_PORT] ?? results[DIAGNOSTIC_PORT_ALIAS]) as String?;
|
||||
if (portValue != null) {
|
||||
try {
|
||||
diagnosticServerPort = int.parse(portValue);
|
||||
|
@ -324,10 +327,10 @@ class Driver implements ServerStarter {
|
|||
ErrorNotifier errorNotifier,
|
||||
SendPort? sendPort,
|
||||
) {
|
||||
var capture = results[DISABLE_SERVER_EXCEPTION_HANDLING]
|
||||
var capture = results[DISABLE_SERVER_EXCEPTION_HANDLING] as bool
|
||||
? (_, Function f, {Function(String)? print}) => f()
|
||||
: _captureExceptions;
|
||||
var trainDirectory = results[TRAIN_USING];
|
||||
var trainDirectory = results[TRAIN_USING] as String?;
|
||||
if (trainDirectory != null) {
|
||||
if (!FileSystemEntity.isDirectorySync(trainDirectory)) {
|
||||
print("Training directory '$trainDirectory' not found.\n");
|
||||
|
@ -426,7 +429,7 @@ class Driver implements ServerStarter {
|
|||
if (sendPort == null) exit(0);
|
||||
});
|
||||
},
|
||||
print: results[INTERNAL_PRINT_TO_CONSOLE]
|
||||
print: results[INTERNAL_PRINT_TO_CONSOLE] as bool
|
||||
? null
|
||||
: httpServer!.recordPrint);
|
||||
}
|
||||
|
@ -440,7 +443,7 @@ class Driver implements ServerStarter {
|
|||
int? diagnosticServerPort,
|
||||
ErrorNotifier errorNotifier,
|
||||
) {
|
||||
var capture = args[DISABLE_SERVER_EXCEPTION_HANDLING]
|
||||
var capture = args[DISABLE_SERVER_EXCEPTION_HANDLING] as bool
|
||||
? (_, Function f, {Function(String)? print}) => f()
|
||||
: _captureExceptions;
|
||||
|
||||
|
@ -483,7 +486,7 @@ class Driver implements ServerStarter {
|
|||
InstrumentationService service, void Function() callback,
|
||||
{void Function(String line)? print}) {
|
||||
void errorFunction(Zone self, ZoneDelegate parent, Zone zone,
|
||||
dynamic exception, StackTrace stackTrace) {
|
||||
Object exception, StackTrace stackTrace) {
|
||||
service.logException(exception, stackTrace);
|
||||
throw exception;
|
||||
}
|
||||
|
|
|
@ -262,7 +262,7 @@ class StatementCompletionProcessor {
|
|||
void _checkExpressions(AstNode node) {
|
||||
// Note: This may queue edits that have to be accounted for later.
|
||||
// See _lengthOfInsertions().
|
||||
AstNode? errorMatching(errorCode, {partialMatch}) {
|
||||
AstNode? errorMatching(ErrorCode errorCode, {Pattern? partialMatch}) {
|
||||
var error = _findError(errorCode, partialMatch: partialMatch);
|
||||
if (error == null) {
|
||||
return null;
|
||||
|
@ -1069,7 +1069,7 @@ class StatementCompletionProcessor {
|
|||
node, stmt, DartStatementCompletion.COMPLETE_WHILE_STMT);
|
||||
}
|
||||
|
||||
engine.AnalysisError? _findError(ErrorCode code, {partialMatch}) {
|
||||
engine.AnalysisError? _findError(ErrorCode code, {Pattern? partialMatch}) {
|
||||
return errors.firstWhereOrNull((err) =>
|
||||
err.errorCode == code &&
|
||||
(partialMatch == null ? true : err.message.contains(partialMatch)));
|
||||
|
@ -1169,7 +1169,7 @@ class StatementCompletionProcessor {
|
|||
return Position(file, offset);
|
||||
}
|
||||
|
||||
void _removeError(errorCode, {partialMatch}) {
|
||||
void _removeError(ErrorCode errorCode, {Pattern? partialMatch}) {
|
||||
var error = _findError(errorCode, partialMatch: partialMatch);
|
||||
if (error != null) {
|
||||
errors.remove(error);
|
||||
|
|
|
@ -131,7 +131,7 @@ abstract class YamlCompletionGenerator {
|
|||
// value that was next in the path.
|
||||
var key = node.keyAtValue(path[i + 1]);
|
||||
if (key is YamlScalar) {
|
||||
producer = producer.producerForKey(key.value);
|
||||
producer = producer.producerForKey(key.value as String);
|
||||
// Otherwise, if the item next in the path was a key itself, use the
|
||||
// current producer to provide completion for the key.
|
||||
} else if (node.nodes.containsKey(path[i + 1])) {
|
||||
|
@ -154,10 +154,11 @@ abstract class YamlCompletionGenerator {
|
|||
List<String> siblingsInList(YamlList list, YamlNode? currentElement) {
|
||||
var siblings = <String>[];
|
||||
for (var element in list.nodes) {
|
||||
if (element != currentElement &&
|
||||
element is YamlScalar &&
|
||||
element.value is String) {
|
||||
siblings.add(element.value);
|
||||
if (element != currentElement && element is YamlScalar) {
|
||||
var value = element.value;
|
||||
if (value is String) {
|
||||
siblings.add(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
return siblings;
|
||||
|
|
|
@ -92,7 +92,7 @@ class DataDrivenFix extends CorrectionProducer {
|
|||
}
|
||||
var data = <Object>[];
|
||||
for (var change in changes) {
|
||||
var result = change.validate(this);
|
||||
var result = change.validate(this) as Object?;
|
||||
if (result == null) {
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -42,16 +42,16 @@ class FlutterConvertToChildren extends CorrectionProducer {
|
|||
void _convertFlutterChildToChildren(
|
||||
NamedExpression namedExp,
|
||||
String eol,
|
||||
Function getNodeText,
|
||||
Function getLinePrefix,
|
||||
Function getIndent,
|
||||
Function getText,
|
||||
String Function(Expression) getNodeText,
|
||||
String Function(int) getLinePrefix,
|
||||
String Function(int) getIndent,
|
||||
String Function(int, int) getText,
|
||||
FileEditBuilder builder) {
|
||||
var childArg = namedExp.expression;
|
||||
var childLoc = namedExp.offset + 'child'.length;
|
||||
builder.addSimpleInsertion(childLoc, 'ren');
|
||||
var listLoc = childArg.offset;
|
||||
String childArgSrc = getNodeText(childArg);
|
||||
var childArgSrc = getNodeText(childArg);
|
||||
if (!childArgSrc.contains(eol)) {
|
||||
builder.addSimpleInsertion(listLoc, '[');
|
||||
builder.addSimpleInsertion(listLoc + childArg.length, ']');
|
||||
|
@ -60,11 +60,10 @@ class FlutterConvertToChildren extends CorrectionProducer {
|
|||
if (newlineLoc == childArgSrc.length) {
|
||||
newlineLoc -= 1;
|
||||
}
|
||||
String indentOld =
|
||||
getLinePrefix(childArg.offset + eol.length + newlineLoc);
|
||||
var indentOld = getLinePrefix(childArg.offset + eol.length + newlineLoc);
|
||||
var indentNew = '$indentOld${getIndent(1)}';
|
||||
// The separator includes 'child:' but that has no newlines.
|
||||
String separator =
|
||||
var separator =
|
||||
getText(namedExp.offset, childArg.offset - namedExp.offset);
|
||||
var prefix = separator.contains(eol) ? '' : '$eol$indentNew';
|
||||
if (prefix.isEmpty) {
|
||||
|
|
|
@ -151,7 +151,7 @@ class AnalysisOptionsFixGenerator {
|
|||
} else if (nodes.containsValue(child)) {
|
||||
for (var entry in nodes.entries) {
|
||||
if (child == entry.value) {
|
||||
key = entry.key;
|
||||
key = entry.key as YamlNode?;
|
||||
value = child;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -91,6 +91,7 @@ class TransformOverrideSetParser {
|
|||
/// Report any keys in the [map] whose values are not in [validKeys].
|
||||
void _reportUnsupportedKeys(YamlMap map, Set<String> validKeys) {
|
||||
for (var keyNode in map.nodes.keys) {
|
||||
keyNode as YamlNode;
|
||||
var key = _translateKey(keyNode);
|
||||
if (key != null && !validKeys.contains(key)) {
|
||||
_reportError(TransformSetErrorCode.unsupportedKey, keyNode, [key]);
|
||||
|
|
|
@ -292,6 +292,7 @@ class TransformSetParser {
|
|||
/// Report any keys in the [map] whose values are not in [validKeys].
|
||||
void _reportUnsupportedKeys(YamlMap map, Set<String> validKeys) {
|
||||
for (var keyNode in map.nodes.keys) {
|
||||
keyNode as YamlNode;
|
||||
var key = _translateKey(keyNode);
|
||||
if (key != null && !validKeys.contains(key)) {
|
||||
_reportError(TransformSetErrorCode.unsupportedKey, keyNode, [key]);
|
||||
|
@ -910,7 +911,7 @@ class TransformSetParser {
|
|||
if (node is YamlMap) {
|
||||
var generators = <String, ValueGenerator>{};
|
||||
for (var entry in node.nodes.entries) {
|
||||
var name = _translateKey(entry.key);
|
||||
var name = _translateKey(entry.key as YamlNode);
|
||||
if (name != null) {
|
||||
var value = _translateValueGenerator(
|
||||
entry.value, ErrorContext(key: name, parentNode: node));
|
||||
|
|
|
@ -492,8 +492,8 @@ Expression stepUpNamedExpression(Expression expression) {
|
|||
}
|
||||
|
||||
/// Return `true` if the given [lists] are identical at the given [position].
|
||||
bool _allListsIdentical(List<List> lists, int position) {
|
||||
Object element = lists[0][position];
|
||||
bool _allListsIdentical(List<List<Object>> lists, int position) {
|
||||
var element = lists[0][position];
|
||||
for (var list in lists) {
|
||||
if (list[position] != element) {
|
||||
return false;
|
||||
|
|
|
@ -80,13 +80,13 @@ mixin TreeWriter {
|
|||
|
||||
/// Write the [value] of the property with the given [name].
|
||||
void _writePropertyValue(Object value, int baseIndent) {
|
||||
if (value is List) {
|
||||
if (value is List<Object>) {
|
||||
if (value.isEmpty) {
|
||||
buffer.write('[]');
|
||||
} else {
|
||||
var elementIndent = baseIndent + 2;
|
||||
buffer.write('[<br>');
|
||||
for (Object element in value) {
|
||||
for (var element in value) {
|
||||
indent(elementIndent);
|
||||
_writePropertyValue(element, elementIndent);
|
||||
buffer.write('<br>');
|
||||
|
|
Loading…
Reference in a new issue