| Index: pkg/analyzer_plugin/test/integration/support/protocol_matchers.dart
|
| diff --git a/pkg/analyzer_plugin/test/integration/support/protocol_matchers.dart b/pkg/analyzer_plugin/test/integration/support/protocol_matchers.dart
|
| index 05f51a7e1f98e8414fde3bd6cf00f2f9b3a4c79e..87dd5a4385bc1463788e4620a2f4f25c85356e1b 100644
|
| --- a/pkg/analyzer_plugin/test/integration/support/protocol_matchers.dart
|
| +++ b/pkg/analyzer_plugin/test/integration/support/protocol_matchers.dart
|
| @@ -14,1288 +14,1236 @@ import 'package:test/test.dart';
|
| import 'integration_tests.dart';
|
|
|
| /**
|
| - * plugin.versionCheck params
|
| + * AddContentOverlay
|
| *
|
| * {
|
| - * "byteStorePath": String
|
| - * "version": String
|
| + * "type": "add"
|
| + * "content": String
|
| * }
|
| */
|
| -final Matcher isPluginVersionCheckParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("plugin.versionCheck params",
|
| - {"byteStorePath": isString, "version": isString}));
|
| +final Matcher isAddContentOverlay = new LazyMatcher(() => new MatchesJsonObject(
|
| + "AddContentOverlay", {"type": equals("add"), "content": isString}));
|
|
|
| /**
|
| - * plugin.versionCheck result
|
| + * AnalysisError
|
| *
|
| * {
|
| - * "isCompatible": bool
|
| - * "name": String
|
| - * "version": String
|
| - * "contactInfo": optional String
|
| - * "interestingFiles": List<String>
|
| + * "severity": AnalysisErrorSeverity
|
| + * "type": AnalysisErrorType
|
| + * "location": Location
|
| + * "message": String
|
| + * "correction": optional String
|
| + * "code": String
|
| + * "hasFix": optional bool
|
| * }
|
| */
|
| -final Matcher isPluginVersionCheckResult =
|
| - new LazyMatcher(() => new MatchesJsonObject("plugin.versionCheck result", {
|
| - "isCompatible": isBool,
|
| - "name": isString,
|
| - "version": isString,
|
| - "interestingFiles": isListOf(isString)
|
| +final Matcher isAnalysisError =
|
| + new LazyMatcher(() => new MatchesJsonObject("AnalysisError", {
|
| + "severity": isAnalysisErrorSeverity,
|
| + "type": isAnalysisErrorType,
|
| + "location": isLocation,
|
| + "message": isString,
|
| + "code": isString
|
| }, optionalFields: {
|
| - "contactInfo": isString
|
| + "correction": isString,
|
| + "hasFix": isBool
|
| }));
|
|
|
| /**
|
| - * plugin.shutdown params
|
| - */
|
| -final Matcher isPluginShutdownParams = isNull;
|
| -
|
| -/**
|
| - * plugin.shutdown result
|
| - */
|
| -final Matcher isPluginShutdownResult = isNull;
|
| -
|
| -/**
|
| - * plugin.error params
|
| + * AnalysisErrorFixes
|
| *
|
| * {
|
| - * "isFatal": bool
|
| - * "message": String
|
| - * "stackTrace": String
|
| + * "error": AnalysisError
|
| + * "fixes": List<PrioritizedSourceChange>
|
| * }
|
| */
|
| -final Matcher isPluginErrorParams = new LazyMatcher(() => new MatchesJsonObject(
|
| - "plugin.error params",
|
| - {"isFatal": isBool, "message": isString, "stackTrace": isString}));
|
| +final Matcher isAnalysisErrorFixes = new LazyMatcher(() =>
|
| + new MatchesJsonObject("AnalysisErrorFixes", {
|
| + "error": isAnalysisError,
|
| + "fixes": isListOf(isPrioritizedSourceChange)
|
| + }));
|
|
|
| /**
|
| - * analysis.handleWatchEvents params
|
| + * AnalysisErrorSeverity
|
| *
|
| - * {
|
| - * "events": List<WatchEvent>
|
| + * enum {
|
| + * INFO
|
| + * WARNING
|
| + * ERROR
|
| * }
|
| */
|
| -final Matcher isAnalysisHandleWatchEventsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.handleWatchEvents params",
|
| - {"events": isListOf(isWatchEvent)}));
|
| -
|
| -/**
|
| - * analysis.handleWatchEvents result
|
| - */
|
| -final Matcher isAnalysisHandleWatchEventsResult = isNull;
|
| +final Matcher isAnalysisErrorSeverity =
|
| + new MatchesEnum("AnalysisErrorSeverity", ["INFO", "WARNING", "ERROR"]);
|
|
|
| /**
|
| - * analysis.reanalyze params
|
| + * AnalysisErrorType
|
| *
|
| - * {
|
| - * "roots": optional List<FilePath>
|
| + * enum {
|
| + * CHECKED_MODE_COMPILE_TIME_ERROR
|
| + * COMPILE_TIME_ERROR
|
| + * HINT
|
| + * LINT
|
| + * STATIC_TYPE_WARNING
|
| + * STATIC_WARNING
|
| + * SYNTACTIC_ERROR
|
| + * TODO
|
| * }
|
| */
|
| -final Matcher isAnalysisReanalyzeParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.reanalyze params", null,
|
| - optionalFields: {"roots": isListOf(isFilePath)}));
|
| +final Matcher isAnalysisErrorType = new MatchesEnum("AnalysisErrorType", [
|
| + "CHECKED_MODE_COMPILE_TIME_ERROR",
|
| + "COMPILE_TIME_ERROR",
|
| + "HINT",
|
| + "LINT",
|
| + "STATIC_TYPE_WARNING",
|
| + "STATIC_WARNING",
|
| + "SYNTACTIC_ERROR",
|
| + "TODO"
|
| +]);
|
|
|
| /**
|
| - * analysis.reanalyze result
|
| + * AnalysisService
|
| + *
|
| + * enum {
|
| + * FOLDING
|
| + * HIGHLIGHTS
|
| + * NAVIGATION
|
| + * OCCURRENCES
|
| + * OUTLINE
|
| + * }
|
| */
|
| -final Matcher isAnalysisReanalyzeResult = isNull;
|
| +final Matcher isAnalysisService = new MatchesEnum("AnalysisService",
|
| + ["FOLDING", "HIGHLIGHTS", "NAVIGATION", "OCCURRENCES", "OUTLINE"]);
|
|
|
| /**
|
| - * analysis.setContextBuilderOptions params
|
| + * ChangeContentOverlay
|
| *
|
| * {
|
| - * "options": ContextBuilderOptions
|
| + * "type": "change"
|
| + * "edits": List<SourceEdit>
|
| * }
|
| */
|
| -final Matcher isAnalysisSetContextBuilderOptionsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.setContextBuilderOptions params",
|
| - {"options": isContextBuilderOptions}));
|
| -
|
| -/**
|
| - * analysis.setContextBuilderOptions result
|
| - */
|
| -final Matcher isAnalysisSetContextBuilderOptionsResult = isNull;
|
| +final Matcher isChangeContentOverlay = new LazyMatcher(() =>
|
| + new MatchesJsonObject("ChangeContentOverlay",
|
| + {"type": equals("change"), "edits": isListOf(isSourceEdit)}));
|
|
|
| /**
|
| - * analysis.setContextRoots params
|
| + * CompletionSuggestion
|
| *
|
| * {
|
| - * "roots": List<ContextRoot>
|
| + * "kind": CompletionSuggestionKind
|
| + * "relevance": int
|
| + * "completion": String
|
| + * "selectionOffset": int
|
| + * "selectionLength": int
|
| + * "isDeprecated": bool
|
| + * "isPotential": bool
|
| + * "docSummary": optional String
|
| + * "docComplete": optional String
|
| + * "declaringType": optional String
|
| + * "defaultArgumentListString": optional String
|
| + * "defaultArgumentListTextRanges": optional List<int>
|
| + * "element": optional Element
|
| + * "returnType": optional String
|
| + * "parameterNames": optional List<String>
|
| + * "parameterTypes": optional List<String>
|
| + * "requiredParameterCount": optional int
|
| + * "hasNamedParameters": optional bool
|
| + * "parameterName": optional String
|
| + * "parameterType": optional String
|
| + * "importUri": optional String
|
| * }
|
| */
|
| -final Matcher isAnalysisSetContextRootsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject(
|
| - "analysis.setContextRoots params", {"roots": isListOf(isContextRoot)}));
|
| +final Matcher isCompletionSuggestion =
|
| + new LazyMatcher(() => new MatchesJsonObject("CompletionSuggestion", {
|
| + "kind": isCompletionSuggestionKind,
|
| + "relevance": isInt,
|
| + "completion": isString,
|
| + "selectionOffset": isInt,
|
| + "selectionLength": isInt,
|
| + "isDeprecated": isBool,
|
| + "isPotential": isBool
|
| + }, optionalFields: {
|
| + "docSummary": isString,
|
| + "docComplete": isString,
|
| + "declaringType": isString,
|
| + "defaultArgumentListString": isString,
|
| + "defaultArgumentListTextRanges": isListOf(isInt),
|
| + "element": isElement,
|
| + "returnType": isString,
|
| + "parameterNames": isListOf(isString),
|
| + "parameterTypes": isListOf(isString),
|
| + "requiredParameterCount": isInt,
|
| + "hasNamedParameters": isBool,
|
| + "parameterName": isString,
|
| + "parameterType": isString,
|
| + "importUri": isString
|
| + }));
|
|
|
| /**
|
| - * analysis.setContextRoots result
|
| + * CompletionSuggestionKind
|
| + *
|
| + * enum {
|
| + * ARGUMENT_LIST
|
| + * IMPORT
|
| + * IDENTIFIER
|
| + * INVOCATION
|
| + * KEYWORD
|
| + * NAMED_ARGUMENT
|
| + * OPTIONAL_ARGUMENT
|
| + * PARAMETER
|
| + * }
|
| */
|
| -final Matcher isAnalysisSetContextRootsResult = isNull;
|
| +final Matcher isCompletionSuggestionKind =
|
| + new MatchesEnum("CompletionSuggestionKind", [
|
| + "ARGUMENT_LIST",
|
| + "IMPORT",
|
| + "IDENTIFIER",
|
| + "INVOCATION",
|
| + "KEYWORD",
|
| + "NAMED_ARGUMENT",
|
| + "OPTIONAL_ARGUMENT",
|
| + "PARAMETER"
|
| +]);
|
|
|
| /**
|
| - * analysis.setPriorityFiles params
|
| + * ContextBuilderOptions
|
| *
|
| * {
|
| - * "files": List<FilePath>
|
| + * "dartSdkSummaryPath": optional String
|
| + * "defaultAnalysisOptionsFilePath": optional List<String>
|
| + * "declaredVariables": optional Map<String, String>
|
| + * "defaultPackageFilePath": optional List<String>
|
| + * "defaultPackagesDirectoryPath": optional List<String>
|
| * }
|
| */
|
| -final Matcher isAnalysisSetPriorityFilesParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject(
|
| - "analysis.setPriorityFiles params", {"files": isListOf(isFilePath)}));
|
| +final Matcher isContextBuilderOptions = new LazyMatcher(
|
| + () => new MatchesJsonObject("ContextBuilderOptions", null, optionalFields: {
|
| + "dartSdkSummaryPath": isString,
|
| + "defaultAnalysisOptionsFilePath": isListOf(isString),
|
| + "declaredVariables": isMapOf(isString, isString),
|
| + "defaultPackageFilePath": isListOf(isString),
|
| + "defaultPackagesDirectoryPath": isListOf(isString)
|
| + }));
|
|
|
| /**
|
| - * analysis.setPriorityFiles result
|
| + * ContextRoot
|
| + *
|
| + * {
|
| + * "root": String
|
| + * "exclude": List<String>
|
| + * }
|
| */
|
| -final Matcher isAnalysisSetPriorityFilesResult = isNull;
|
| +final Matcher isContextRoot = new LazyMatcher(() => new MatchesJsonObject(
|
| + "ContextRoot", {"root": isString, "exclude": isListOf(isString)}));
|
|
|
| /**
|
| - * analysis.setSubscriptions params
|
| + * Element
|
| *
|
| * {
|
| - * "subscriptions": Map<AnalysisService, List<FilePath>>
|
| + * "kind": ElementKind
|
| + * "name": String
|
| + * "location": optional Location
|
| + * "flags": int
|
| + * "parameters": optional String
|
| + * "returnType": optional String
|
| + * "typeParameters": optional String
|
| * }
|
| */
|
| -final Matcher isAnalysisSetSubscriptionsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.setSubscriptions params",
|
| - {"subscriptions": isMapOf(isAnalysisService, isListOf(isFilePath))}));
|
| -
|
| -/**
|
| - * analysis.setSubscriptions result
|
| - */
|
| -final Matcher isAnalysisSetSubscriptionsResult = isNull;
|
| -
|
| -/**
|
| - * analysis.updateContent params
|
| - *
|
| - * {
|
| - * "files": Map<FilePath, AddContentOverlay | ChangeContentOverlay | RemoveContentOverlay>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisUpdateContentParams = new LazyMatcher(
|
| - () => new MatchesJsonObject("analysis.updateContent params", {
|
| - "files": isMapOf(
|
| - isFilePath,
|
| - isOneOf([
|
| - isAddContentOverlay,
|
| - isChangeContentOverlay,
|
| - isRemoveContentOverlay
|
| - ]))
|
| - }));
|
| -
|
| -/**
|
| - * analysis.updateContent result
|
| - */
|
| -final Matcher isAnalysisUpdateContentResult = isNull;
|
| -
|
| -/**
|
| - * analysis.errors params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "errors": List<AnalysisError>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisErrorsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.errors params",
|
| - {"file": isFilePath, "errors": isListOf(isAnalysisError)}));
|
| -
|
| -/**
|
| - * analysis.folding params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "regions": List<FoldingRegion>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisFoldingParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.folding params",
|
| - {"file": isFilePath, "regions": isListOf(isFoldingRegion)}));
|
| -
|
| -/**
|
| - * analysis.highlights params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "regions": List<HighlightRegion>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisHighlightsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.highlights params",
|
| - {"file": isFilePath, "regions": isListOf(isHighlightRegion)}));
|
| -
|
| -/**
|
| - * analysis.navigation params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "regions": List<NavigationRegion>
|
| - * "targets": List<NavigationTarget>
|
| - * "files": List<FilePath>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisNavigationParams =
|
| - new LazyMatcher(() => new MatchesJsonObject("analysis.navigation params", {
|
| - "file": isFilePath,
|
| - "regions": isListOf(isNavigationRegion),
|
| - "targets": isListOf(isNavigationTarget),
|
| - "files": isListOf(isFilePath)
|
| +final Matcher isElement =
|
| + new LazyMatcher(() => new MatchesJsonObject("Element", {
|
| + "kind": isElementKind,
|
| + "name": isString,
|
| + "flags": isInt
|
| + }, optionalFields: {
|
| + "location": isLocation,
|
| + "parameters": isString,
|
| + "returnType": isString,
|
| + "typeParameters": isString
|
| }));
|
|
|
| /**
|
| - * analysis.occurrences params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "occurrences": List<Occurrences>
|
| - * }
|
| - */
|
| -final Matcher isAnalysisOccurrencesParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.occurrences params",
|
| - {"file": isFilePath, "occurrences": isListOf(isOccurrences)}));
|
| -
|
| -/**
|
| - * analysis.outline params
|
| + * ElementKind
|
| *
|
| - * {
|
| - * "file": FilePath
|
| - * "outline": List<Outline>
|
| + * enum {
|
| + * CLASS
|
| + * CLASS_TYPE_ALIAS
|
| + * COMPILATION_UNIT
|
| + * CONSTRUCTOR
|
| + * ENUM
|
| + * ENUM_CONSTANT
|
| + * FIELD
|
| + * FILE
|
| + * FUNCTION
|
| + * FUNCTION_TYPE_ALIAS
|
| + * GETTER
|
| + * LABEL
|
| + * LIBRARY
|
| + * LOCAL_VARIABLE
|
| + * METHOD
|
| + * PARAMETER
|
| + * PREFIX
|
| + * SETTER
|
| + * TOP_LEVEL_VARIABLE
|
| + * TYPE_PARAMETER
|
| + * UNIT_TEST_GROUP
|
| + * UNIT_TEST_TEST
|
| + * UNKNOWN
|
| * }
|
| */
|
| -final Matcher isAnalysisOutlineParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("analysis.outline params",
|
| - {"file": isFilePath, "outline": isListOf(isOutline)}));
|
| +final Matcher isElementKind = new MatchesEnum("ElementKind", [
|
| + "CLASS",
|
| + "CLASS_TYPE_ALIAS",
|
| + "COMPILATION_UNIT",
|
| + "CONSTRUCTOR",
|
| + "ENUM",
|
| + "ENUM_CONSTANT",
|
| + "FIELD",
|
| + "FILE",
|
| + "FUNCTION",
|
| + "FUNCTION_TYPE_ALIAS",
|
| + "GETTER",
|
| + "LABEL",
|
| + "LIBRARY",
|
| + "LOCAL_VARIABLE",
|
| + "METHOD",
|
| + "PARAMETER",
|
| + "PREFIX",
|
| + "SETTER",
|
| + "TOP_LEVEL_VARIABLE",
|
| + "TYPE_PARAMETER",
|
| + "UNIT_TEST_GROUP",
|
| + "UNIT_TEST_TEST",
|
| + "UNKNOWN"
|
| +]);
|
|
|
| /**
|
| - * completion.getSuggestions params
|
| + * FilePath
|
| *
|
| - * {
|
| - * "file": FilePath
|
| - * "offset": int
|
| - * }
|
| + * String
|
| */
|
| -final Matcher isCompletionGetSuggestionsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("completion.getSuggestions params",
|
| - {"file": isFilePath, "offset": isInt}));
|
| +final Matcher isFilePath = isString;
|
|
|
| /**
|
| - * completion.getSuggestions result
|
| + * FoldingKind
|
| *
|
| - * {
|
| - * "replacementOffset": int
|
| - * "replacementLength": int
|
| - * "results": List<CompletionSuggestion>
|
| + * enum {
|
| + * COMMENT
|
| + * CLASS_MEMBER
|
| + * DIRECTIVES
|
| + * DOCUMENTATION_COMMENT
|
| + * TOP_LEVEL_DECLARATION
|
| * }
|
| */
|
| -final Matcher isCompletionGetSuggestionsResult = new LazyMatcher(
|
| - () => new MatchesJsonObject("completion.getSuggestions result", {
|
| - "replacementOffset": isInt,
|
| - "replacementLength": isInt,
|
| - "results": isListOf(isCompletionSuggestion)
|
| - }));
|
| +final Matcher isFoldingKind = new MatchesEnum("FoldingKind", [
|
| + "COMMENT",
|
| + "CLASS_MEMBER",
|
| + "DIRECTIVES",
|
| + "DOCUMENTATION_COMMENT",
|
| + "TOP_LEVEL_DECLARATION"
|
| +]);
|
|
|
| /**
|
| - * edit.getAssists params
|
| + * FoldingRegion
|
| *
|
| * {
|
| - * "file": FilePath
|
| + * "kind": FoldingKind
|
| * "offset": int
|
| * "length": int
|
| * }
|
| */
|
| -final Matcher isEditGetAssistsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("edit.getAssists params",
|
| - {"file": isFilePath, "offset": isInt, "length": isInt}));
|
| -
|
| -/**
|
| - * edit.getAssists result
|
| - *
|
| - * {
|
| - * "assists": List<PrioritizedSourceChange>
|
| - * }
|
| - */
|
| -final Matcher isEditGetAssistsResult = new LazyMatcher(() =>
|
| - new MatchesJsonObject("edit.getAssists result",
|
| - {"assists": isListOf(isPrioritizedSourceChange)}));
|
| +final Matcher isFoldingRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| + "FoldingRegion",
|
| + {"kind": isFoldingKind, "offset": isInt, "length": isInt}));
|
|
|
| /**
|
| - * edit.getAvailableRefactorings params
|
| + * HighlightRegion
|
| *
|
| * {
|
| - * "file": FilePath
|
| + * "type": HighlightRegionType
|
| * "offset": int
|
| * "length": int
|
| * }
|
| */
|
| -final Matcher isEditGetAvailableRefactoringsParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject("edit.getAvailableRefactorings params",
|
| - {"file": isFilePath, "offset": isInt, "length": isInt}));
|
| -
|
| -/**
|
| - * edit.getAvailableRefactorings result
|
| - *
|
| - * {
|
| - * "kinds": List<RefactoringKind>
|
| - * }
|
| - */
|
| -final Matcher isEditGetAvailableRefactoringsResult = new LazyMatcher(() =>
|
| - new MatchesJsonObject("edit.getAvailableRefactorings result",
|
| - {"kinds": isListOf(isRefactoringKind)}));
|
| -
|
| -/**
|
| - * edit.getFixes params
|
| - *
|
| - * {
|
| - * "file": FilePath
|
| - * "offset": int
|
| - * }
|
| - */
|
| -final Matcher isEditGetFixesParams = new LazyMatcher(() =>
|
| - new MatchesJsonObject(
|
| - "edit.getFixes params", {"file": isFilePath, "offset": isInt}));
|
| +final Matcher isHighlightRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| + "HighlightRegion",
|
| + {"type": isHighlightRegionType, "offset": isInt, "length": isInt}));
|
|
|
| /**
|
| - * edit.getFixes result
|
| + * HighlightRegionType
|
| *
|
| - * {
|
| - * "fixes": List<AnalysisErrorFixes>
|
| - * }
|
| - */
|
| -final Matcher isEditGetFixesResult = new LazyMatcher(() =>
|
| - new MatchesJsonObject(
|
| - "edit.getFixes result", {"fixes": isListOf(isAnalysisErrorFixes)}));
|
| + * enum {
|
| + * ANNOTATION
|
| + * BUILT_IN
|
| + * CLASS
|
| + * COMMENT_BLOCK
|
| + * COMMENT_DOCUMENTATION
|
| + * COMMENT_END_OF_LINE
|
| + * CONSTRUCTOR
|
| + * DIRECTIVE
|
| + * DYNAMIC_TYPE
|
| + * DYNAMIC_LOCAL_VARIABLE_DECLARATION
|
| + * DYNAMIC_LOCAL_VARIABLE_REFERENCE
|
| + * DYNAMIC_PARAMETER_DECLARATION
|
| + * DYNAMIC_PARAMETER_REFERENCE
|
| + * ENUM
|
| + * ENUM_CONSTANT
|
| + * FIELD
|
| + * FIELD_STATIC
|
| + * FUNCTION
|
| + * FUNCTION_DECLARATION
|
| + * FUNCTION_TYPE_ALIAS
|
| + * GETTER_DECLARATION
|
| + * IDENTIFIER_DEFAULT
|
| + * IMPORT_PREFIX
|
| + * INSTANCE_FIELD_DECLARATION
|
| + * INSTANCE_FIELD_REFERENCE
|
| + * INSTANCE_GETTER_DECLARATION
|
| + * INSTANCE_GETTER_REFERENCE
|
| + * INSTANCE_METHOD_DECLARATION
|
| + * INSTANCE_METHOD_REFERENCE
|
| + * INSTANCE_SETTER_DECLARATION
|
| + * INSTANCE_SETTER_REFERENCE
|
| + * INVALID_STRING_ESCAPE
|
| + * KEYWORD
|
| + * LABEL
|
| + * LIBRARY_NAME
|
| + * LITERAL_BOOLEAN
|
| + * LITERAL_DOUBLE
|
| + * LITERAL_INTEGER
|
| + * LITERAL_LIST
|
| + * LITERAL_MAP
|
| + * LITERAL_STRING
|
| + * LOCAL_FUNCTION_DECLARATION
|
| + * LOCAL_FUNCTION_REFERENCE
|
| + * LOCAL_VARIABLE
|
| + * LOCAL_VARIABLE_DECLARATION
|
| + * LOCAL_VARIABLE_REFERENCE
|
| + * METHOD
|
| + * METHOD_DECLARATION
|
| + * METHOD_DECLARATION_STATIC
|
| + * METHOD_STATIC
|
| + * PARAMETER
|
| + * SETTER_DECLARATION
|
| + * TOP_LEVEL_VARIABLE
|
| + * PARAMETER_DECLARATION
|
| + * PARAMETER_REFERENCE
|
| + * STATIC_FIELD_DECLARATION
|
| + * STATIC_GETTER_DECLARATION
|
| + * STATIC_GETTER_REFERENCE
|
| + * STATIC_METHOD_DECLARATION
|
| + * STATIC_METHOD_REFERENCE
|
| + * STATIC_SETTER_DECLARATION
|
| + * STATIC_SETTER_REFERENCE
|
| + * TOP_LEVEL_FUNCTION_DECLARATION
|
| + * TOP_LEVEL_FUNCTION_REFERENCE
|
| + * TOP_LEVEL_GETTER_DECLARATION
|
| + * TOP_LEVEL_GETTER_REFERENCE
|
| + * TOP_LEVEL_SETTER_DECLARATION
|
| + * TOP_LEVEL_SETTER_REFERENCE
|
| + * TOP_LEVEL_VARIABLE_DECLARATION
|
| + * TYPE_NAME_DYNAMIC
|
| + * TYPE_PARAMETER
|
| + * UNRESOLVED_INSTANCE_MEMBER_REFERENCE
|
| + * VALID_STRING_ESCAPE
|
| + * }
|
| + */
|
| +final Matcher isHighlightRegionType = new MatchesEnum("HighlightRegionType", [
|
| + "ANNOTATION",
|
| + "BUILT_IN",
|
| + "CLASS",
|
| + "COMMENT_BLOCK",
|
| + "COMMENT_DOCUMENTATION",
|
| + "COMMENT_END_OF_LINE",
|
| + "CONSTRUCTOR",
|
| + "DIRECTIVE",
|
| + "DYNAMIC_TYPE",
|
| + "DYNAMIC_LOCAL_VARIABLE_DECLARATION",
|
| + "DYNAMIC_LOCAL_VARIABLE_REFERENCE",
|
| + "DYNAMIC_PARAMETER_DECLARATION",
|
| + "DYNAMIC_PARAMETER_REFERENCE",
|
| + "ENUM",
|
| + "ENUM_CONSTANT",
|
| + "FIELD",
|
| + "FIELD_STATIC",
|
| + "FUNCTION",
|
| + "FUNCTION_DECLARATION",
|
| + "FUNCTION_TYPE_ALIAS",
|
| + "GETTER_DECLARATION",
|
| + "IDENTIFIER_DEFAULT",
|
| + "IMPORT_PREFIX",
|
| + "INSTANCE_FIELD_DECLARATION",
|
| + "INSTANCE_FIELD_REFERENCE",
|
| + "INSTANCE_GETTER_DECLARATION",
|
| + "INSTANCE_GETTER_REFERENCE",
|
| + "INSTANCE_METHOD_DECLARATION",
|
| + "INSTANCE_METHOD_REFERENCE",
|
| + "INSTANCE_SETTER_DECLARATION",
|
| + "INSTANCE_SETTER_REFERENCE",
|
| + "INVALID_STRING_ESCAPE",
|
| + "KEYWORD",
|
| + "LABEL",
|
| + "LIBRARY_NAME",
|
| + "LITERAL_BOOLEAN",
|
| + "LITERAL_DOUBLE",
|
| + "LITERAL_INTEGER",
|
| + "LITERAL_LIST",
|
| + "LITERAL_MAP",
|
| + "LITERAL_STRING",
|
| + "LOCAL_FUNCTION_DECLARATION",
|
| + "LOCAL_FUNCTION_REFERENCE",
|
| + "LOCAL_VARIABLE",
|
| + "LOCAL_VARIABLE_DECLARATION",
|
| + "LOCAL_VARIABLE_REFERENCE",
|
| + "METHOD",
|
| + "METHOD_DECLARATION",
|
| + "METHOD_DECLARATION_STATIC",
|
| + "METHOD_STATIC",
|
| + "PARAMETER",
|
| + "SETTER_DECLARATION",
|
| + "TOP_LEVEL_VARIABLE",
|
| + "PARAMETER_DECLARATION",
|
| + "PARAMETER_REFERENCE",
|
| + "STATIC_FIELD_DECLARATION",
|
| + "STATIC_GETTER_DECLARATION",
|
| + "STATIC_GETTER_REFERENCE",
|
| + "STATIC_METHOD_DECLARATION",
|
| + "STATIC_METHOD_REFERENCE",
|
| + "STATIC_SETTER_DECLARATION",
|
| + "STATIC_SETTER_REFERENCE",
|
| + "TOP_LEVEL_FUNCTION_DECLARATION",
|
| + "TOP_LEVEL_FUNCTION_REFERENCE",
|
| + "TOP_LEVEL_GETTER_DECLARATION",
|
| + "TOP_LEVEL_GETTER_REFERENCE",
|
| + "TOP_LEVEL_SETTER_DECLARATION",
|
| + "TOP_LEVEL_SETTER_REFERENCE",
|
| + "TOP_LEVEL_VARIABLE_DECLARATION",
|
| + "TYPE_NAME_DYNAMIC",
|
| + "TYPE_PARAMETER",
|
| + "UNRESOLVED_INSTANCE_MEMBER_REFERENCE",
|
| + "VALID_STRING_ESCAPE"
|
| +]);
|
|
|
| /**
|
| - * edit.getRefactoring params
|
| + * LinkedEditGroup
|
| *
|
| * {
|
| - * "kind": RefactoringKind
|
| - * "file": FilePath
|
| - * "offset": int
|
| + * "positions": List<Position>
|
| * "length": int
|
| - * "validateOnly": bool
|
| - * "options": optional RefactoringOptions
|
| + * "suggestions": List<LinkedEditSuggestion>
|
| * }
|
| */
|
| -final Matcher isEditGetRefactoringParams =
|
| - new LazyMatcher(() => new MatchesJsonObject("edit.getRefactoring params", {
|
| - "kind": isRefactoringKind,
|
| - "file": isFilePath,
|
| - "offset": isInt,
|
| +final Matcher isLinkedEditGroup =
|
| + new LazyMatcher(() => new MatchesJsonObject("LinkedEditGroup", {
|
| + "positions": isListOf(isPosition),
|
| "length": isInt,
|
| - "validateOnly": isBool
|
| - }, optionalFields: {
|
| - "options": isRefactoringOptions
|
| + "suggestions": isListOf(isLinkedEditSuggestion)
|
| }));
|
|
|
| /**
|
| - * edit.getRefactoring result
|
| + * LinkedEditSuggestion
|
| *
|
| * {
|
| - * "initialProblems": List<RefactoringProblem>
|
| - * "optionsProblems": List<RefactoringProblem>
|
| - * "finalProblems": List<RefactoringProblem>
|
| - * "feedback": optional RefactoringFeedback
|
| - * "change": optional SourceChange
|
| - * "potentialEdits": optional List<String>
|
| + * "value": String
|
| + * "kind": LinkedEditSuggestionKind
|
| * }
|
| */
|
| -final Matcher isEditGetRefactoringResult =
|
| - new LazyMatcher(() => new MatchesJsonObject("edit.getRefactoring result", {
|
| - "initialProblems": isListOf(isRefactoringProblem),
|
| - "optionsProblems": isListOf(isRefactoringProblem),
|
| - "finalProblems": isListOf(isRefactoringProblem)
|
| - }, optionalFields: {
|
| - "feedback": isRefactoringFeedback,
|
| - "change": isSourceChange,
|
| - "potentialEdits": isListOf(isString)
|
| - }));
|
| +final Matcher isLinkedEditSuggestion = new LazyMatcher(() =>
|
| + new MatchesJsonObject("LinkedEditSuggestion",
|
| + {"value": isString, "kind": isLinkedEditSuggestionKind}));
|
|
|
| /**
|
| - * AddContentOverlay
|
| + * LinkedEditSuggestionKind
|
| *
|
| - * {
|
| - * "type": "add"
|
| - * "content": String
|
| + * enum {
|
| + * METHOD
|
| + * PARAMETER
|
| + * TYPE
|
| + * VARIABLE
|
| * }
|
| */
|
| -final Matcher isAddContentOverlay = new LazyMatcher(() => new MatchesJsonObject(
|
| - "AddContentOverlay", {"type": equals("add"), "content": isString}));
|
| +final Matcher isLinkedEditSuggestionKind = new MatchesEnum(
|
| + "LinkedEditSuggestionKind", ["METHOD", "PARAMETER", "TYPE", "VARIABLE"]);
|
|
|
| /**
|
| - * AnalysisError
|
| + * Location
|
| *
|
| * {
|
| - * "severity": AnalysisErrorSeverity
|
| - * "type": AnalysisErrorType
|
| - * "location": Location
|
| - * "message": String
|
| - * "correction": optional String
|
| - * "code": String
|
| - * "hasFix": optional bool
|
| + * "file": FilePath
|
| + * "offset": int
|
| + * "length": int
|
| + * "startLine": int
|
| + * "startColumn": int
|
| * }
|
| */
|
| -final Matcher isAnalysisError =
|
| - new LazyMatcher(() => new MatchesJsonObject("AnalysisError", {
|
| - "severity": isAnalysisErrorSeverity,
|
| - "type": isAnalysisErrorType,
|
| - "location": isLocation,
|
| - "message": isString,
|
| - "code": isString
|
| - }, optionalFields: {
|
| - "correction": isString,
|
| - "hasFix": isBool
|
| +final Matcher isLocation =
|
| + new LazyMatcher(() => new MatchesJsonObject("Location", {
|
| + "file": isFilePath,
|
| + "offset": isInt,
|
| + "length": isInt,
|
| + "startLine": isInt,
|
| + "startColumn": isInt
|
| }));
|
|
|
| /**
|
| - * AnalysisErrorFixes
|
| + * NavigationRegion
|
| *
|
| * {
|
| - * "error": AnalysisError
|
| - * "fixes": List<PrioritizedSourceChange>
|
| + * "offset": int
|
| + * "length": int
|
| + * "targets": List<int>
|
| * }
|
| */
|
| -final Matcher isAnalysisErrorFixes = new LazyMatcher(() =>
|
| - new MatchesJsonObject("AnalysisErrorFixes", {
|
| - "error": isAnalysisError,
|
| - "fixes": isListOf(isPrioritizedSourceChange)
|
| - }));
|
| +final Matcher isNavigationRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| + "NavigationRegion",
|
| + {"offset": isInt, "length": isInt, "targets": isListOf(isInt)}));
|
|
|
| /**
|
| - * AnalysisErrorSeverity
|
| + * NavigationTarget
|
| *
|
| - * enum {
|
| - * INFO
|
| - * WARNING
|
| - * ERROR
|
| + * {
|
| + * "kind": ElementKind
|
| + * "fileIndex": int
|
| + * "offset": int
|
| + * "length": int
|
| + * "startLine": int
|
| + * "startColumn": int
|
| * }
|
| */
|
| -final Matcher isAnalysisErrorSeverity =
|
| - new MatchesEnum("AnalysisErrorSeverity", ["INFO", "WARNING", "ERROR"]);
|
| +final Matcher isNavigationTarget =
|
| + new LazyMatcher(() => new MatchesJsonObject("NavigationTarget", {
|
| + "kind": isElementKind,
|
| + "fileIndex": isInt,
|
| + "offset": isInt,
|
| + "length": isInt,
|
| + "startLine": isInt,
|
| + "startColumn": isInt
|
| + }));
|
|
|
| /**
|
| - * AnalysisErrorType
|
| + * Occurrences
|
| *
|
| - * enum {
|
| - * CHECKED_MODE_COMPILE_TIME_ERROR
|
| - * COMPILE_TIME_ERROR
|
| - * HINT
|
| - * LINT
|
| - * STATIC_TYPE_WARNING
|
| - * STATIC_WARNING
|
| - * SYNTACTIC_ERROR
|
| - * TODO
|
| + * {
|
| + * "element": Element
|
| + * "offsets": List<int>
|
| + * "length": int
|
| * }
|
| */
|
| -final Matcher isAnalysisErrorType = new MatchesEnum("AnalysisErrorType", [
|
| - "CHECKED_MODE_COMPILE_TIME_ERROR",
|
| - "COMPILE_TIME_ERROR",
|
| - "HINT",
|
| - "LINT",
|
| - "STATIC_TYPE_WARNING",
|
| - "STATIC_WARNING",
|
| - "SYNTACTIC_ERROR",
|
| - "TODO"
|
| -]);
|
| +final Matcher isOccurrences = new LazyMatcher(() => new MatchesJsonObject(
|
| + "Occurrences",
|
| + {"element": isElement, "offsets": isListOf(isInt), "length": isInt}));
|
|
|
| /**
|
| - * AnalysisService
|
| + * Outline
|
| *
|
| - * enum {
|
| - * FOLDING
|
| - * HIGHLIGHTS
|
| - * NAVIGATION
|
| - * OCCURRENCES
|
| - * OUTLINE
|
| + * {
|
| + * "element": Element
|
| + * "offset": int
|
| + * "length": int
|
| + * "children": optional List<Outline>
|
| * }
|
| */
|
| -final Matcher isAnalysisService = new MatchesEnum("AnalysisService",
|
| - ["FOLDING", "HIGHLIGHTS", "NAVIGATION", "OCCURRENCES", "OUTLINE"]);
|
| +final Matcher isOutline = new LazyMatcher(() => new MatchesJsonObject(
|
| + "Outline", {"element": isElement, "offset": isInt, "length": isInt},
|
| + optionalFields: {"children": isListOf(isOutline)}));
|
|
|
| /**
|
| - * ChangeContentOverlay
|
| + * Position
|
| *
|
| * {
|
| - * "type": "change"
|
| - * "edits": List<SourceEdit>
|
| + * "file": FilePath
|
| + * "offset": int
|
| * }
|
| */
|
| -final Matcher isChangeContentOverlay = new LazyMatcher(() =>
|
| - new MatchesJsonObject("ChangeContentOverlay",
|
| - {"type": equals("change"), "edits": isListOf(isSourceEdit)}));
|
| +final Matcher isPosition = new LazyMatcher(() =>
|
| + new MatchesJsonObject("Position", {"file": isFilePath, "offset": isInt}));
|
|
|
| /**
|
| - * CompletionSuggestion
|
| + * PrioritizedSourceChange
|
| *
|
| * {
|
| - * "kind": CompletionSuggestionKind
|
| - * "relevance": int
|
| - * "completion": String
|
| - * "selectionOffset": int
|
| - * "selectionLength": int
|
| - * "isDeprecated": bool
|
| - * "isPotential": bool
|
| - * "docSummary": optional String
|
| - * "docComplete": optional String
|
| - * "declaringType": optional String
|
| - * "defaultArgumentListString": optional String
|
| - * "defaultArgumentListTextRanges": optional List<int>
|
| - * "element": optional Element
|
| - * "returnType": optional String
|
| - * "parameterNames": optional List<String>
|
| - * "parameterTypes": optional List<String>
|
| - * "requiredParameterCount": optional int
|
| - * "hasNamedParameters": optional bool
|
| - * "parameterName": optional String
|
| - * "parameterType": optional String
|
| - * "importUri": optional String
|
| + * "priority": int
|
| + * "change": SourceChange
|
| * }
|
| */
|
| -final Matcher isCompletionSuggestion =
|
| - new LazyMatcher(() => new MatchesJsonObject("CompletionSuggestion", {
|
| - "kind": isCompletionSuggestionKind,
|
| - "relevance": isInt,
|
| - "completion": isString,
|
| - "selectionOffset": isInt,
|
| - "selectionLength": isInt,
|
| - "isDeprecated": isBool,
|
| - "isPotential": isBool
|
| - }, optionalFields: {
|
| - "docSummary": isString,
|
| - "docComplete": isString,
|
| - "declaringType": isString,
|
| - "defaultArgumentListString": isString,
|
| - "defaultArgumentListTextRanges": isListOf(isInt),
|
| - "element": isElement,
|
| - "returnType": isString,
|
| - "parameterNames": isListOf(isString),
|
| - "parameterTypes": isListOf(isString),
|
| - "requiredParameterCount": isInt,
|
| - "hasNamedParameters": isBool,
|
| - "parameterName": isString,
|
| - "parameterType": isString,
|
| - "importUri": isString
|
| - }));
|
| +final Matcher isPrioritizedSourceChange = new LazyMatcher(() =>
|
| + new MatchesJsonObject("PrioritizedSourceChange",
|
| + {"priority": isInt, "change": isSourceChange}));
|
|
|
| /**
|
| - * CompletionSuggestionKind
|
| + * RefactoringFeedback
|
| + *
|
| + * {
|
| + * }
|
| + */
|
| +final Matcher isRefactoringFeedback =
|
| + new LazyMatcher(() => new MatchesJsonObject("RefactoringFeedback", null));
|
| +
|
| +/**
|
| + * RefactoringKind
|
| *
|
| * enum {
|
| - * ARGUMENT_LIST
|
| - * IMPORT
|
| - * IDENTIFIER
|
| - * INVOCATION
|
| - * KEYWORD
|
| - * NAMED_ARGUMENT
|
| - * OPTIONAL_ARGUMENT
|
| - * PARAMETER
|
| + * CONVERT_GETTER_TO_METHOD
|
| + * CONVERT_METHOD_TO_GETTER
|
| + * EXTRACT_LOCAL_VARIABLE
|
| + * EXTRACT_METHOD
|
| + * INLINE_LOCAL_VARIABLE
|
| + * INLINE_METHOD
|
| + * MOVE_FILE
|
| + * RENAME
|
| + * SORT_MEMBERS
|
| * }
|
| */
|
| -final Matcher isCompletionSuggestionKind =
|
| - new MatchesEnum("CompletionSuggestionKind", [
|
| - "ARGUMENT_LIST",
|
| - "IMPORT",
|
| - "IDENTIFIER",
|
| - "INVOCATION",
|
| - "KEYWORD",
|
| - "NAMED_ARGUMENT",
|
| - "OPTIONAL_ARGUMENT",
|
| - "PARAMETER"
|
| +final Matcher isRefactoringKind = new MatchesEnum("RefactoringKind", [
|
| + "CONVERT_GETTER_TO_METHOD",
|
| + "CONVERT_METHOD_TO_GETTER",
|
| + "EXTRACT_LOCAL_VARIABLE",
|
| + "EXTRACT_METHOD",
|
| + "INLINE_LOCAL_VARIABLE",
|
| + "INLINE_METHOD",
|
| + "MOVE_FILE",
|
| + "RENAME",
|
| + "SORT_MEMBERS"
|
| ]);
|
|
|
| /**
|
| - * ContextBuilderOptions
|
| + * RefactoringMethodParameter
|
| *
|
| * {
|
| - * "dartSdkSummaryPath": optional String
|
| - * "defaultAnalysisOptionsFilePath": optional List<String>
|
| - * "declaredVariables": optional Map<String, String>
|
| - * "defaultPackageFilePath": optional List<String>
|
| - * "defaultPackagesDirectoryPath": optional List<String>
|
| + * "id": optional String
|
| + * "kind": RefactoringMethodParameterKind
|
| + * "type": String
|
| + * "name": String
|
| + * "parameters": optional String
|
| * }
|
| */
|
| -final Matcher isContextBuilderOptions = new LazyMatcher(
|
| - () => new MatchesJsonObject("ContextBuilderOptions", null, optionalFields: {
|
| - "dartSdkSummaryPath": isString,
|
| - "defaultAnalysisOptionsFilePath": isListOf(isString),
|
| - "declaredVariables": isMapOf(isString, isString),
|
| - "defaultPackageFilePath": isListOf(isString),
|
| - "defaultPackagesDirectoryPath": isListOf(isString)
|
| - }));
|
| +final Matcher isRefactoringMethodParameter = new LazyMatcher(() =>
|
| + new MatchesJsonObject("RefactoringMethodParameter", {
|
| + "kind": isRefactoringMethodParameterKind,
|
| + "type": isString,
|
| + "name": isString
|
| + }, optionalFields: {
|
| + "id": isString,
|
| + "parameters": isString
|
| + }));
|
|
|
| /**
|
| - * ContextRoot
|
| + * RefactoringMethodParameterKind
|
| + *
|
| + * enum {
|
| + * REQUIRED
|
| + * POSITIONAL
|
| + * NAMED
|
| + * }
|
| + */
|
| +final Matcher isRefactoringMethodParameterKind = new MatchesEnum(
|
| + "RefactoringMethodParameterKind", ["REQUIRED", "POSITIONAL", "NAMED"]);
|
| +
|
| +/**
|
| + * RefactoringOptions
|
| *
|
| * {
|
| - * "root": String
|
| - * "exclude": List<String>
|
| * }
|
| */
|
| -final Matcher isContextRoot = new LazyMatcher(() => new MatchesJsonObject(
|
| - "ContextRoot", {"root": isString, "exclude": isListOf(isString)}));
|
| +final Matcher isRefactoringOptions =
|
| + new LazyMatcher(() => new MatchesJsonObject("RefactoringOptions", null));
|
|
|
| /**
|
| - * Element
|
| + * RefactoringProblem
|
| *
|
| * {
|
| - * "kind": ElementKind
|
| - * "name": String
|
| + * "severity": RefactoringProblemSeverity
|
| + * "message": String
|
| * "location": optional Location
|
| - * "flags": int
|
| - * "parameters": optional String
|
| - * "returnType": optional String
|
| - * "typeParameters": optional String
|
| * }
|
| */
|
| -final Matcher isElement =
|
| - new LazyMatcher(() => new MatchesJsonObject("Element", {
|
| - "kind": isElementKind,
|
| - "name": isString,
|
| - "flags": isInt
|
| - }, optionalFields: {
|
| - "location": isLocation,
|
| - "parameters": isString,
|
| - "returnType": isString,
|
| - "typeParameters": isString
|
| - }));
|
| +final Matcher isRefactoringProblem = new LazyMatcher(() =>
|
| + new MatchesJsonObject("RefactoringProblem",
|
| + {"severity": isRefactoringProblemSeverity, "message": isString},
|
| + optionalFields: {"location": isLocation}));
|
|
|
| /**
|
| - * ElementKind
|
| + * RefactoringProblemSeverity
|
| *
|
| * enum {
|
| - * CLASS
|
| - * CLASS_TYPE_ALIAS
|
| - * COMPILATION_UNIT
|
| - * CONSTRUCTOR
|
| - * ENUM
|
| - * ENUM_CONSTANT
|
| - * FIELD
|
| - * FILE
|
| - * FUNCTION
|
| - * FUNCTION_TYPE_ALIAS
|
| - * GETTER
|
| - * LABEL
|
| - * LIBRARY
|
| - * LOCAL_VARIABLE
|
| - * METHOD
|
| - * PARAMETER
|
| - * PREFIX
|
| - * SETTER
|
| - * TOP_LEVEL_VARIABLE
|
| - * TYPE_PARAMETER
|
| - * UNKNOWN
|
| + * INFO
|
| + * WARNING
|
| + * ERROR
|
| + * FATAL
|
| * }
|
| */
|
| -final Matcher isElementKind = new MatchesEnum("ElementKind", [
|
| - "CLASS",
|
| - "CLASS_TYPE_ALIAS",
|
| - "COMPILATION_UNIT",
|
| - "CONSTRUCTOR",
|
| - "ENUM",
|
| - "ENUM_CONSTANT",
|
| - "FIELD",
|
| - "FILE",
|
| - "FUNCTION",
|
| - "FUNCTION_TYPE_ALIAS",
|
| - "GETTER",
|
| - "LABEL",
|
| - "LIBRARY",
|
| - "LOCAL_VARIABLE",
|
| - "METHOD",
|
| - "PARAMETER",
|
| - "PREFIX",
|
| - "SETTER",
|
| - "TOP_LEVEL_VARIABLE",
|
| - "TYPE_PARAMETER",
|
| - "UNKNOWN"
|
| -]);
|
| +final Matcher isRefactoringProblemSeverity = new MatchesEnum(
|
| + "RefactoringProblemSeverity", ["INFO", "WARNING", "ERROR", "FATAL"]);
|
|
|
| /**
|
| - * FilePath
|
| + * RemoveContentOverlay
|
| *
|
| - * String
|
| + * {
|
| + * "type": "remove"
|
| + * }
|
| */
|
| -final Matcher isFilePath = isString;
|
| +final Matcher isRemoveContentOverlay = new LazyMatcher(() =>
|
| + new MatchesJsonObject("RemoveContentOverlay", {"type": equals("remove")}));
|
|
|
| /**
|
| - * FoldingKind
|
| + * RequestError
|
| + *
|
| + * {
|
| + * "code": RequestErrorCode
|
| + * "message": String
|
| + * "stackTrace": optional String
|
| + * }
|
| + */
|
| +final Matcher isRequestError = new LazyMatcher(() => new MatchesJsonObject(
|
| + "RequestError", {"code": isRequestErrorCode, "message": isString},
|
| + optionalFields: {"stackTrace": isString}));
|
| +
|
| +/**
|
| + * RequestErrorCode
|
| *
|
| * enum {
|
| - * COMMENT
|
| - * CLASS_MEMBER
|
| - * DIRECTIVES
|
| - * DOCUMENTATION_COMMENT
|
| - * TOP_LEVEL_DECLARATION
|
| + * INVALID_OVERLAY_CHANGE
|
| + * INVALID_PARAMETER
|
| + * PLUGIN_ERROR
|
| + * UNKNOWN_REQUEST
|
| * }
|
| */
|
| -final Matcher isFoldingKind = new MatchesEnum("FoldingKind", [
|
| - "COMMENT",
|
| - "CLASS_MEMBER",
|
| - "DIRECTIVES",
|
| - "DOCUMENTATION_COMMENT",
|
| - "TOP_LEVEL_DECLARATION"
|
| +final Matcher isRequestErrorCode = new MatchesEnum("RequestErrorCode", [
|
| + "INVALID_OVERLAY_CHANGE",
|
| + "INVALID_PARAMETER",
|
| + "PLUGIN_ERROR",
|
| + "UNKNOWN_REQUEST"
|
| ]);
|
|
|
| /**
|
| - * FoldingRegion
|
| + * SourceChange
|
| *
|
| * {
|
| - * "kind": FoldingKind
|
| - * "offset": int
|
| - * "length": int
|
| + * "message": String
|
| + * "edits": List<SourceFileEdit>
|
| + * "linkedEditGroups": List<LinkedEditGroup>
|
| + * "selection": optional Position
|
| * }
|
| */
|
| -final Matcher isFoldingRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| - "FoldingRegion",
|
| - {"kind": isFoldingKind, "offset": isInt, "length": isInt}));
|
| +final Matcher isSourceChange =
|
| + new LazyMatcher(() => new MatchesJsonObject("SourceChange", {
|
| + "message": isString,
|
| + "edits": isListOf(isSourceFileEdit),
|
| + "linkedEditGroups": isListOf(isLinkedEditGroup)
|
| + }, optionalFields: {
|
| + "selection": isPosition
|
| + }));
|
|
|
| /**
|
| - * HighlightRegion
|
| + * SourceEdit
|
| *
|
| * {
|
| - * "type": HighlightRegionType
|
| * "offset": int
|
| * "length": int
|
| + * "replacement": String
|
| + * "id": optional String
|
| * }
|
| */
|
| -final Matcher isHighlightRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| - "HighlightRegion",
|
| - {"type": isHighlightRegionType, "offset": isInt, "length": isInt}));
|
| +final Matcher isSourceEdit = new LazyMatcher(() => new MatchesJsonObject(
|
| + "SourceEdit", {"offset": isInt, "length": isInt, "replacement": isString},
|
| + optionalFields: {"id": isString}));
|
|
|
| /**
|
| - * HighlightRegionType
|
| + * SourceFileEdit
|
| + *
|
| + * {
|
| + * "file": FilePath
|
| + * "fileStamp": long
|
| + * "edits": List<SourceEdit>
|
| + * }
|
| + */
|
| +final Matcher isSourceFileEdit = new LazyMatcher(() => new MatchesJsonObject(
|
| + "SourceFileEdit",
|
| + {"file": isFilePath, "fileStamp": isInt, "edits": isListOf(isSourceEdit)}));
|
| +
|
| +/**
|
| + * WatchEvent
|
| + *
|
| + * {
|
| + * "type": WatchEventType
|
| + * "path": String
|
| + * }
|
| + */
|
| +final Matcher isWatchEvent = new LazyMatcher(() => new MatchesJsonObject(
|
| + "WatchEvent", {"type": isWatchEventType, "path": isString}));
|
| +
|
| +/**
|
| + * WatchEventType
|
| *
|
| * enum {
|
| - * ANNOTATION
|
| - * BUILT_IN
|
| - * CLASS
|
| - * COMMENT_BLOCK
|
| - * COMMENT_DOCUMENTATION
|
| - * COMMENT_END_OF_LINE
|
| - * CONSTRUCTOR
|
| - * DIRECTIVE
|
| - * DYNAMIC_TYPE
|
| - * DYNAMIC_LOCAL_VARIABLE_DECLARATION
|
| - * DYNAMIC_LOCAL_VARIABLE_REFERENCE
|
| - * DYNAMIC_PARAMETER_DECLARATION
|
| - * DYNAMIC_PARAMETER_REFERENCE
|
| - * ENUM
|
| - * ENUM_CONSTANT
|
| - * FIELD
|
| - * FIELD_STATIC
|
| - * FUNCTION
|
| - * FUNCTION_DECLARATION
|
| - * FUNCTION_TYPE_ALIAS
|
| - * GETTER_DECLARATION
|
| - * IDENTIFIER_DEFAULT
|
| - * IMPORT_PREFIX
|
| - * INSTANCE_FIELD_DECLARATION
|
| - * INSTANCE_FIELD_REFERENCE
|
| - * INSTANCE_GETTER_DECLARATION
|
| - * INSTANCE_GETTER_REFERENCE
|
| - * INSTANCE_METHOD_DECLARATION
|
| - * INSTANCE_METHOD_REFERENCE
|
| - * INSTANCE_SETTER_DECLARATION
|
| - * INSTANCE_SETTER_REFERENCE
|
| - * INVALID_STRING_ESCAPE
|
| - * KEYWORD
|
| - * LABEL
|
| - * LIBRARY_NAME
|
| - * LITERAL_BOOLEAN
|
| - * LITERAL_DOUBLE
|
| - * LITERAL_INTEGER
|
| - * LITERAL_LIST
|
| - * LITERAL_MAP
|
| - * LITERAL_STRING
|
| - * LOCAL_FUNCTION_DECLARATION
|
| - * LOCAL_FUNCTION_REFERENCE
|
| - * LOCAL_VARIABLE
|
| - * LOCAL_VARIABLE_DECLARATION
|
| - * LOCAL_VARIABLE_REFERENCE
|
| - * METHOD
|
| - * METHOD_DECLARATION
|
| - * METHOD_DECLARATION_STATIC
|
| - * METHOD_STATIC
|
| - * PARAMETER
|
| - * SETTER_DECLARATION
|
| - * TOP_LEVEL_VARIABLE
|
| - * PARAMETER_DECLARATION
|
| - * PARAMETER_REFERENCE
|
| - * STATIC_FIELD_DECLARATION
|
| - * STATIC_GETTER_DECLARATION
|
| - * STATIC_GETTER_REFERENCE
|
| - * STATIC_METHOD_DECLARATION
|
| - * STATIC_METHOD_REFERENCE
|
| - * STATIC_SETTER_DECLARATION
|
| - * STATIC_SETTER_REFERENCE
|
| - * TOP_LEVEL_FUNCTION_DECLARATION
|
| - * TOP_LEVEL_FUNCTION_REFERENCE
|
| - * TOP_LEVEL_GETTER_DECLARATION
|
| - * TOP_LEVEL_GETTER_REFERENCE
|
| - * TOP_LEVEL_SETTER_DECLARATION
|
| - * TOP_LEVEL_SETTER_REFERENCE
|
| - * TOP_LEVEL_VARIABLE_DECLARATION
|
| - * TYPE_NAME_DYNAMIC
|
| - * TYPE_PARAMETER
|
| - * UNRESOLVED_INSTANCE_MEMBER_REFERENCE
|
| - * VALID_STRING_ESCAPE
|
| + * ADD
|
| + * MODIFY
|
| + * REMOVE
|
| * }
|
| */
|
| -final Matcher isHighlightRegionType = new MatchesEnum("HighlightRegionType", [
|
| - "ANNOTATION",
|
| - "BUILT_IN",
|
| - "CLASS",
|
| - "COMMENT_BLOCK",
|
| - "COMMENT_DOCUMENTATION",
|
| - "COMMENT_END_OF_LINE",
|
| - "CONSTRUCTOR",
|
| - "DIRECTIVE",
|
| - "DYNAMIC_TYPE",
|
| - "DYNAMIC_LOCAL_VARIABLE_DECLARATION",
|
| - "DYNAMIC_LOCAL_VARIABLE_REFERENCE",
|
| - "DYNAMIC_PARAMETER_DECLARATION",
|
| - "DYNAMIC_PARAMETER_REFERENCE",
|
| - "ENUM",
|
| - "ENUM_CONSTANT",
|
| - "FIELD",
|
| - "FIELD_STATIC",
|
| - "FUNCTION",
|
| - "FUNCTION_DECLARATION",
|
| - "FUNCTION_TYPE_ALIAS",
|
| - "GETTER_DECLARATION",
|
| - "IDENTIFIER_DEFAULT",
|
| - "IMPORT_PREFIX",
|
| - "INSTANCE_FIELD_DECLARATION",
|
| - "INSTANCE_FIELD_REFERENCE",
|
| - "INSTANCE_GETTER_DECLARATION",
|
| - "INSTANCE_GETTER_REFERENCE",
|
| - "INSTANCE_METHOD_DECLARATION",
|
| - "INSTANCE_METHOD_REFERENCE",
|
| - "INSTANCE_SETTER_DECLARATION",
|
| - "INSTANCE_SETTER_REFERENCE",
|
| - "INVALID_STRING_ESCAPE",
|
| - "KEYWORD",
|
| - "LABEL",
|
| - "LIBRARY_NAME",
|
| - "LITERAL_BOOLEAN",
|
| - "LITERAL_DOUBLE",
|
| - "LITERAL_INTEGER",
|
| - "LITERAL_LIST",
|
| - "LITERAL_MAP",
|
| - "LITERAL_STRING",
|
| - "LOCAL_FUNCTION_DECLARATION",
|
| - "LOCAL_FUNCTION_REFERENCE",
|
| - "LOCAL_VARIABLE",
|
| - "LOCAL_VARIABLE_DECLARATION",
|
| - "LOCAL_VARIABLE_REFERENCE",
|
| - "METHOD",
|
| - "METHOD_DECLARATION",
|
| - "METHOD_DECLARATION_STATIC",
|
| - "METHOD_STATIC",
|
| - "PARAMETER",
|
| - "SETTER_DECLARATION",
|
| - "TOP_LEVEL_VARIABLE",
|
| - "PARAMETER_DECLARATION",
|
| - "PARAMETER_REFERENCE",
|
| - "STATIC_FIELD_DECLARATION",
|
| - "STATIC_GETTER_DECLARATION",
|
| - "STATIC_GETTER_REFERENCE",
|
| - "STATIC_METHOD_DECLARATION",
|
| - "STATIC_METHOD_REFERENCE",
|
| - "STATIC_SETTER_DECLARATION",
|
| - "STATIC_SETTER_REFERENCE",
|
| - "TOP_LEVEL_FUNCTION_DECLARATION",
|
| - "TOP_LEVEL_FUNCTION_REFERENCE",
|
| - "TOP_LEVEL_GETTER_DECLARATION",
|
| - "TOP_LEVEL_GETTER_REFERENCE",
|
| - "TOP_LEVEL_SETTER_DECLARATION",
|
| - "TOP_LEVEL_SETTER_REFERENCE",
|
| - "TOP_LEVEL_VARIABLE_DECLARATION",
|
| - "TYPE_NAME_DYNAMIC",
|
| - "TYPE_PARAMETER",
|
| - "UNRESOLVED_INSTANCE_MEMBER_REFERENCE",
|
| - "VALID_STRING_ESCAPE"
|
| -]);
|
| +final Matcher isWatchEventType =
|
| + new MatchesEnum("WatchEventType", ["ADD", "MODIFY", "REMOVE"]);
|
|
|
| /**
|
| - * LinkedEditGroup
|
| + * analysis.errors params
|
| *
|
| * {
|
| - * "positions": List<Position>
|
| - * "length": int
|
| - * "suggestions": List<LinkedEditSuggestion>
|
| + * "file": FilePath
|
| + * "errors": List<AnalysisError>
|
| * }
|
| */
|
| -final Matcher isLinkedEditGroup =
|
| - new LazyMatcher(() => new MatchesJsonObject("LinkedEditGroup", {
|
| - "positions": isListOf(isPosition),
|
| - "length": isInt,
|
| - "suggestions": isListOf(isLinkedEditSuggestion)
|
| - }));
|
| +final Matcher isAnalysisErrorsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.errors params",
|
| + {"file": isFilePath, "errors": isListOf(isAnalysisError)}));
|
|
|
| /**
|
| - * LinkedEditSuggestion
|
| + * analysis.folding params
|
| *
|
| * {
|
| - * "value": String
|
| - * "kind": LinkedEditSuggestionKind
|
| + * "file": FilePath
|
| + * "regions": List<FoldingRegion>
|
| * }
|
| */
|
| -final Matcher isLinkedEditSuggestion = new LazyMatcher(() =>
|
| - new MatchesJsonObject("LinkedEditSuggestion",
|
| - {"value": isString, "kind": isLinkedEditSuggestionKind}));
|
| +final Matcher isAnalysisFoldingParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.folding params",
|
| + {"file": isFilePath, "regions": isListOf(isFoldingRegion)}));
|
|
|
| /**
|
| - * LinkedEditSuggestionKind
|
| + * analysis.handleWatchEvents params
|
| *
|
| - * enum {
|
| - * METHOD
|
| - * PARAMETER
|
| - * TYPE
|
| - * VARIABLE
|
| + * {
|
| + * "events": List<WatchEvent>
|
| * }
|
| */
|
| -final Matcher isLinkedEditSuggestionKind = new MatchesEnum(
|
| - "LinkedEditSuggestionKind", ["METHOD", "PARAMETER", "TYPE", "VARIABLE"]);
|
| +final Matcher isAnalysisHandleWatchEventsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.handleWatchEvents params",
|
| + {"events": isListOf(isWatchEvent)}));
|
|
|
| /**
|
| - * Location
|
| + * analysis.handleWatchEvents result
|
| + */
|
| +final Matcher isAnalysisHandleWatchEventsResult = isNull;
|
| +
|
| +/**
|
| + * analysis.highlights params
|
| *
|
| * {
|
| * "file": FilePath
|
| - * "offset": int
|
| - * "length": int
|
| - * "startLine": int
|
| - * "startColumn": int
|
| + * "regions": List<HighlightRegion>
|
| * }
|
| */
|
| -final Matcher isLocation =
|
| - new LazyMatcher(() => new MatchesJsonObject("Location", {
|
| - "file": isFilePath,
|
| - "offset": isInt,
|
| - "length": isInt,
|
| - "startLine": isInt,
|
| - "startColumn": isInt
|
| - }));
|
| +final Matcher isAnalysisHighlightsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.highlights params",
|
| + {"file": isFilePath, "regions": isListOf(isHighlightRegion)}));
|
|
|
| /**
|
| - * NavigationRegion
|
| + * analysis.navigation params
|
| *
|
| * {
|
| - * "offset": int
|
| - * "length": int
|
| - * "targets": List<int>
|
| + * "file": FilePath
|
| + * "regions": List<NavigationRegion>
|
| + * "targets": List<NavigationTarget>
|
| + * "files": List<FilePath>
|
| * }
|
| */
|
| -final Matcher isNavigationRegion = new LazyMatcher(() => new MatchesJsonObject(
|
| - "NavigationRegion",
|
| - {"offset": isInt, "length": isInt, "targets": isListOf(isInt)}));
|
| +final Matcher isAnalysisNavigationParams =
|
| + new LazyMatcher(() => new MatchesJsonObject("analysis.navigation params", {
|
| + "file": isFilePath,
|
| + "regions": isListOf(isNavigationRegion),
|
| + "targets": isListOf(isNavigationTarget),
|
| + "files": isListOf(isFilePath)
|
| + }));
|
|
|
| /**
|
| - * NavigationTarget
|
| + * analysis.occurrences params
|
| *
|
| * {
|
| - * "kind": ElementKind
|
| - * "fileIndex": int
|
| - * "offset": int
|
| - * "length": int
|
| - * "startLine": int
|
| - * "startColumn": int
|
| + * "file": FilePath
|
| + * "occurrences": List<Occurrences>
|
| * }
|
| */
|
| -final Matcher isNavigationTarget =
|
| - new LazyMatcher(() => new MatchesJsonObject("NavigationTarget", {
|
| - "kind": isElementKind,
|
| - "fileIndex": isInt,
|
| - "offset": isInt,
|
| - "length": isInt,
|
| - "startLine": isInt,
|
| - "startColumn": isInt
|
| - }));
|
| +final Matcher isAnalysisOccurrencesParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.occurrences params",
|
| + {"file": isFilePath, "occurrences": isListOf(isOccurrences)}));
|
|
|
| /**
|
| - * Occurrences
|
| + * analysis.outline params
|
| *
|
| * {
|
| - * "element": Element
|
| - * "offsets": List<int>
|
| - * "length": int
|
| + * "file": FilePath
|
| + * "outline": List<Outline>
|
| * }
|
| */
|
| -final Matcher isOccurrences = new LazyMatcher(() => new MatchesJsonObject(
|
| - "Occurrences",
|
| - {"element": isElement, "offsets": isListOf(isInt), "length": isInt}));
|
| +final Matcher isAnalysisOutlineParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.outline params",
|
| + {"file": isFilePath, "outline": isListOf(isOutline)}));
|
|
|
| /**
|
| - * Outline
|
| + * analysis.reanalyze params
|
| *
|
| * {
|
| - * "element": Element
|
| - * "offset": int
|
| - * "length": int
|
| - * "children": optional List<Outline>
|
| + * "roots": optional List<FilePath>
|
| * }
|
| */
|
| -final Matcher isOutline = new LazyMatcher(() => new MatchesJsonObject(
|
| - "Outline", {"element": isElement, "offset": isInt, "length": isInt},
|
| - optionalFields: {"children": isListOf(isOutline)}));
|
| +final Matcher isAnalysisReanalyzeParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.reanalyze params", null,
|
| + optionalFields: {"roots": isListOf(isFilePath)}));
|
|
|
| /**
|
| - * Position
|
| + * analysis.reanalyze result
|
| + */
|
| +final Matcher isAnalysisReanalyzeResult = isNull;
|
| +
|
| +/**
|
| + * analysis.setContextBuilderOptions params
|
| *
|
| * {
|
| - * "file": FilePath
|
| - * "offset": int
|
| + * "options": ContextBuilderOptions
|
| * }
|
| */
|
| -final Matcher isPosition = new LazyMatcher(() =>
|
| - new MatchesJsonObject("Position", {"file": isFilePath, "offset": isInt}));
|
| +final Matcher isAnalysisSetContextBuilderOptionsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.setContextBuilderOptions params",
|
| + {"options": isContextBuilderOptions}));
|
|
|
| /**
|
| - * PrioritizedSourceChange
|
| + * analysis.setContextBuilderOptions result
|
| + */
|
| +final Matcher isAnalysisSetContextBuilderOptionsResult = isNull;
|
| +
|
| +/**
|
| + * analysis.setContextRoots params
|
| *
|
| * {
|
| - * "priority": int
|
| - * "change": SourceChange
|
| + * "roots": List<ContextRoot>
|
| * }
|
| */
|
| -final Matcher isPrioritizedSourceChange = new LazyMatcher(() =>
|
| - new MatchesJsonObject("PrioritizedSourceChange",
|
| - {"priority": isInt, "change": isSourceChange}));
|
| +final Matcher isAnalysisSetContextRootsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject(
|
| + "analysis.setContextRoots params", {"roots": isListOf(isContextRoot)}));
|
|
|
| /**
|
| - * RefactoringFeedback
|
| + * analysis.setContextRoots result
|
| + */
|
| +final Matcher isAnalysisSetContextRootsResult = isNull;
|
| +
|
| +/**
|
| + * analysis.setPriorityFiles params
|
| *
|
| * {
|
| + * "files": List<FilePath>
|
| * }
|
| */
|
| -final Matcher isRefactoringFeedback =
|
| - new LazyMatcher(() => new MatchesJsonObject("RefactoringFeedback", null));
|
| +final Matcher isAnalysisSetPriorityFilesParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject(
|
| + "analysis.setPriorityFiles params", {"files": isListOf(isFilePath)}));
|
|
|
| /**
|
| - * RefactoringKind
|
| - *
|
| - * enum {
|
| - * CONVERT_GETTER_TO_METHOD
|
| - * CONVERT_METHOD_TO_GETTER
|
| - * EXTRACT_LOCAL_VARIABLE
|
| - * EXTRACT_METHOD
|
| - * INLINE_LOCAL_VARIABLE
|
| - * INLINE_METHOD
|
| - * MOVE_FILE
|
| - * RENAME
|
| - * SORT_MEMBERS
|
| - * }
|
| + * analysis.setPriorityFiles result
|
| */
|
| -final Matcher isRefactoringKind = new MatchesEnum("RefactoringKind", [
|
| - "CONVERT_GETTER_TO_METHOD",
|
| - "CONVERT_METHOD_TO_GETTER",
|
| - "EXTRACT_LOCAL_VARIABLE",
|
| - "EXTRACT_METHOD",
|
| - "INLINE_LOCAL_VARIABLE",
|
| - "INLINE_METHOD",
|
| - "MOVE_FILE",
|
| - "RENAME",
|
| - "SORT_MEMBERS"
|
| -]);
|
| +final Matcher isAnalysisSetPriorityFilesResult = isNull;
|
|
|
| /**
|
| - * RefactoringMethodParameter
|
| + * analysis.setSubscriptions params
|
| *
|
| * {
|
| - * "id": optional String
|
| - * "kind": RefactoringMethodParameterKind
|
| - * "type": String
|
| - * "name": String
|
| - * "parameters": optional String
|
| + * "subscriptions": Map<AnalysisService, List<FilePath>>
|
| * }
|
| */
|
| -final Matcher isRefactoringMethodParameter = new LazyMatcher(() =>
|
| - new MatchesJsonObject("RefactoringMethodParameter", {
|
| - "kind": isRefactoringMethodParameterKind,
|
| - "type": isString,
|
| - "name": isString
|
| - }, optionalFields: {
|
| - "id": isString,
|
| - "parameters": isString
|
| - }));
|
| +final Matcher isAnalysisSetSubscriptionsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("analysis.setSubscriptions params",
|
| + {"subscriptions": isMapOf(isAnalysisService, isListOf(isFilePath))}));
|
|
|
| /**
|
| - * RefactoringOptions
|
| + * analysis.setSubscriptions result
|
| + */
|
| +final Matcher isAnalysisSetSubscriptionsResult = isNull;
|
| +
|
| +/**
|
| + * analysis.updateContent params
|
| *
|
| * {
|
| + * "files": Map<FilePath, AddContentOverlay | ChangeContentOverlay | RemoveContentOverlay>
|
| * }
|
| */
|
| -final Matcher isRefactoringOptions =
|
| - new LazyMatcher(() => new MatchesJsonObject("RefactoringOptions", null));
|
| +final Matcher isAnalysisUpdateContentParams = new LazyMatcher(
|
| + () => new MatchesJsonObject("analysis.updateContent params", {
|
| + "files": isMapOf(
|
| + isFilePath,
|
| + isOneOf([
|
| + isAddContentOverlay,
|
| + isChangeContentOverlay,
|
| + isRemoveContentOverlay
|
| + ]))
|
| + }));
|
|
|
| /**
|
| - * RefactoringMethodParameterKind
|
| + * analysis.updateContent result
|
| + */
|
| +final Matcher isAnalysisUpdateContentResult = isNull;
|
| +
|
| +/**
|
| + * completion.getSuggestions params
|
| *
|
| - * enum {
|
| - * REQUIRED
|
| - * POSITIONAL
|
| - * NAMED
|
| + * {
|
| + * "file": FilePath
|
| + * "offset": int
|
| * }
|
| */
|
| -final Matcher isRefactoringMethodParameterKind = new MatchesEnum(
|
| - "RefactoringMethodParameterKind", ["REQUIRED", "POSITIONAL", "NAMED"]);
|
| +final Matcher isCompletionGetSuggestionsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("completion.getSuggestions params",
|
| + {"file": isFilePath, "offset": isInt}));
|
|
|
| /**
|
| - * RefactoringProblem
|
| + * completion.getSuggestions result
|
| *
|
| * {
|
| - * "severity": RefactoringProblemSeverity
|
| - * "message": String
|
| - * "location": optional Location
|
| + * "replacementOffset": int
|
| + * "replacementLength": int
|
| + * "results": List<CompletionSuggestion>
|
| * }
|
| */
|
| -final Matcher isRefactoringProblem = new LazyMatcher(() =>
|
| - new MatchesJsonObject("RefactoringProblem",
|
| - {"severity": isRefactoringProblemSeverity, "message": isString},
|
| - optionalFields: {"location": isLocation}));
|
| +final Matcher isCompletionGetSuggestionsResult = new LazyMatcher(
|
| + () => new MatchesJsonObject("completion.getSuggestions result", {
|
| + "replacementOffset": isInt,
|
| + "replacementLength": isInt,
|
| + "results": isListOf(isCompletionSuggestion)
|
| + }));
|
|
|
| /**
|
| - * RefactoringProblemSeverity
|
| - *
|
| - * enum {
|
| - * INFO
|
| - * WARNING
|
| - * ERROR
|
| - * FATAL
|
| - * }
|
| + * convertGetterToMethod feedback
|
| */
|
| -final Matcher isRefactoringProblemSeverity = new MatchesEnum(
|
| - "RefactoringProblemSeverity", ["INFO", "WARNING", "ERROR", "FATAL"]);
|
| +final Matcher isConvertGetterToMethodFeedback = isNull;
|
|
|
| /**
|
| - * RemoveContentOverlay
|
| - *
|
| - * {
|
| - * "type": "remove"
|
| - * }
|
| + * convertGetterToMethod options
|
| */
|
| -final Matcher isRemoveContentOverlay = new LazyMatcher(() =>
|
| - new MatchesJsonObject("RemoveContentOverlay", {"type": equals("remove")}));
|
| +final Matcher isConvertGetterToMethodOptions = isNull;
|
|
|
| /**
|
| - * RequestError
|
| - *
|
| - * {
|
| - * "code": RequestErrorCode
|
| - * "message": String
|
| - * "stackTrace": optional String
|
| - * }
|
| + * convertMethodToGetter feedback
|
| */
|
| -final Matcher isRequestError = new LazyMatcher(() => new MatchesJsonObject(
|
| - "RequestError", {"code": isRequestErrorCode, "message": isString},
|
| - optionalFields: {"stackTrace": isString}));
|
| +final Matcher isConvertMethodToGetterFeedback = isNull;
|
|
|
| /**
|
| - * RequestErrorCode
|
| - *
|
| - * enum {
|
| - * INVALID_OVERLAY_CHANGE
|
| - * INVALID_PARAMETER
|
| - * PLUGIN_ERROR
|
| - * UNKNOWN_REQUEST
|
| - * }
|
| + * convertMethodToGetter options
|
| */
|
| -final Matcher isRequestErrorCode = new MatchesEnum("RequestErrorCode", [
|
| - "INVALID_OVERLAY_CHANGE",
|
| - "INVALID_PARAMETER",
|
| - "PLUGIN_ERROR",
|
| - "UNKNOWN_REQUEST"
|
| -]);
|
| +final Matcher isConvertMethodToGetterOptions = isNull;
|
|
|
| /**
|
| - * SourceChange
|
| + * edit.getAssists params
|
| *
|
| * {
|
| - * "message": String
|
| - * "edits": List<SourceFileEdit>
|
| - * "linkedEditGroups": List<LinkedEditGroup>
|
| - * "selection": optional Position
|
| + * "file": FilePath
|
| + * "offset": int
|
| + * "length": int
|
| * }
|
| */
|
| -final Matcher isSourceChange =
|
| - new LazyMatcher(() => new MatchesJsonObject("SourceChange", {
|
| - "message": isString,
|
| - "edits": isListOf(isSourceFileEdit),
|
| - "linkedEditGroups": isListOf(isLinkedEditGroup)
|
| - }, optionalFields: {
|
| - "selection": isPosition
|
| - }));
|
| +final Matcher isEditGetAssistsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("edit.getAssists params",
|
| + {"file": isFilePath, "offset": isInt, "length": isInt}));
|
|
|
| /**
|
| - * SourceEdit
|
| + * edit.getAssists result
|
| *
|
| * {
|
| - * "offset": int
|
| - * "length": int
|
| - * "replacement": String
|
| - * "id": optional String
|
| + * "assists": List<PrioritizedSourceChange>
|
| * }
|
| */
|
| -final Matcher isSourceEdit = new LazyMatcher(() => new MatchesJsonObject(
|
| - "SourceEdit", {"offset": isInt, "length": isInt, "replacement": isString},
|
| - optionalFields: {"id": isString}));
|
| +final Matcher isEditGetAssistsResult = new LazyMatcher(() =>
|
| + new MatchesJsonObject("edit.getAssists result",
|
| + {"assists": isListOf(isPrioritizedSourceChange)}));
|
|
|
| /**
|
| - * SourceFileEdit
|
| + * edit.getAvailableRefactorings params
|
| *
|
| * {
|
| * "file": FilePath
|
| - * "fileStamp": long
|
| - * "edits": List<SourceEdit>
|
| + * "offset": int
|
| + * "length": int
|
| * }
|
| */
|
| -final Matcher isSourceFileEdit = new LazyMatcher(() => new MatchesJsonObject(
|
| - "SourceFileEdit",
|
| - {"file": isFilePath, "fileStamp": isInt, "edits": isListOf(isSourceEdit)}));
|
| +final Matcher isEditGetAvailableRefactoringsParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("edit.getAvailableRefactorings params",
|
| + {"file": isFilePath, "offset": isInt, "length": isInt}));
|
|
|
| /**
|
| - * WatchEvent
|
| + * edit.getAvailableRefactorings result
|
| *
|
| * {
|
| - * "type": WatchEventType
|
| - * "path": String
|
| + * "kinds": List<RefactoringKind>
|
| * }
|
| */
|
| -final Matcher isWatchEvent = new LazyMatcher(() => new MatchesJsonObject(
|
| - "WatchEvent", {"type": isWatchEventType, "path": isString}));
|
| +final Matcher isEditGetAvailableRefactoringsResult = new LazyMatcher(() =>
|
| + new MatchesJsonObject("edit.getAvailableRefactorings result",
|
| + {"kinds": isListOf(isRefactoringKind)}));
|
|
|
| /**
|
| - * WatchEventType
|
| + * edit.getFixes params
|
| *
|
| - * enum {
|
| - * ADD
|
| - * MODIFY
|
| - * REMOVE
|
| + * {
|
| + * "file": FilePath
|
| + * "offset": int
|
| * }
|
| */
|
| -final Matcher isWatchEventType =
|
| - new MatchesEnum("WatchEventType", ["ADD", "MODIFY", "REMOVE"]);
|
| -
|
| -/**
|
| - * convertGetterToMethod feedback
|
| - */
|
| -final Matcher isConvertGetterToMethodFeedback = isNull;
|
| +final Matcher isEditGetFixesParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject(
|
| + "edit.getFixes params", {"file": isFilePath, "offset": isInt}));
|
|
|
| /**
|
| - * convertGetterToMethod options
|
| + * edit.getFixes result
|
| + *
|
| + * {
|
| + * "fixes": List<AnalysisErrorFixes>
|
| + * }
|
| */
|
| -final Matcher isConvertGetterToMethodOptions = isNull;
|
| +final Matcher isEditGetFixesResult = new LazyMatcher(() =>
|
| + new MatchesJsonObject(
|
| + "edit.getFixes result", {"fixes": isListOf(isAnalysisErrorFixes)}));
|
|
|
| /**
|
| - * convertMethodToGetter feedback
|
| + * edit.getRefactoring params
|
| + *
|
| + * {
|
| + * "kind": RefactoringKind
|
| + * "file": FilePath
|
| + * "offset": int
|
| + * "length": int
|
| + * "validateOnly": bool
|
| + * "options": optional RefactoringOptions
|
| + * }
|
| */
|
| -final Matcher isConvertMethodToGetterFeedback = isNull;
|
| +final Matcher isEditGetRefactoringParams =
|
| + new LazyMatcher(() => new MatchesJsonObject("edit.getRefactoring params", {
|
| + "kind": isRefactoringKind,
|
| + "file": isFilePath,
|
| + "offset": isInt,
|
| + "length": isInt,
|
| + "validateOnly": isBool
|
| + }, optionalFields: {
|
| + "options": isRefactoringOptions
|
| + }));
|
|
|
| /**
|
| - * convertMethodToGetter options
|
| + * edit.getRefactoring result
|
| + *
|
| + * {
|
| + * "initialProblems": List<RefactoringProblem>
|
| + * "optionsProblems": List<RefactoringProblem>
|
| + * "finalProblems": List<RefactoringProblem>
|
| + * "feedback": optional RefactoringFeedback
|
| + * "change": optional SourceChange
|
| + * "potentialEdits": optional List<String>
|
| + * }
|
| */
|
| -final Matcher isConvertMethodToGetterOptions = isNull;
|
| +final Matcher isEditGetRefactoringResult =
|
| + new LazyMatcher(() => new MatchesJsonObject("edit.getRefactoring result", {
|
| + "initialProblems": isListOf(isRefactoringProblem),
|
| + "optionsProblems": isListOf(isRefactoringProblem),
|
| + "finalProblems": isListOf(isRefactoringProblem)
|
| + }, optionalFields: {
|
| + "feedback": isRefactoringFeedback,
|
| + "change": isSourceChange,
|
| + "potentialEdits": isListOf(isString)
|
| + }));
|
|
|
| /**
|
| * extractLocalVariable feedback
|
| @@ -1435,6 +1383,62 @@ final Matcher isMoveFileOptions = new LazyMatcher(
|
| () => new MatchesJsonObject("moveFile options", {"newFile": isFilePath}));
|
|
|
| /**
|
| + * plugin.error params
|
| + *
|
| + * {
|
| + * "isFatal": bool
|
| + * "message": String
|
| + * "stackTrace": String
|
| + * }
|
| + */
|
| +final Matcher isPluginErrorParams = new LazyMatcher(() => new MatchesJsonObject(
|
| + "plugin.error params",
|
| + {"isFatal": isBool, "message": isString, "stackTrace": isString}));
|
| +
|
| +/**
|
| + * plugin.shutdown params
|
| + */
|
| +final Matcher isPluginShutdownParams = isNull;
|
| +
|
| +/**
|
| + * plugin.shutdown result
|
| + */
|
| +final Matcher isPluginShutdownResult = isNull;
|
| +
|
| +/**
|
| + * plugin.versionCheck params
|
| + *
|
| + * {
|
| + * "byteStorePath": String
|
| + * "version": String
|
| + * }
|
| + */
|
| +final Matcher isPluginVersionCheckParams = new LazyMatcher(() =>
|
| + new MatchesJsonObject("plugin.versionCheck params",
|
| + {"byteStorePath": isString, "version": isString}));
|
| +
|
| +/**
|
| + * plugin.versionCheck result
|
| + *
|
| + * {
|
| + * "isCompatible": bool
|
| + * "name": String
|
| + * "version": String
|
| + * "contactInfo": optional String
|
| + * "interestingFiles": List<String>
|
| + * }
|
| + */
|
| +final Matcher isPluginVersionCheckResult =
|
| + new LazyMatcher(() => new MatchesJsonObject("plugin.versionCheck result", {
|
| + "isCompatible": isBool,
|
| + "name": isString,
|
| + "version": isString,
|
| + "interestingFiles": isListOf(isString)
|
| + }, optionalFields: {
|
| + "contactInfo": isString
|
| + }));
|
| +
|
| +/**
|
| * rename feedback
|
| *
|
| * {
|
|
|