Simplify canParse on LSP types to only check for required fields
Change-Id: Idafb6936f0dd7adf283a690c5e56e2eebfc53ee4
Reviewed-on: https://dart-review.googlesource.com/c/80666
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
diff --git a/pkg/analysis_server/lib/lsp_protocol/protocol_generated.dart b/pkg/analysis_server/lib/lsp_protocol/protocol_generated.dart
index 97a2721..1c32810 100644
--- a/pkg/analysis_server/lib/lsp_protocol/protocol_generated.dart
+++ b/pkg/analysis_server/lib/lsp_protocol/protocol_generated.dart
@@ -39,15 +39,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('edit') || !WorkspaceEdit.canParse(map['edit'])) {
- return false;
- }
- const validFieldNames = ['label', 'edit'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('edit') &&
+ WorkspaceEdit.canParse(obj['edit']);
}
}
@@ -73,15 +67,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('applied') || !map['applied'] is bool) {
- return false;
- }
- const validFieldNames = ['applied'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('applied') &&
+ obj['applied'] is bool;
}
}
@@ -110,15 +98,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('id') || !(map['id'] is num || map['id'] is String)) {
- return false;
- }
- const validFieldNames = ['id'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('id') &&
+ (obj['id'] is num || obj['id'] is String);
}
}
@@ -157,12 +139,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['workspace', 'textDocument', 'experimental'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -226,15 +203,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('title') || !map['title'] is String) {
- return false;
- }
- const validFieldNames = ['title', 'kind', 'diagnostics', 'edit', 'command'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('title') &&
+ obj['title'] is String;
}
}
@@ -275,19 +246,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('diagnostics') ||
- !(map['diagnostics'] is List &&
- (map['diagnostics'].length == 0 ||
- map['diagnostics']
- .every((item) => Diagnostic.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['diagnostics', 'only'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('diagnostics') &&
+ (obj['diagnostics'] is List &&
+ (obj['diagnostics'].length == 0 ||
+ obj['diagnostics'].every((item) => Diagnostic.canParse(item))));
}
}
@@ -365,12 +328,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['codeActionKinds'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -415,23 +373,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('context') ||
- !CodeActionContext.canParse(map['context'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'range', 'context'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('context') &&
+ CodeActionContext.canParse(obj['context']);
}
}
@@ -468,19 +416,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['documentSelector', 'codeActionKinds'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -527,15 +468,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- const validFieldNames = ['range', 'command', 'data'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']);
}
}
@@ -559,12 +494,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['resolveProvider'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -591,16 +521,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -632,19 +555,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['resolveProvider', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -687,24 +603,15 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('red') || !map['red'] is num) {
- return false;
- }
- if (!map.containsKey('green') || !map['green'] is num) {
- return false;
- }
- if (!map.containsKey('blue') || !map['blue'] is num) {
- return false;
- }
- if (!map.containsKey('alpha') || !map['alpha'] is num) {
- return false;
- }
- const validFieldNames = ['red', 'green', 'blue', 'alpha'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('red') &&
+ obj['red'] is num &&
+ obj.containsKey('green') &&
+ obj['green'] is num &&
+ obj.containsKey('blue') &&
+ obj['blue'] is num &&
+ obj.containsKey('alpha') &&
+ obj['alpha'] is num;
}
}
@@ -737,18 +644,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('color') || !Color.canParse(map['color'])) {
- return false;
- }
- const validFieldNames = ['range', 'color'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('color') &&
+ Color.canParse(obj['color']);
}
}
@@ -796,15 +696,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('label') || !map['label'] is String) {
- return false;
- }
- const validFieldNames = ['label', 'textEdit', 'additionalTextEdits'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('label') &&
+ obj['label'] is String;
}
}
@@ -847,22 +741,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('color') || !Color.canParse(map['color'])) {
- return false;
- }
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'color', 'range'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('color') &&
+ Color.canParse(obj['color']) &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']);
}
}
@@ -874,12 +759,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [''];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -921,18 +801,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('title') || !map['title'] is String) {
- return false;
- }
- if (!map.containsKey('command') || !map['command'] is String) {
- return false;
- }
- const validFieldNames = ['title', 'command', 'arguments'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('title') &&
+ obj['title'] is String &&
+ obj.containsKey('command') &&
+ obj['command'] is String;
}
}
@@ -968,16 +841,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('triggerKind') ||
- !CompletionTriggerKind.canParse(map['triggerKind'])) {
- return false;
- }
- const validFieldNames = ['triggerKind', 'triggerCharacter'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('triggerKind') &&
+ CompletionTriggerKind.canParse(obj['triggerKind']);
}
}
@@ -1178,31 +1044,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('label') || !map['label'] is String) {
- return false;
- }
- const validFieldNames = [
- 'label',
- 'kind',
- 'detail',
- 'documentation',
- 'deprecated',
- 'preselect',
- 'sortText',
- 'filterText',
- 'insertText',
- 'insertTextFormat',
- 'textEdit',
- 'additionalTextEdits',
- 'commitCharacters',
- 'command',
- 'data'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('label') &&
+ obj['label'] is String;
}
}
@@ -1318,21 +1162,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('isIncomplete') || !map['isIncomplete'] is bool) {
- return false;
- }
- if (!map.containsKey('items') ||
- !(map['items'] is List &&
- (map['items'].length == 0 ||
- map['items'].every((item) => CompletionItem.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['isIncomplete', 'items'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('isIncomplete') &&
+ obj['isIncomplete'] is bool &&
+ obj.containsKey('items') &&
+ (obj['items'] is List &&
+ (obj['items'].length == 0 ||
+ obj['items'].every((item) => CompletionItem.canParse(item))));
}
}
@@ -1367,12 +1203,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['resolveProvider', 'triggerCharacters'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -1417,19 +1248,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('position') || !Position.canParse(map['position'])) {
- return false;
- }
- const validFieldNames = ['context', 'textDocument', 'position'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('position') &&
+ Position.canParse(obj['position']);
}
}
@@ -1483,23 +1306,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = [
- 'triggerCharacters',
- 'resolveProvider',
- 'documentSelector'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -1570,12 +1382,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['scopeUri', 'section'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -1602,19 +1409,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('items') ||
- !(map['items'] is List &&
- (map['items'].length == 0 ||
- map['items']
- .every((item) => ConfigurationItem.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['items'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('items') &&
+ (obj['items'] is List &&
+ (obj['items'].length == 0 ||
+ obj['items']
+ .every((item) => ConfigurationItem.canParse(item))));
}
}
@@ -1647,15 +1447,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- const validFieldNames = ['uri', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String;
}
}
@@ -1686,12 +1480,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['overwrite', 'ignoreIfExists'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -1724,15 +1513,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- const validFieldNames = ['uri', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String;
}
}
@@ -1763,12 +1546,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['recursive', 'ignoreIfNotExists'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -1843,25 +1621,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('message') || !map['message'] is String) {
- return false;
- }
- const validFieldNames = [
- 'range',
- 'severity',
- 'code',
- 'source',
- 'message',
- 'relatedInformation'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('message') &&
+ obj['message'] is String;
}
}
@@ -1899,18 +1663,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('location') || !Location.canParse(map['location'])) {
- return false;
- }
- if (!map.containsKey('message') || !map['message'] is String) {
- return false;
- }
- const validFieldNames = ['location', 'message'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('location') &&
+ Location.canParse(obj['location']) &&
+ obj.containsKey('message') &&
+ obj['message'] is String;
}
}
@@ -1976,15 +1733,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('settings') || !true) {
- return false;
- }
- const validFieldNames = ['settings'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> && obj.containsKey('settings') && true;
}
}
@@ -2027,23 +1776,14 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !VersionedTextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('contentChanges') ||
- !(map['contentChanges'] is List &&
- (map['contentChanges'].length == 0 ||
- map['contentChanges'].every((item) =>
- TextDocumentContentChangeEvent.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['textDocument', 'contentChanges'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ VersionedTextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('contentChanges') &&
+ (obj['contentChanges'] is List &&
+ (obj['contentChanges'].length == 0 ||
+ obj['contentChanges'].every(
+ (item) => TextDocumentContentChangeEvent.canParse(item))));
}
}
@@ -2072,18 +1812,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('changes') ||
- !(map['changes'] is List &&
- (map['changes'].length == 0 ||
- map['changes'].every((item) => FileEvent.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['changes'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('changes') &&
+ (obj['changes'] is List &&
+ (obj['changes'].length == 0 ||
+ obj['changes'].every((item) => FileEvent.canParse(item))));
}
}
@@ -2115,19 +1848,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('watchers') ||
- !(map['watchers'] is List &&
- (map['watchers'].length == 0 ||
- map['watchers']
- .every((item) => FileSystemWatcher.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['watchers'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('watchers') &&
+ (obj['watchers'] is List &&
+ (obj['watchers'].length == 0 ||
+ obj['watchers']
+ .every((item) => FileSystemWatcher.canParse(item))));
}
}
@@ -2152,16 +1878,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('event') ||
- !WorkspaceFoldersChangeEvent.canParse(map['event'])) {
- return false;
- }
- const validFieldNames = ['event'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('event') &&
+ WorkspaceFoldersChangeEvent.canParse(obj['event']);
}
}
@@ -2188,16 +1907,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -2223,16 +1935,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentItem.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentItem.canParse(obj['textDocument']);
}
}
@@ -2267,16 +1972,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'text'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -2313,12 +2011,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['language', 'scheme', 'pattern'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -2354,20 +2047,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('options') ||
- !FormattingOptions.canParse(map['options'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('options') &&
+ FormattingOptions.canParse(obj['options']);
}
}
@@ -2402,15 +2086,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- const validFieldNames = ['range', 'kind'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']);
}
}
@@ -2491,15 +2169,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- const validFieldNames = ['range', 'target', 'data'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']);
}
}
@@ -2523,12 +2195,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['resolveProvider'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -2555,16 +2222,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -2599,19 +2259,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['resolveProvider', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -2650,16 +2303,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('firstTriggerCharacter') ||
- !map['firstTriggerCharacter'] is String) {
- return false;
- }
- const validFieldNames = ['firstTriggerCharacter', 'moreTriggerCharacter'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('firstTriggerCharacter') &&
+ obj['firstTriggerCharacter'] is String;
}
}
@@ -2714,26 +2360,15 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('position') || !Position.canParse(map['position'])) {
- return false;
- }
- if (!map.containsKey('ch') || !map['ch'] is String) {
- return false;
- }
- if (!map.containsKey('options') ||
- !FormattingOptions.canParse(map['options'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'position', 'ch', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('position') &&
+ Position.canParse(obj['position']) &&
+ obj.containsKey('ch') &&
+ obj['ch'] is String &&
+ obj.containsKey('options') &&
+ FormattingOptions.canParse(obj['options']);
}
}
@@ -2783,27 +2418,14 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('firstTriggerCharacter') ||
- !map['firstTriggerCharacter'] is String) {
- return false;
- }
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = [
- 'firstTriggerCharacter',
- 'moreTriggerCharacter',
- 'documentSelector'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('firstTriggerCharacter') &&
+ obj['firstTriggerCharacter'] is String &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -2847,23 +2469,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('options') ||
- !FormattingOptions.canParse(map['options'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'range', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('options') &&
+ FormattingOptions.canParse(obj['options']);
}
}
@@ -2949,33 +2561,15 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('name') || !map['name'] is String) {
- return false;
- }
- if (!map.containsKey('kind') || !SymbolKind.canParse(map['kind'])) {
- return false;
- }
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('selectionRange') ||
- !Range.canParse(map['selectionRange'])) {
- return false;
- }
- const validFieldNames = [
- 'name',
- 'detail',
- 'kind',
- 'deprecated',
- 'range',
- 'selectionRange',
- 'children'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('name') &&
+ obj['name'] is String &&
+ obj.containsKey('kind') &&
+ SymbolKind.canParse(obj['kind']) &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('selectionRange') &&
+ Range.canParse(obj['selectionRange']);
}
}
@@ -3002,16 +2596,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -3052,18 +2639,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('commands') ||
- !(map['commands'] is List &&
- (map['commands'].length == 0 ||
- map['commands'].every((item) => item is String)))) {
- return false;
- }
- const validFieldNames = ['commands'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('commands') &&
+ (obj['commands'] is List &&
+ (obj['commands'].length == 0 ||
+ obj['commands'].every((item) => item is String)));
}
}
@@ -3097,15 +2677,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('command') || !map['command'] is String) {
- return false;
- }
- const validFieldNames = ['command', 'arguments'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('command') &&
+ obj['command'] is String;
}
}
@@ -3134,18 +2708,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('commands') ||
- !(map['commands'] is List &&
- (map['commands'].length == 0 ||
- map['commands'].every((item) => item is String)))) {
- return false;
- }
- const validFieldNames = ['commands'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('commands') &&
+ (obj['commands'] is List &&
+ (obj['commands'].length == 0 ||
+ obj['commands'].every((item) => item is String)));
}
}
@@ -3265,18 +2832,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- if (!map.containsKey('type') || !map['type'] is num) {
- return false;
- }
- const validFieldNames = ['uri', 'type'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String &&
+ obj.containsKey('type') &&
+ obj['type'] is num;
}
}
@@ -3311,15 +2871,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('globPattern') || !map['globPattern'] is String) {
- return false;
- }
- const validFieldNames = ['globPattern', 'kind'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('globPattern') &&
+ obj['globPattern'] is String;
}
}
@@ -3384,24 +2938,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('startLine') || !map['startLine'] is num) {
- return false;
- }
- if (!map.containsKey('endLine') || !map['endLine'] is num) {
- return false;
- }
- const validFieldNames = [
- 'startLine',
- 'startCharacter',
- 'endLine',
- 'endCharacter',
- 'kind'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('startLine') &&
+ obj['startLine'] is num &&
+ obj.containsKey('endLine') &&
+ obj['endLine'] is num;
}
}
@@ -3465,16 +3006,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- const validFieldNames = ['textDocument'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']);
}
}
@@ -3486,12 +3020,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [''];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -3527,18 +3056,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('tabSize') || !map['tabSize'] is num) {
- return false;
- }
- if (!map.containsKey('insertSpaces') || !map['insertSpaces'] is bool) {
- return false;
- }
- const validFieldNames = ['tabSize', 'insertSpaces'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('tabSize') &&
+ obj['tabSize'] is num &&
+ obj.containsKey('insertSpaces') &&
+ obj['insertSpaces'] is bool;
}
}
@@ -3590,21 +3112,14 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('contents') ||
- !(MarkedString.canParse(map['contents']) ||
- (map['contents'] is List &&
- (map['contents'].length == 0 ||
- map['contents']
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('contents') &&
+ (MarkedString.canParse(obj['contents']) ||
+ (obj['contents'] is List &&
+ (obj['contents'].length == 0 ||
+ obj['contents']
.every((item) => MarkedString.canParse(item)))) ||
- MarkupContent.canParse(map['contents']))) {
- return false;
- }
- const validFieldNames = ['contents', 'range'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ MarkupContent.canParse(obj['contents']));
}
}
@@ -3679,29 +3194,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('processId') || !map['processId'] is num) {
- return false;
- }
- if (!map.containsKey('rootUri') || !map['rootUri'] is String) {
- return false;
- }
- if (!map.containsKey('capabilities') ||
- !ClientCapabilities.canParse(map['capabilities'])) {
- return false;
- }
- const validFieldNames = [
- 'processId',
- 'rootPath',
- 'rootUri',
- 'initializationOptions',
- 'capabilities',
- 'workspaceFolders'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('processId') &&
+ obj['processId'] is num &&
+ obj.containsKey('rootUri') &&
+ obj['rootUri'] is String &&
+ obj.containsKey('capabilities') &&
+ ClientCapabilities.canParse(obj['capabilities']);
}
}
@@ -3727,16 +3226,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('capabilities') ||
- !ServerCapabilities.canParse(map['capabilities'])) {
- return false;
- }
- const validFieldNames = ['capabilities'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('capabilities') &&
+ ServerCapabilities.canParse(obj['capabilities']);
}
}
@@ -3747,12 +3239,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [''];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -3823,18 +3310,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- const validFieldNames = ['uri', 'range'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']);
}
}
@@ -3868,18 +3348,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('type') || !MessageType.canParse(map['type'])) {
- return false;
- }
- if (!map.containsKey('message') || !map['message'] is String) {
- return false;
- }
- const validFieldNames = ['type', 'message'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('type') &&
+ MessageType.canParse(obj['type']) &&
+ obj.containsKey('message') &&
+ obj['message'] is String;
}
}
@@ -3910,18 +3383,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('language') || !map['language'] is String) {
- return false;
- }
- if (!map.containsKey('value') || !map['value'] is String) {
- return false;
- }
- const validFieldNames = ['language', 'value'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('language') &&
+ obj['language'] is String &&
+ obj.containsKey('value') &&
+ obj['value'] is String;
}
}
@@ -3979,18 +3445,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('kind') || !MarkupKind.canParse(map['kind'])) {
- return false;
- }
- if (!map.containsKey('value') || !map['value'] is String) {
- return false;
- }
- const validFieldNames = ['kind', 'value'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('kind') &&
+ MarkupKind.canParse(obj['kind']) &&
+ obj.containsKey('value') &&
+ obj['value'] is String;
}
}
@@ -4053,15 +3512,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('jsonrpc') || !map['jsonrpc'] is String) {
- return false;
- }
- const validFieldNames = ['jsonrpc'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('jsonrpc') &&
+ obj['jsonrpc'] is String;
}
}
@@ -4086,15 +3539,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('title') || !map['title'] is String) {
- return false;
- }
- const validFieldNames = ['title'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('title') &&
+ obj['title'] is String;
}
}
@@ -4167,18 +3614,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('method') || !map['method'] is String) {
- return false;
- }
- if (!map.containsKey('jsonrpc') || !map['jsonrpc'] is String) {
- return false;
- }
- const validFieldNames = ['method', 'jsonrpc'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('method') &&
+ obj['method'] is String &&
+ obj.containsKey('jsonrpc') &&
+ obj['jsonrpc'] is String;
}
}
@@ -4218,15 +3658,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('label') || !map['label'] is String) {
- return false;
- }
- const validFieldNames = ['label', 'documentation'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('label') &&
+ obj['label'] is String;
}
}
@@ -4266,18 +3700,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('line') || !map['line'] is num) {
- return false;
- }
- if (!map.containsKey('character') || !map['character'] is num) {
- return false;
- }
- const validFieldNames = ['line', 'character'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('line') &&
+ obj['line'] is num &&
+ obj.containsKey('character') &&
+ obj['character'] is num;
}
}
@@ -4314,22 +3741,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- if (!map.containsKey('diagnostics') ||
- !(map['diagnostics'] is List &&
- (map['diagnostics'].length == 0 ||
- map['diagnostics']
- .every((item) => Diagnostic.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['uri', 'diagnostics'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String &&
+ obj.containsKey('diagnostics') &&
+ (obj['diagnostics'] is List &&
+ (obj['diagnostics'].length == 0 ||
+ obj['diagnostics'].every((item) => Diagnostic.canParse(item))));
}
}
@@ -4362,18 +3780,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('start') || !Position.canParse(map['start'])) {
- return false;
- }
- if (!map.containsKey('end') || !Position.canParse(map['end'])) {
- return false;
- }
- const validFieldNames = ['start', 'end'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('start') &&
+ Position.canParse(obj['start']) &&
+ obj.containsKey('end') &&
+ Position.canParse(obj['end']);
}
}
@@ -4399,16 +3810,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('includeDeclaration') ||
- !map['includeDeclaration'] is bool) {
- return false;
- }
- const validFieldNames = ['includeDeclaration'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('includeDeclaration') &&
+ obj['includeDeclaration'] is bool;
}
}
@@ -4452,23 +3856,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('context') ||
- !ReferenceContext.canParse(map['context'])) {
- return false;
- }
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('position') || !Position.canParse(map['position'])) {
- return false;
- }
- const validFieldNames = ['context', 'textDocument', 'position'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('context') &&
+ ReferenceContext.canParse(obj['context']) &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('position') &&
+ Position.canParse(obj['position']);
}
}
@@ -4510,18 +3904,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('id') || !map['id'] is String) {
- return false;
- }
- if (!map.containsKey('method') || !map['method'] is String) {
- return false;
- }
- const validFieldNames = ['id', 'method', 'registerOptions'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('id') &&
+ obj['id'] is String &&
+ obj.containsKey('method') &&
+ obj['method'] is String;
}
}
@@ -4549,19 +3936,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('registrations') ||
- !(map['registrations'] is List &&
- (map['registrations'].length == 0 ||
- map['registrations']
- .every((item) => Registration.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['registrations'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('registrations') &&
+ (obj['registrations'] is List &&
+ (obj['registrations'].length == 0 ||
+ obj['registrations']
+ .every((item) => Registration.canParse(item))));
}
}
@@ -4602,18 +3982,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('oldUri') || !map['oldUri'] is String) {
- return false;
- }
- if (!map.containsKey('newUri') || !map['newUri'] is String) {
- return false;
- }
- const validFieldNames = ['oldUri', 'newUri', 'options'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('oldUri') &&
+ obj['oldUri'] is String &&
+ obj.containsKey('newUri') &&
+ obj['newUri'] is String;
}
}
@@ -4645,12 +4018,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['overwrite', 'ignoreIfExists'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -4675,12 +4043,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['prepareProvider'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -4727,22 +4090,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('position') || !Position.canParse(map['position'])) {
- return false;
- }
- if (!map.containsKey('newName') || !map['newName'] is String) {
- return false;
- }
- const validFieldNames = ['textDocument', 'position', 'newName'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('position') &&
+ Position.canParse(obj['position']) &&
+ obj.containsKey('newName') &&
+ obj['newName'] is String;
}
}
@@ -4776,19 +4130,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['prepareProvider', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -4832,21 +4179,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('id') || !(map['id'] is num || map['id'] is String)) {
- return false;
- }
- if (!map.containsKey('method') || !map['method'] is String) {
- return false;
- }
- if (!map.containsKey('jsonrpc') || !map['jsonrpc'] is String) {
- return false;
- }
- const validFieldNames = ['id', 'method', 'jsonrpc'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('id') &&
+ (obj['id'] is num || obj['id'] is String) &&
+ obj.containsKey('method') &&
+ obj['method'] is String &&
+ obj.containsKey('jsonrpc') &&
+ obj['jsonrpc'] is String;
}
}
@@ -4923,18 +4262,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('id') || !(map['id'] is num || map['id'] is String)) {
- return false;
- }
- if (!map.containsKey('jsonrpc') || !map['jsonrpc'] is String) {
- return false;
- }
- const validFieldNames = ['id', 'result', 'jsonrpc'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('id') &&
+ (obj['id'] is num || obj['id'] is String) &&
+ obj.containsKey('jsonrpc') &&
+ obj['jsonrpc'] is String;
}
}
@@ -4959,12 +4291,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['includeText'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -5200,32 +4527,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [
- 'textDocumentSync',
- 'hoverProvider',
- 'completionProvider',
- 'signatureHelpProvider',
- 'definitionProvider',
- 'referencesProvider',
- 'documentHighlightProvider',
- 'documentSymbolProvider',
- 'workspaceSymbolProvider',
- 'codeActionProvider',
- 'codeLensProvider',
- 'documentFormattingProvider',
- 'documentRangeFormattingProvider',
- 'documentOnTypeFormattingProvider',
- 'renameProvider',
- 'documentLinkProvider',
- 'executeCommandProvider',
- 'supported',
- 'changeNotifications'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -5259,18 +4561,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('type') || !MessageType.canParse(map['type'])) {
- return false;
- }
- if (!map.containsKey('message') || !map['message'] is String) {
- return false;
- }
- const validFieldNames = ['type', 'message'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('type') &&
+ MessageType.canParse(obj['type']) &&
+ obj.containsKey('message') &&
+ obj['message'] is String;
}
}
@@ -5314,18 +4609,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('type') || !MessageType.canParse(map['type'])) {
- return false;
- }
- if (!map.containsKey('message') || !map['message'] is String) {
- return false;
- }
- const validFieldNames = ['type', 'message', 'actions'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('type') &&
+ MessageType.canParse(obj['type']) &&
+ obj.containsKey('message') &&
+ obj['message'] is String;
}
}
@@ -5385,23 +4673,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('signatures') ||
- !(map['signatures'] is List &&
- (map['signatures'].length == 0 ||
- map['signatures']
- .every((item) => SignatureInformation.canParse(item))))) {
- return false;
- }
- const validFieldNames = [
- 'signatures',
- 'activeSignature',
- 'activeParameter'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('signatures') &&
+ (obj['signatures'] is List &&
+ (obj['signatures'].length == 0 ||
+ obj['signatures']
+ .every((item) => SignatureInformation.canParse(item))));
}
}
@@ -5429,12 +4706,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['triggerCharacters'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -5474,19 +4746,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['triggerCharacters', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -5538,15 +4803,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('label') || !map['label'] is String) {
- return false;
- }
- const validFieldNames = ['label', 'documentation', 'parameters'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('label') &&
+ obj['label'] is String;
}
}
@@ -5573,12 +4832,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['id'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -5653,27 +4907,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('name') || !map['name'] is String) {
- return false;
- }
- if (!map.containsKey('kind') || !map['kind'] is num) {
- return false;
- }
- if (!map.containsKey('location') || !Location.canParse(map['location'])) {
- return false;
- }
- const validFieldNames = [
- 'name',
- 'kind',
- 'deprecated',
- 'location',
- 'containerName'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('name') &&
+ obj['name'] is String &&
+ obj.containsKey('kind') &&
+ obj['kind'] is num &&
+ obj.containsKey('location') &&
+ Location.canParse(obj['location']);
}
}
@@ -5794,22 +5034,14 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('syncKind') || !map['syncKind'] is num) {
- return false;
- }
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['syncKind', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('syncKind') &&
+ obj['syncKind'] is num &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -5861,17 +5093,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [
- 'dynamicRegistration',
- 'willSave',
- 'willSaveWaitUntil',
- 'didSave'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -5913,15 +5135,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('text') || !map['text'] is String) {
- return false;
- }
- const validFieldNames = ['range', 'rangeLength', 'text'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('text') &&
+ obj['text'] is String;
}
}
@@ -5959,22 +5175,13 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !VersionedTextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('edits') ||
- !(map['edits'] is List &&
- (map['edits'].length == 0 ||
- map['edits'].every((item) => TextEdit.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['textDocument', 'edits'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ VersionedTextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('edits') &&
+ (obj['edits'] is List &&
+ (obj['edits'].length == 0 ||
+ obj['edits'].every((item) => TextEdit.canParse(item))));
}
}
@@ -5999,15 +5206,9 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- const validFieldNames = ['uri'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String;
}
}
@@ -6059,24 +5260,15 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- if (!map.containsKey('languageId') || !map['languageId'] is String) {
- return false;
- }
- if (!map.containsKey('version') || !map['version'] is num) {
- return false;
- }
- if (!map.containsKey('text') || !map['text'] is String) {
- return false;
- }
- const validFieldNames = ['uri', 'languageId', 'version', 'text'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String &&
+ obj.containsKey('languageId') &&
+ obj['languageId'] is String &&
+ obj.containsKey('version') &&
+ obj['version'] is num &&
+ obj.containsKey('text') &&
+ obj['text'] is String;
}
}
@@ -6112,19 +5304,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('position') || !Position.canParse(map['position'])) {
- return false;
- }
- const validFieldNames = ['textDocument', 'position'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('position') &&
+ Position.canParse(obj['position']);
}
}
@@ -6150,19 +5334,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -6238,19 +5415,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('documentSelector') ||
- !(map['documentSelector'] is List &&
- (map['documentSelector'].length == 0 ||
- map['documentSelector']
- .every((item) => DocumentFilter.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['includeText', 'documentSelector'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('documentSelector') &&
+ (obj['documentSelector'] is List &&
+ (obj['documentSelector'].length == 0 ||
+ obj['documentSelector']
+ .every((item) => DocumentFilter.canParse(item))));
}
}
@@ -6351,18 +5521,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [
- 'openClose',
- 'change',
- 'willSave',
- 'willSaveWaitUntil',
- 'save'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -6399,18 +5558,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('range') || !Range.canParse(map['range'])) {
- return false;
- }
- if (!map.containsKey('newText') || !map['newText'] is String) {
- return false;
- }
- const validFieldNames = ['range', 'newText'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('range') &&
+ Range.canParse(obj['range']) &&
+ obj.containsKey('newText') &&
+ obj['newText'] is String;
}
}
@@ -6446,18 +5598,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('id') || !map['id'] is String) {
- return false;
- }
- if (!map.containsKey('method') || !map['method'] is String) {
- return false;
- }
- const validFieldNames = ['id', 'method'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('id') &&
+ obj['id'] is String &&
+ obj.containsKey('method') &&
+ obj['method'] is String;
}
}
@@ -6485,19 +5630,12 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('unregisterations') ||
- !(map['unregisterations'] is List &&
- (map['unregisterations'].length == 0 ||
- map['unregisterations']
- .every((item) => Unregistration.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['unregisterations'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('unregisterations') &&
+ (obj['unregisterations'] is List &&
+ (obj['unregisterations'].length == 0 ||
+ obj['unregisterations']
+ .every((item) => Unregistration.canParse(item))));
}
}
@@ -6539,18 +5677,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('version') || !map['version'] is num) {
- return false;
- }
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- const validFieldNames = ['version', 'uri'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('version') &&
+ obj['version'] is num &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String;
}
}
@@ -6623,19 +5754,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('textDocument') ||
- !TextDocumentIdentifier.canParse(map['textDocument'])) {
- return false;
- }
- if (!map.containsKey('reason') || !map['reason'] is num) {
- return false;
- }
- const validFieldNames = ['textDocument', 'reason'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('textDocument') &&
+ TextDocumentIdentifier.canParse(obj['textDocument']) &&
+ obj.containsKey('reason') &&
+ obj['reason'] is num;
}
}
@@ -6692,17 +5815,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = [
- 'applyEdit',
- 'documentChanges',
- 'resourceOperations',
- 'failureHandling'
- ];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -6754,12 +5867,7 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- const validFieldNames = ['changes', 'documentChanges'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic>;
}
}
@@ -6794,18 +5902,11 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('uri') || !map['uri'] is String) {
- return false;
- }
- if (!map.containsKey('name') || !map['name'] is String) {
- return false;
- }
- const validFieldNames = ['uri', 'name'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('uri') &&
+ obj['uri'] is String &&
+ obj.containsKey('name') &&
+ obj['name'] is String;
}
}
@@ -6846,26 +5947,17 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('added') ||
- !(map['added'] is List &&
- (map['added'].length == 0 ||
- map['added']
- .every((item) => WorkspaceFolder.canParse(item))))) {
- return false;
- }
- if (!map.containsKey('removed') ||
- !(map['removed'] is List &&
- (map['removed'].length == 0 ||
- map['removed']
- .every((item) => WorkspaceFolder.canParse(item))))) {
- return false;
- }
- const validFieldNames = ['added', 'removed'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('added') &&
+ (obj['added'] is List &&
+ (obj['added'].length == 0 ||
+ obj['added']
+ .every((item) => WorkspaceFolder.canParse(item)))) &&
+ obj.containsKey('removed') &&
+ (obj['removed'] is List &&
+ (obj['removed'].length == 0 ||
+ obj['removed']
+ .every((item) => WorkspaceFolder.canParse(item))));
}
}
@@ -6891,14 +5983,8 @@
}
static bool canParse(Object obj) {
- if (!obj is Map<String, dynamic>) {
- return false;
- }
- final map = obj as Map<String, dynamic>;
- if (!map.containsKey('query') || !map['query'] is String) {
- return false;
- }
- const validFieldNames = ['query'];
- return map.keys.every((k) => validFieldNames.contains(k));
+ return obj is Map<String, dynamic> &&
+ obj.containsKey('query') &&
+ obj['query'] is String;
}
}
diff --git a/pkg/analysis_server/tool/lsp_spec/codegen_dart.dart b/pkg/analysis_server/tool/lsp_spec/codegen_dart.dart
index 065a31b..1f96c64 100644
--- a/pkg/analysis_server/tool/lsp_spec/codegen_dart.dart
+++ b/pkg/analysis_server/tool/lsp_spec/codegen_dart.dart
@@ -170,34 +170,18 @@
buffer
..writeIndentedln('static bool canParse(Object obj) {')
..indent()
- ..writeIndentedln('if (!obj is Map<String, dynamic>) {')
- ..indent()
- ..writeIndentedln('return false;')
- ..outdent()
- ..writeIndentedln('}')
- ..writeIndentedln('final map = obj as Map<String, dynamic>;');
+ ..writeIndentedln('return obj is Map<String, dynamic>');
// In order to consider this valid for parsing, all fields that may not be
// undefined must be present and also type check for the correct type.
- // If these pass, there must also be no fields that are not defined for this
- // type.
- final allFields = _getAllFields(interface);
- final requiredFields = allFields.where((f) => !f.allowsUndefined);
+ final requiredFields =
+ _getAllFields(interface).where((f) => !f.allowsUndefined);
for (var field in requiredFields) {
- buffer.writeIndented("if (!map.containsKey('${field.name}') || !");
+ buffer.write("&& obj.containsKey('${field.name}') && ");
_writeTypeCheckCondition(
- buffer, "map['${field.name}']", _mapType(field.types));
- buffer
- ..writeln(') {')
- ..indent()
- ..writeIndentedln('return false;')
- ..outdent()
- ..writeIndentedln('}');
+ buffer, "obj['${field.name}']", _mapType(field.types));
}
- final fieldNames = allFields.map((f) => f.name).join("', '");
- buffer.writeIndentedln("const validFieldNames = ['$fieldNames'];");
buffer
- ..writeIndentedln(
- 'return map.keys.every((k) => validFieldNames.contains(k));')
+ ..writeln(';')
..outdent()
..writeIndentedln('}');
}