Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: pkg/analyzer_plugin/lib/protocol/protocol_generated.dart

Issue 2880443006: Generate common types into a separate library (Closed)
Patch Set: add missed files Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer_plugin/lib/protocol/protocol_generated.dart
diff --git a/pkg/analyzer_plugin/lib/protocol/protocol_generated.dart b/pkg/analyzer_plugin/lib/protocol/protocol_generated.dart
index 8c114ce51abd08a1f1603fa0ccddb167c0faa475..57a89a082688fd80d545def0dd78e884d65e089e 100644
--- a/pkg/analyzer_plugin/lib/protocol/protocol_generated.dart
+++ b/pkg/analyzer_plugin/lib/protocol/protocol_generated.dart
@@ -11,64 +11,95 @@ import 'dart:convert' hide JsonDecoder;
import 'package:analyzer/src/generated/utilities_general.dart';
import 'package:analyzer_plugin/protocol/protocol.dart';
import 'package:analyzer_plugin/src/protocol/protocol_internal.dart';
+import 'package:analyzer_plugin/protocol/protocol_common.dart';
/**
- * AddContentOverlay
+ * AnalysisErrorFixes
*
* {
- * "type": "add"
- * "content": String
+ * "error": AnalysisError
+ * "fixes": List<PrioritizedSourceChange>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AddContentOverlay implements HasToJson {
- String _content;
+class AnalysisErrorFixes implements HasToJson {
+ AnalysisError _error;
+
+ List<PrioritizedSourceChange> _fixes;
+
+ /**
+ * The error with which the fixes are associated.
+ */
+ AnalysisError get error => _error;
+
+ /**
+ * The error with which the fixes are associated.
+ */
+ void set error(AnalysisError value) {
+ assert(value != null);
+ this._error = value;
+ }
/**
- * The new content of the file.
+ * The fixes associated with the error.
*/
- String get content => _content;
+ List<PrioritizedSourceChange> get fixes => _fixes;
/**
- * The new content of the file.
+ * The fixes associated with the error.
*/
- void set content(String value) {
+ void set fixes(List<PrioritizedSourceChange> value) {
assert(value != null);
- this._content = value;
+ this._fixes = value;
}
- AddContentOverlay(String content) {
- this.content = content;
+ AnalysisErrorFixes(AnalysisError error,
+ {List<PrioritizedSourceChange> fixes}) {
+ this.error = error;
+ if (fixes == null) {
+ this.fixes = <PrioritizedSourceChange>[];
+ } else {
+ this.fixes = fixes;
+ }
}
- factory AddContentOverlay.fromJson(
+ factory AnalysisErrorFixes.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- if (json["type"] != "add") {
- throw jsonDecoder.mismatch(jsonPath, "equal " + "add", json);
+ AnalysisError error;
+ if (json.containsKey("error")) {
+ error = new AnalysisError.fromJson(
+ jsonDecoder, jsonPath + ".error", json["error"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "error");
}
- String content;
- if (json.containsKey("content")) {
- content =
- jsonDecoder.decodeString(jsonPath + ".content", json["content"]);
+ List<PrioritizedSourceChange> fixes;
+ if (json.containsKey("fixes")) {
+ fixes = jsonDecoder.decodeList(
+ jsonPath + ".fixes",
+ json["fixes"],
+ (String jsonPath, Object json) =>
+ new PrioritizedSourceChange.fromJson(
+ jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "content");
+ throw jsonDecoder.mismatch(jsonPath, "fixes");
}
- return new AddContentOverlay(content);
+ return new AnalysisErrorFixes(error, fixes: fixes);
} else {
- throw jsonDecoder.mismatch(jsonPath, "AddContentOverlay", json);
+ throw jsonDecoder.mismatch(jsonPath, "AnalysisErrorFixes", json);
}
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["type"] = "add";
- result["content"] = content;
+ result["error"] = error.toJson();
+ result["fixes"] =
+ fixes.map((PrioritizedSourceChange value) => value.toJson()).toList();
return result;
}
@@ -77,8 +108,10 @@ class AddContentOverlay implements HasToJson {
@override
bool operator ==(other) {
- if (other is AddContentOverlay) {
- return content == other.content;
+ if (other is AnalysisErrorFixes) {
+ return error == other.error &&
+ listEqual(fixes, other.fixes,
+ (PrioritizedSourceChange a, PrioritizedSourceChange b) => a == b);
}
return false;
}
@@ -86,249 +119,113 @@ class AddContentOverlay implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, 704418402);
- hash = JenkinsSmiHash.combine(hash, content.hashCode);
+ hash = JenkinsSmiHash.combine(hash, error.hashCode);
+ hash = JenkinsSmiHash.combine(hash, fixes.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * AnalysisError
+ * analysis.errors params
*
* {
- * "severity": AnalysisErrorSeverity
- * "type": AnalysisErrorType
- * "location": Location
- * "message": String
- * "correction": optional String
- * "code": String
- * "hasFix": optional bool
+ * "file": FilePath
+ * "errors": List<AnalysisError>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisError implements HasToJson {
- AnalysisErrorSeverity _severity;
-
- AnalysisErrorType _type;
-
- Location _location;
-
- String _message;
-
- String _correction;
-
- String _code;
-
- bool _hasFix;
-
- /**
- * The severity of the error.
- */
- AnalysisErrorSeverity get severity => _severity;
-
- /**
- * The severity of the error.
- */
- void set severity(AnalysisErrorSeverity value) {
- assert(value != null);
- this._severity = value;
- }
-
- /**
- * The type of the error.
- */
- AnalysisErrorType get type => _type;
-
- /**
- * The type of the error.
- */
- void set type(AnalysisErrorType value) {
- assert(value != null);
- this._type = value;
- }
-
- /**
- * The location associated with the error.
- */
- Location get location => _location;
+class AnalysisErrorsParams implements HasToJson {
+ String _file;
- /**
- * The location associated with the error.
- */
- void set location(Location value) {
- assert(value != null);
- this._location = value;
- }
+ List<AnalysisError> _errors;
/**
- * The message to be displayed for this error. The message should indicate
- * what is wrong with the code and why it is wrong.
+ * The file containing the errors.
*/
- String get message => _message;
+ String get file => _file;
/**
- * The message to be displayed for this error. The message should indicate
- * what is wrong with the code and why it is wrong.
+ * The file containing the errors.
*/
- void set message(String value) {
+ void set file(String value) {
assert(value != null);
- this._message = value;
- }
-
- /**
- * The correction message to be displayed for this error. The correction
- * message should indicate how the user can fix the error. The field is
- * omitted if there is no correction message associated with the error code.
- */
- String get correction => _correction;
-
- /**
- * The correction message to be displayed for this error. The correction
- * message should indicate how the user can fix the error. The field is
- * omitted if there is no correction message associated with the error code.
- */
- void set correction(String value) {
- this._correction = value;
+ this._file = value;
}
/**
- * The name, as a string, of the error code associated with this error.
+ * The errors contained in the file.
*/
- String get code => _code;
+ List<AnalysisError> get errors => _errors;
/**
- * The name, as a string, of the error code associated with this error.
+ * The errors contained in the file.
*/
- void set code(String value) {
+ void set errors(List<AnalysisError> value) {
assert(value != null);
- this._code = value;
- }
-
- /**
- * A hint to indicate to interested clients that this error has an associated
- * fix (or fixes). The absence of this field implies there are not known to
- * be fixes. Note that since the operation to calculate whether fixes apply
- * needs to be performant it is possible that complicated tests will be
- * skipped and a false negative returned. For this reason, this attribute
- * should be treated as a "hint". Despite the possibility of false negatives,
- * no false positives should be returned. If a client sees this flag set they
- * can proceed with the confidence that there are in fact associated fixes.
- */
- bool get hasFix => _hasFix;
-
- /**
- * A hint to indicate to interested clients that this error has an associated
- * fix (or fixes). The absence of this field implies there are not known to
- * be fixes. Note that since the operation to calculate whether fixes apply
- * needs to be performant it is possible that complicated tests will be
- * skipped and a false negative returned. For this reason, this attribute
- * should be treated as a "hint". Despite the possibility of false negatives,
- * no false positives should be returned. If a client sees this flag set they
- * can proceed with the confidence that there are in fact associated fixes.
- */
- void set hasFix(bool value) {
- this._hasFix = value;
+ this._errors = value;
}
- AnalysisError(AnalysisErrorSeverity severity, AnalysisErrorType type,
- Location location, String message, String code,
- {String correction, bool hasFix}) {
- this.severity = severity;
- this.type = type;
- this.location = location;
- this.message = message;
- this.correction = correction;
- this.code = code;
- this.hasFix = hasFix;
+ AnalysisErrorsParams(String file, List<AnalysisError> errors) {
+ this.file = file;
+ this.errors = errors;
}
- factory AnalysisError.fromJson(
+ factory AnalysisErrorsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- AnalysisErrorSeverity severity;
- if (json.containsKey("severity")) {
- severity = new AnalysisErrorSeverity.fromJson(
- jsonDecoder, jsonPath + ".severity", json["severity"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "severity");
- }
- AnalysisErrorType type;
- if (json.containsKey("type")) {
- type = new AnalysisErrorType.fromJson(
- jsonDecoder, jsonPath + ".type", json["type"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "type");
- }
- Location location;
- if (json.containsKey("location")) {
- location = new Location.fromJson(
- jsonDecoder, jsonPath + ".location", json["location"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "location");
- }
- String message;
- if (json.containsKey("message")) {
- message =
- jsonDecoder.decodeString(jsonPath + ".message", json["message"]);
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "message");
- }
- String correction;
- if (json.containsKey("correction")) {
- correction = jsonDecoder.decodeString(
- jsonPath + ".correction", json["correction"]);
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- String code;
- if (json.containsKey("code")) {
- code = jsonDecoder.decodeString(jsonPath + ".code", json["code"]);
+ List<AnalysisError> errors;
+ if (json.containsKey("errors")) {
+ errors = jsonDecoder.decodeList(
+ jsonPath + ".errors",
+ json["errors"],
+ (String jsonPath, Object json) =>
+ new AnalysisError.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "code");
- }
- bool hasFix;
- if (json.containsKey("hasFix")) {
- hasFix = jsonDecoder.decodeBool(jsonPath + ".hasFix", json["hasFix"]);
+ throw jsonDecoder.mismatch(jsonPath, "errors");
}
- return new AnalysisError(severity, type, location, message, code,
- correction: correction, hasFix: hasFix);
+ return new AnalysisErrorsParams(file, errors);
} else {
- throw jsonDecoder.mismatch(jsonPath, "AnalysisError", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.errors params", json);
}
}
+ factory AnalysisErrorsParams.fromNotification(Notification notification) {
+ return new AnalysisErrorsParams.fromJson(
+ new ResponseDecoder(null), "params", notification.params);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["severity"] = severity.toJson();
- result["type"] = type.toJson();
- result["location"] = location.toJson();
- result["message"] = message;
- if (correction != null) {
- result["correction"] = correction;
- }
- result["code"] = code;
- if (hasFix != null) {
- result["hasFix"] = hasFix;
- }
+ result["file"] = file;
+ result["errors"] =
+ errors.map((AnalysisError value) => value.toJson()).toList();
return result;
}
+ Notification toNotification() {
+ return new Notification("analysis.errors", toJson());
+ }
+
@override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is AnalysisError) {
- return severity == other.severity &&
- type == other.type &&
- location == other.location &&
- message == other.message &&
- correction == other.correction &&
- code == other.code &&
- hasFix == other.hasFix;
+ if (other is AnalysisErrorsParams) {
+ return file == other.file &&
+ listEqual(errors, other.errors,
+ (AnalysisError a, AnalysisError b) => a == b);
}
return false;
}
@@ -336,116 +233,113 @@ class AnalysisError implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, severity.hashCode);
- hash = JenkinsSmiHash.combine(hash, type.hashCode);
- hash = JenkinsSmiHash.combine(hash, location.hashCode);
- hash = JenkinsSmiHash.combine(hash, message.hashCode);
- hash = JenkinsSmiHash.combine(hash, correction.hashCode);
- hash = JenkinsSmiHash.combine(hash, code.hashCode);
- hash = JenkinsSmiHash.combine(hash, hasFix.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, errors.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * AnalysisErrorFixes
+ * analysis.folding params
*
* {
- * "error": AnalysisError
- * "fixes": List<PrioritizedSourceChange>
+ * "file": FilePath
+ * "regions": List<FoldingRegion>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisErrorFixes implements HasToJson {
- AnalysisError _error;
+class AnalysisFoldingParams implements HasToJson {
+ String _file;
- List<PrioritizedSourceChange> _fixes;
+ List<FoldingRegion> _regions;
/**
- * The error with which the fixes are associated.
+ * The file containing the folding regions.
*/
- AnalysisError get error => _error;
+ String get file => _file;
/**
- * The error with which the fixes are associated.
+ * The file containing the folding regions.
*/
- void set error(AnalysisError value) {
+ void set file(String value) {
assert(value != null);
- this._error = value;
+ this._file = value;
}
/**
- * The fixes associated with the error.
+ * The folding regions contained in the file.
*/
- List<PrioritizedSourceChange> get fixes => _fixes;
+ List<FoldingRegion> get regions => _regions;
/**
- * The fixes associated with the error.
+ * The folding regions contained in the file.
*/
- void set fixes(List<PrioritizedSourceChange> value) {
+ void set regions(List<FoldingRegion> value) {
assert(value != null);
- this._fixes = value;
+ this._regions = value;
}
- AnalysisErrorFixes(AnalysisError error,
- {List<PrioritizedSourceChange> fixes}) {
- this.error = error;
- if (fixes == null) {
- this.fixes = <PrioritizedSourceChange>[];
- } else {
- this.fixes = fixes;
- }
+ AnalysisFoldingParams(String file, List<FoldingRegion> regions) {
+ this.file = file;
+ this.regions = regions;
}
- factory AnalysisErrorFixes.fromJson(
+ factory AnalysisFoldingParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- AnalysisError error;
- if (json.containsKey("error")) {
- error = new AnalysisError.fromJson(
- jsonDecoder, jsonPath + ".error", json["error"]);
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "error");
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- List<PrioritizedSourceChange> fixes;
- if (json.containsKey("fixes")) {
- fixes = jsonDecoder.decodeList(
- jsonPath + ".fixes",
- json["fixes"],
+ List<FoldingRegion> regions;
+ if (json.containsKey("regions")) {
+ regions = jsonDecoder.decodeList(
+ jsonPath + ".regions",
+ json["regions"],
(String jsonPath, Object json) =>
- new PrioritizedSourceChange.fromJson(
- jsonDecoder, jsonPath, json));
+ new FoldingRegion.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "fixes");
+ throw jsonDecoder.mismatch(jsonPath, "regions");
}
- return new AnalysisErrorFixes(error, fixes: fixes);
+ return new AnalysisFoldingParams(file, regions);
} else {
- throw jsonDecoder.mismatch(jsonPath, "AnalysisErrorFixes", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.folding params", json);
}
}
+ factory AnalysisFoldingParams.fromNotification(Notification notification) {
+ return new AnalysisFoldingParams.fromJson(
+ new ResponseDecoder(null), "params", notification.params);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["error"] = error.toJson();
- result["fixes"] =
- fixes.map((PrioritizedSourceChange value) => value.toJson()).toList();
+ result["file"] = file;
+ result["regions"] =
+ regions.map((FoldingRegion value) => value.toJson()).toList();
return result;
}
+ Notification toNotification() {
+ return new Notification("analysis.folding", toJson());
+ }
+
@override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is AnalysisErrorFixes) {
- return error == other.error &&
- listEqual(fixes, other.fixes,
- (PrioritizedSourceChange a, PrioritizedSourceChange b) => a == b);
+ if (other is AnalysisFoldingParams) {
+ return file == other.file &&
+ listEqual(regions, other.regions,
+ (FoldingRegion a, FoldingRegion b) => a == b);
}
return false;
}
@@ -453,193 +347,152 @@ class AnalysisErrorFixes implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, error.hashCode);
- hash = JenkinsSmiHash.combine(hash, fixes.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, regions.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * AnalysisErrorSeverity
+ * analysis.handleWatchEvents params
*
- * enum {
- * INFO
- * WARNING
- * ERROR
+ * {
+ * "events": List<WatchEvent>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisErrorSeverity implements Enum {
- static const AnalysisErrorSeverity INFO =
- const AnalysisErrorSeverity._("INFO");
-
- static const AnalysisErrorSeverity WARNING =
- const AnalysisErrorSeverity._("WARNING");
-
- static const AnalysisErrorSeverity ERROR =
- const AnalysisErrorSeverity._("ERROR");
+class AnalysisHandleWatchEventsParams implements RequestParams {
+ List<WatchEvent> _events;
/**
- * A list containing all of the enum values that are defined.
+ * The watch events that the plugin should handle.
*/
- static const List<AnalysisErrorSeverity> VALUES =
- const <AnalysisErrorSeverity>[INFO, WARNING, ERROR];
-
- @override
- final String name;
+ List<WatchEvent> get events => _events;
- const AnalysisErrorSeverity._(this.name);
+ /**
+ * The watch events that the plugin should handle.
+ */
+ void set events(List<WatchEvent> value) {
+ assert(value != null);
+ this._events = value;
+ }
- factory AnalysisErrorSeverity(String name) {
- switch (name) {
- case "INFO":
- return INFO;
- case "WARNING":
- return WARNING;
- case "ERROR":
- return ERROR;
- }
- throw new Exception('Illegal enum value: $name');
+ AnalysisHandleWatchEventsParams(List<WatchEvent> events) {
+ this.events = events;
}
- factory AnalysisErrorSeverity.fromJson(
+ factory AnalysisHandleWatchEventsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new AnalysisErrorSeverity(json);
- } catch (_) {
- // Fall through
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ List<WatchEvent> events;
+ if (json.containsKey("events")) {
+ events = jsonDecoder.decodeList(
+ jsonPath + ".events",
+ json["events"],
+ (String jsonPath, Object json) =>
+ new WatchEvent.fromJson(jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "events");
}
+ return new AnalysisHandleWatchEventsParams(events);
+ } else {
+ throw jsonDecoder.mismatch(
+ jsonPath, "analysis.handleWatchEvents params", json);
}
- throw jsonDecoder.mismatch(jsonPath, "AnalysisErrorSeverity", json);
+ }
+
+ factory AnalysisHandleWatchEventsParams.fromRequest(Request request) {
+ return new AnalysisHandleWatchEventsParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
}
@override
- String toString() => "AnalysisErrorSeverity.$name";
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["events"] =
+ events.map((WatchEvent value) => value.toJson()).toList();
+ return result;
+ }
- String toJson() => name;
+ @override
+ Request toRequest(String id) {
+ return new Request(id, "analysis.handleWatchEvents", toJson());
+ }
+
+ @override
+ String toString() => JSON.encode(toJson());
+
+ @override
+ bool operator ==(other) {
+ if (other is AnalysisHandleWatchEventsParams) {
+ return listEqual(
+ events, other.events, (WatchEvent a, WatchEvent b) => a == b);
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, events.hashCode);
+ return JenkinsSmiHash.finish(hash);
+ }
}
/**
- * AnalysisErrorType
- *
- * enum {
- * CHECKED_MODE_COMPILE_TIME_ERROR
- * COMPILE_TIME_ERROR
- * HINT
- * LINT
- * STATIC_TYPE_WARNING
- * STATIC_WARNING
- * SYNTACTIC_ERROR
- * TODO
- * }
+ * analysis.handleWatchEvents result
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisErrorType implements Enum {
- static const AnalysisErrorType CHECKED_MODE_COMPILE_TIME_ERROR =
- const AnalysisErrorType._("CHECKED_MODE_COMPILE_TIME_ERROR");
-
- static const AnalysisErrorType COMPILE_TIME_ERROR =
- const AnalysisErrorType._("COMPILE_TIME_ERROR");
-
- static const AnalysisErrorType HINT = const AnalysisErrorType._("HINT");
-
- static const AnalysisErrorType LINT = const AnalysisErrorType._("LINT");
-
- static const AnalysisErrorType STATIC_TYPE_WARNING =
- const AnalysisErrorType._("STATIC_TYPE_WARNING");
-
- static const AnalysisErrorType STATIC_WARNING =
- const AnalysisErrorType._("STATIC_WARNING");
-
- static const AnalysisErrorType SYNTACTIC_ERROR =
- const AnalysisErrorType._("SYNTACTIC_ERROR");
-
- static const AnalysisErrorType TODO = const AnalysisErrorType._("TODO");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<AnalysisErrorType> VALUES = const <AnalysisErrorType>[
- CHECKED_MODE_COMPILE_TIME_ERROR,
- COMPILE_TIME_ERROR,
- HINT,
- LINT,
- STATIC_TYPE_WARNING,
- STATIC_WARNING,
- SYNTACTIC_ERROR,
- TODO
- ];
-
+class AnalysisHandleWatchEventsResult implements ResponseResult {
@override
- final String name;
-
- const AnalysisErrorType._(this.name);
+ Map<String, dynamic> toJson() => <String, dynamic>{};
- factory AnalysisErrorType(String name) {
- switch (name) {
- case "CHECKED_MODE_COMPILE_TIME_ERROR":
- return CHECKED_MODE_COMPILE_TIME_ERROR;
- case "COMPILE_TIME_ERROR":
- return COMPILE_TIME_ERROR;
- case "HINT":
- return HINT;
- case "LINT":
- return LINT;
- case "STATIC_TYPE_WARNING":
- return STATIC_TYPE_WARNING;
- case "STATIC_WARNING":
- return STATIC_WARNING;
- case "SYNTACTIC_ERROR":
- return SYNTACTIC_ERROR;
- case "TODO":
- return TODO;
- }
- throw new Exception('Illegal enum value: $name');
+ @override
+ Response toResponse(String id) {
+ return new Response(id, result: null);
}
- factory AnalysisErrorType.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new AnalysisErrorType(json);
- } catch (_) {
- // Fall through
- }
+ @override
+ bool operator ==(other) {
+ if (other is AnalysisHandleWatchEventsResult) {
+ return true;
}
- throw jsonDecoder.mismatch(jsonPath, "AnalysisErrorType", json);
+ return false;
}
@override
- String toString() => "AnalysisErrorType.$name";
-
- String toJson() => name;
+ int get hashCode {
+ return 779767607;
+ }
}
/**
- * analysis.errors params
+ * analysis.highlights params
*
* {
* "file": FilePath
- * "errors": List<AnalysisError>
+ * "regions": List<HighlightRegion>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisErrorsParams implements HasToJson {
+class AnalysisHighlightsParams implements HasToJson {
String _file;
- List<AnalysisError> _errors;
+ List<HighlightRegion> _regions;
/**
- * The file containing the errors.
+ * The file containing the highlight regions.
*/
String get file => _file;
/**
- * The file containing the errors.
+ * The file containing the highlight regions.
*/
void set file(String value) {
assert(value != null);
@@ -647,24 +500,24 @@ class AnalysisErrorsParams implements HasToJson {
}
/**
- * The errors contained in the file.
+ * The highlight regions contained in the file.
*/
- List<AnalysisError> get errors => _errors;
+ List<HighlightRegion> get regions => _regions;
/**
- * The errors contained in the file.
+ * The highlight regions contained in the file.
*/
- void set errors(List<AnalysisError> value) {
+ void set regions(List<HighlightRegion> value) {
assert(value != null);
- this._errors = value;
+ this._regions = value;
}
- AnalysisErrorsParams(String file, List<AnalysisError> errors) {
+ AnalysisHighlightsParams(String file, List<HighlightRegion> regions) {
this.file = file;
- this.errors = errors;
+ this.regions = regions;
}
- factory AnalysisErrorsParams.fromJson(
+ factory AnalysisHighlightsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
@@ -676,24 +529,24 @@ class AnalysisErrorsParams implements HasToJson {
} else {
throw jsonDecoder.mismatch(jsonPath, "file");
}
- List<AnalysisError> errors;
- if (json.containsKey("errors")) {
- errors = jsonDecoder.decodeList(
- jsonPath + ".errors",
- json["errors"],
+ List<HighlightRegion> regions;
+ if (json.containsKey("regions")) {
+ regions = jsonDecoder.decodeList(
+ jsonPath + ".regions",
+ json["regions"],
(String jsonPath, Object json) =>
- new AnalysisError.fromJson(jsonDecoder, jsonPath, json));
+ new HighlightRegion.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "errors");
+ throw jsonDecoder.mismatch(jsonPath, "regions");
}
- return new AnalysisErrorsParams(file, errors);
+ return new AnalysisHighlightsParams(file, regions);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.errors params", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.highlights params", json);
}
}
- factory AnalysisErrorsParams.fromNotification(Notification notification) {
- return new AnalysisErrorsParams.fromJson(
+ factory AnalysisHighlightsParams.fromNotification(Notification notification) {
+ return new AnalysisHighlightsParams.fromJson(
new ResponseDecoder(null), "params", notification.params);
}
@@ -701,13 +554,13 @@ class AnalysisErrorsParams implements HasToJson {
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
result["file"] = file;
- result["errors"] =
- errors.map((AnalysisError value) => value.toJson()).toList();
+ result["regions"] =
+ regions.map((HighlightRegion value) => value.toJson()).toList();
return result;
}
Notification toNotification() {
- return new Notification("analysis.errors", toJson());
+ return new Notification("analysis.highlights", toJson());
}
@override
@@ -715,10 +568,10 @@ class AnalysisErrorsParams implements HasToJson {
@override
bool operator ==(other) {
- if (other is AnalysisErrorsParams) {
+ if (other is AnalysisHighlightsParams) {
return file == other.file &&
- listEqual(errors, other.errors,
- (AnalysisError a, AnalysisError b) => a == b);
+ listEqual(regions, other.regions,
+ (HighlightRegion a, HighlightRegion b) => a == b);
}
return false;
}
@@ -727,33 +580,39 @@ class AnalysisErrorsParams implements HasToJson {
int get hashCode {
int hash = 0;
hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, errors.hashCode);
+ hash = JenkinsSmiHash.combine(hash, regions.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.folding params
+ * analysis.navigation params
*
* {
* "file": FilePath
- * "regions": List<FoldingRegion>
+ * "regions": List<NavigationRegion>
+ * "targets": List<NavigationTarget>
+ * "files": List<FilePath>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisFoldingParams implements HasToJson {
+class AnalysisNavigationParams implements HasToJson {
String _file;
- List<FoldingRegion> _regions;
+ List<NavigationRegion> _regions;
+
+ List<NavigationTarget> _targets;
+
+ List<String> _files;
/**
- * The file containing the folding regions.
+ * The file containing the navigation regions.
*/
String get file => _file;
/**
- * The file containing the folding regions.
+ * The file containing the navigation regions.
*/
void set file(String value) {
assert(value != null);
@@ -761,24 +620,57 @@ class AnalysisFoldingParams implements HasToJson {
}
/**
- * The folding regions contained in the file.
+ * The navigation regions contained in the file.
*/
- List<FoldingRegion> get regions => _regions;
+ List<NavigationRegion> get regions => _regions;
/**
- * The folding regions contained in the file.
+ * The navigation regions contained in the file.
*/
- void set regions(List<FoldingRegion> value) {
+ void set regions(List<NavigationRegion> value) {
assert(value != null);
this._regions = value;
}
- AnalysisFoldingParams(String file, List<FoldingRegion> regions) {
- this.file = file;
- this.regions = regions;
- }
-
- factory AnalysisFoldingParams.fromJson(
+ /**
+ * The navigation targets referenced in the file. They are referenced by
+ * NavigationRegions by their index in this array.
+ */
+ List<NavigationTarget> get targets => _targets;
+
+ /**
+ * The navigation targets referenced in the file. They are referenced by
+ * NavigationRegions by their index in this array.
+ */
+ void set targets(List<NavigationTarget> value) {
+ assert(value != null);
+ this._targets = value;
+ }
+
+ /**
+ * The files containing navigation targets referenced in the file. They are
+ * referenced by NavigationTargets by their index in this array.
+ */
+ List<String> get files => _files;
+
+ /**
+ * The files containing navigation targets referenced in the file. They are
+ * referenced by NavigationTargets by their index in this array.
+ */
+ void set files(List<String> value) {
+ assert(value != null);
+ this._files = value;
+ }
+
+ AnalysisNavigationParams(String file, List<NavigationRegion> regions,
+ List<NavigationTarget> targets, List<String> files) {
+ this.file = file;
+ this.regions = regions;
+ this.targets = targets;
+ this.files = files;
+ }
+
+ factory AnalysisNavigationParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
@@ -790,24 +682,41 @@ class AnalysisFoldingParams implements HasToJson {
} else {
throw jsonDecoder.mismatch(jsonPath, "file");
}
- List<FoldingRegion> regions;
+ List<NavigationRegion> regions;
if (json.containsKey("regions")) {
regions = jsonDecoder.decodeList(
jsonPath + ".regions",
json["regions"],
(String jsonPath, Object json) =>
- new FoldingRegion.fromJson(jsonDecoder, jsonPath, json));
+ new NavigationRegion.fromJson(jsonDecoder, jsonPath, json));
} else {
throw jsonDecoder.mismatch(jsonPath, "regions");
}
- return new AnalysisFoldingParams(file, regions);
+ List<NavigationTarget> targets;
+ if (json.containsKey("targets")) {
+ targets = jsonDecoder.decodeList(
+ jsonPath + ".targets",
+ json["targets"],
+ (String jsonPath, Object json) =>
+ new NavigationTarget.fromJson(jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "targets");
+ }
+ List<String> files;
+ if (json.containsKey("files")) {
+ files = jsonDecoder.decodeList(
+ jsonPath + ".files", json["files"], jsonDecoder.decodeString);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "files");
+ }
+ return new AnalysisNavigationParams(file, regions, targets, files);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.folding params", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.navigation params", json);
}
}
- factory AnalysisFoldingParams.fromNotification(Notification notification) {
- return new AnalysisFoldingParams.fromJson(
+ factory AnalysisNavigationParams.fromNotification(Notification notification) {
+ return new AnalysisNavigationParams.fromJson(
new ResponseDecoder(null), "params", notification.params);
}
@@ -816,12 +725,15 @@ class AnalysisFoldingParams implements HasToJson {
Map<String, dynamic> result = {};
result["file"] = file;
result["regions"] =
- regions.map((FoldingRegion value) => value.toJson()).toList();
+ regions.map((NavigationRegion value) => value.toJson()).toList();
+ result["targets"] =
+ targets.map((NavigationTarget value) => value.toJson()).toList();
+ result["files"] = files;
return result;
}
Notification toNotification() {
- return new Notification("analysis.folding", toJson());
+ return new Notification("analysis.navigation", toJson());
}
@override
@@ -829,10 +741,13 @@ class AnalysisFoldingParams implements HasToJson {
@override
bool operator ==(other) {
- if (other is AnalysisFoldingParams) {
+ if (other is AnalysisNavigationParams) {
return file == other.file &&
listEqual(regions, other.regions,
- (FoldingRegion a, FoldingRegion b) => a == b);
+ (NavigationRegion a, NavigationRegion b) => a == b) &&
+ listEqual(targets, other.targets,
+ (NavigationTarget a, NavigationTarget b) => a == b) &&
+ listEqual(files, other.files, (String a, String b) => a == b);
}
return false;
}
@@ -842,78 +757,103 @@ class AnalysisFoldingParams implements HasToJson {
int hash = 0;
hash = JenkinsSmiHash.combine(hash, file.hashCode);
hash = JenkinsSmiHash.combine(hash, regions.hashCode);
+ hash = JenkinsSmiHash.combine(hash, targets.hashCode);
+ hash = JenkinsSmiHash.combine(hash, files.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.handleWatchEvents params
+ * analysis.occurrences params
*
* {
- * "events": List<WatchEvent>
+ * "file": FilePath
+ * "occurrences": List<Occurrences>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisHandleWatchEventsParams implements RequestParams {
- List<WatchEvent> _events;
+class AnalysisOccurrencesParams implements HasToJson {
+ String _file;
+
+ List<Occurrences> _occurrences;
/**
- * The watch events that the plugin should handle.
+ * The file in which the references occur.
*/
- List<WatchEvent> get events => _events;
+ String get file => _file;
/**
- * The watch events that the plugin should handle.
+ * The file in which the references occur.
*/
- void set events(List<WatchEvent> value) {
+ void set file(String value) {
assert(value != null);
- this._events = value;
+ this._file = value;
}
- AnalysisHandleWatchEventsParams(List<WatchEvent> events) {
- this.events = events;
+ /**
+ * The occurrences of references to elements within the file.
+ */
+ List<Occurrences> get occurrences => _occurrences;
+
+ /**
+ * The occurrences of references to elements within the file.
+ */
+ void set occurrences(List<Occurrences> value) {
+ assert(value != null);
+ this._occurrences = value;
}
- factory AnalysisHandleWatchEventsParams.fromJson(
+ AnalysisOccurrencesParams(String file, List<Occurrences> occurrences) {
+ this.file = file;
+ this.occurrences = occurrences;
+ }
+
+ factory AnalysisOccurrencesParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- List<WatchEvent> events;
- if (json.containsKey("events")) {
- events = jsonDecoder.decodeList(
- jsonPath + ".events",
- json["events"],
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "file");
+ }
+ List<Occurrences> occurrences;
+ if (json.containsKey("occurrences")) {
+ occurrences = jsonDecoder.decodeList(
+ jsonPath + ".occurrences",
+ json["occurrences"],
(String jsonPath, Object json) =>
- new WatchEvent.fromJson(jsonDecoder, jsonPath, json));
+ new Occurrences.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "events");
+ throw jsonDecoder.mismatch(jsonPath, "occurrences");
}
- return new AnalysisHandleWatchEventsParams(events);
+ return new AnalysisOccurrencesParams(file, occurrences);
} else {
- throw jsonDecoder.mismatch(
- jsonPath, "analysis.handleWatchEvents params", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.occurrences params", json);
}
}
- factory AnalysisHandleWatchEventsParams.fromRequest(Request request) {
- return new AnalysisHandleWatchEventsParams.fromJson(
- new RequestDecoder(request), "params", request.params);
+ factory AnalysisOccurrencesParams.fromNotification(
+ Notification notification) {
+ return new AnalysisOccurrencesParams.fromJson(
+ new ResponseDecoder(null), "params", notification.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["events"] =
- events.map((WatchEvent value) => value.toJson()).toList();
+ result["file"] = file;
+ result["occurrences"] =
+ occurrences.map((Occurrences value) => value.toJson()).toList();
return result;
}
- @override
- Request toRequest(String id) {
- return new Request(id, "analysis.handleWatchEvents", toJson());
+ Notification toNotification() {
+ return new Notification("analysis.occurrences", toJson());
}
@override
@@ -921,9 +861,10 @@ class AnalysisHandleWatchEventsParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisHandleWatchEventsParams) {
- return listEqual(
- events, other.events, (WatchEvent a, WatchEvent b) => a == b);
+ if (other is AnalysisOccurrencesParams) {
+ return file == other.file &&
+ listEqual(occurrences, other.occurrences,
+ (Occurrences a, Occurrences b) => a == b);
}
return false;
}
@@ -931,61 +872,34 @@ class AnalysisHandleWatchEventsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, events.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, occurrences.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.handleWatchEvents result
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class AnalysisHandleWatchEventsResult implements ResponseResult {
- @override
- Map<String, dynamic> toJson() => <String, dynamic>{};
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: null);
- }
-
- @override
- bool operator ==(other) {
- if (other is AnalysisHandleWatchEventsResult) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 779767607;
- }
-}
-
-/**
- * analysis.highlights params
+ * analysis.outline params
*
* {
* "file": FilePath
- * "regions": List<HighlightRegion>
+ * "outline": List<Outline>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisHighlightsParams implements HasToJson {
+class AnalysisOutlineParams implements HasToJson {
String _file;
- List<HighlightRegion> _regions;
+ List<Outline> _outline;
/**
- * The file containing the highlight regions.
+ * The file with which the outline is associated.
*/
String get file => _file;
/**
- * The file containing the highlight regions.
+ * The file with which the outline is associated.
*/
void set file(String value) {
assert(value != null);
@@ -993,24 +907,24 @@ class AnalysisHighlightsParams implements HasToJson {
}
/**
- * The highlight regions contained in the file.
+ * The outline fragments associated with the file.
*/
- List<HighlightRegion> get regions => _regions;
+ List<Outline> get outline => _outline;
/**
- * The highlight regions contained in the file.
+ * The outline fragments associated with the file.
*/
- void set regions(List<HighlightRegion> value) {
+ void set outline(List<Outline> value) {
assert(value != null);
- this._regions = value;
+ this._outline = value;
}
- AnalysisHighlightsParams(String file, List<HighlightRegion> regions) {
+ AnalysisOutlineParams(String file, List<Outline> outline) {
this.file = file;
- this.regions = regions;
+ this.outline = outline;
}
- factory AnalysisHighlightsParams.fromJson(
+ factory AnalysisOutlineParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
@@ -1022,24 +936,24 @@ class AnalysisHighlightsParams implements HasToJson {
} else {
throw jsonDecoder.mismatch(jsonPath, "file");
}
- List<HighlightRegion> regions;
- if (json.containsKey("regions")) {
- regions = jsonDecoder.decodeList(
- jsonPath + ".regions",
- json["regions"],
+ List<Outline> outline;
+ if (json.containsKey("outline")) {
+ outline = jsonDecoder.decodeList(
+ jsonPath + ".outline",
+ json["outline"],
(String jsonPath, Object json) =>
- new HighlightRegion.fromJson(jsonDecoder, jsonPath, json));
+ new Outline.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "regions");
+ throw jsonDecoder.mismatch(jsonPath, "outline");
}
- return new AnalysisHighlightsParams(file, regions);
+ return new AnalysisOutlineParams(file, outline);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.highlights params", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.outline params", json);
}
}
- factory AnalysisHighlightsParams.fromNotification(Notification notification) {
- return new AnalysisHighlightsParams.fromJson(
+ factory AnalysisOutlineParams.fromNotification(Notification notification) {
+ return new AnalysisOutlineParams.fromJson(
new ResponseDecoder(null), "params", notification.params);
}
@@ -1047,13 +961,12 @@ class AnalysisHighlightsParams implements HasToJson {
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
result["file"] = file;
- result["regions"] =
- regions.map((HighlightRegion value) => value.toJson()).toList();
+ result["outline"] = outline.map((Outline value) => value.toJson()).toList();
return result;
}
Notification toNotification() {
- return new Notification("analysis.highlights", toJson());
+ return new Notification("analysis.outline", toJson());
}
@override
@@ -1061,10 +974,9 @@ class AnalysisHighlightsParams implements HasToJson {
@override
bool operator ==(other) {
- if (other is AnalysisHighlightsParams) {
+ if (other is AnalysisOutlineParams) {
return file == other.file &&
- listEqual(regions, other.regions,
- (HighlightRegion a, HighlightRegion b) => a == b);
+ listEqual(outline, other.outline, (Outline a, Outline b) => a == b);
}
return false;
}
@@ -1073,160 +985,79 @@ class AnalysisHighlightsParams implements HasToJson {
int get hashCode {
int hash = 0;
hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, regions.hashCode);
+ hash = JenkinsSmiHash.combine(hash, outline.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.navigation params
+ * analysis.reanalyze params
*
* {
- * "file": FilePath
- * "regions": List<NavigationRegion>
- * "targets": List<NavigationTarget>
- * "files": List<FilePath>
+ * "roots": optional List<FilePath>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisNavigationParams implements HasToJson {
- String _file;
-
- List<NavigationRegion> _regions;
-
- List<NavigationTarget> _targets;
-
- List<String> _files;
-
- /**
- * The file containing the navigation regions.
- */
- String get file => _file;
-
- /**
- * The file containing the navigation regions.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
-
- /**
- * The navigation regions contained in the file.
- */
- List<NavigationRegion> get regions => _regions;
-
- /**
- * The navigation regions contained in the file.
- */
- void set regions(List<NavigationRegion> value) {
- assert(value != null);
- this._regions = value;
- }
-
- /**
- * The navigation targets referenced in the file. They are referenced by
- * NavigationRegions by their index in this array.
- */
- List<NavigationTarget> get targets => _targets;
-
- /**
- * The navigation targets referenced in the file. They are referenced by
- * NavigationRegions by their index in this array.
- */
- void set targets(List<NavigationTarget> value) {
- assert(value != null);
- this._targets = value;
- }
+class AnalysisReanalyzeParams implements RequestParams {
+ List<String> _roots;
/**
- * The files containing navigation targets referenced in the file. They are
- * referenced by NavigationTargets by their index in this array.
+ * A list of the context roots that are to be re-analyzed.
+ *
+ * If no context roots are provided, then all current context roots should be
+ * re-analyzed.
*/
- List<String> get files => _files;
+ List<String> get roots => _roots;
/**
- * The files containing navigation targets referenced in the file. They are
- * referenced by NavigationTargets by their index in this array.
+ * A list of the context roots that are to be re-analyzed.
+ *
+ * If no context roots are provided, then all current context roots should be
+ * re-analyzed.
*/
- void set files(List<String> value) {
- assert(value != null);
- this._files = value;
+ void set roots(List<String> value) {
+ this._roots = value;
}
- AnalysisNavigationParams(String file, List<NavigationRegion> regions,
- List<NavigationTarget> targets, List<String> files) {
- this.file = file;
- this.regions = regions;
- this.targets = targets;
- this.files = files;
+ AnalysisReanalyzeParams({List<String> roots}) {
+ this.roots = roots;
}
- factory AnalysisNavigationParams.fromJson(
+ factory AnalysisReanalyzeParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- List<NavigationRegion> regions;
- if (json.containsKey("regions")) {
- regions = jsonDecoder.decodeList(
- jsonPath + ".regions",
- json["regions"],
- (String jsonPath, Object json) =>
- new NavigationRegion.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "regions");
- }
- List<NavigationTarget> targets;
- if (json.containsKey("targets")) {
- targets = jsonDecoder.decodeList(
- jsonPath + ".targets",
- json["targets"],
- (String jsonPath, Object json) =>
- new NavigationTarget.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "targets");
- }
- List<String> files;
- if (json.containsKey("files")) {
- files = jsonDecoder.decodeList(
- jsonPath + ".files", json["files"], jsonDecoder.decodeString);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "files");
+ List<String> roots;
+ if (json.containsKey("roots")) {
+ roots = jsonDecoder.decodeList(
+ jsonPath + ".roots", json["roots"], jsonDecoder.decodeString);
}
- return new AnalysisNavigationParams(file, regions, targets, files);
+ return new AnalysisReanalyzeParams(roots: roots);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.navigation params", json);
+ throw jsonDecoder.mismatch(jsonPath, "analysis.reanalyze params", json);
}
}
- factory AnalysisNavigationParams.fromNotification(Notification notification) {
- return new AnalysisNavigationParams.fromJson(
- new ResponseDecoder(null), "params", notification.params);
+ factory AnalysisReanalyzeParams.fromRequest(Request request) {
+ return new AnalysisReanalyzeParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["file"] = file;
- result["regions"] =
- regions.map((NavigationRegion value) => value.toJson()).toList();
- result["targets"] =
- targets.map((NavigationTarget value) => value.toJson()).toList();
- result["files"] = files;
+ if (roots != null) {
+ result["roots"] = roots;
+ }
return result;
}
- Notification toNotification() {
- return new Notification("analysis.navigation", toJson());
+ @override
+ Request toRequest(String id) {
+ return new Request(id, "analysis.reanalyze", toJson());
}
@override
@@ -1234,13 +1065,8 @@ class AnalysisNavigationParams implements HasToJson {
@override
bool operator ==(other) {
- if (other is AnalysisNavigationParams) {
- return file == other.file &&
- listEqual(regions, other.regions,
- (NavigationRegion a, NavigationRegion b) => a == b) &&
- listEqual(targets, other.targets,
- (NavigationTarget a, NavigationTarget b) => a == b) &&
- listEqual(files, other.files, (String a, String b) => a == b);
+ if (other is AnalysisReanalyzeParams) {
+ return listEqual(roots, other.roots, (String a, String b) => a == b);
}
return false;
}
@@ -1248,218 +1074,180 @@ class AnalysisNavigationParams implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, regions.hashCode);
- hash = JenkinsSmiHash.combine(hash, targets.hashCode);
- hash = JenkinsSmiHash.combine(hash, files.hashCode);
+ hash = JenkinsSmiHash.combine(hash, roots.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.occurrences params
+ * analysis.reanalyze result
*
- * {
- * "file": FilePath
- * "occurrences": List<Occurrences>
+ * Clients may not extend, implement or mix-in this class.
+ */
+class AnalysisReanalyzeResult implements ResponseResult {
+ @override
+ Map<String, dynamic> toJson() => <String, dynamic>{};
+
+ @override
+ Response toResponse(String id) {
+ return new Response(id, result: null);
+ }
+
+ @override
+ bool operator ==(other) {
+ if (other is AnalysisReanalyzeResult) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 846803925;
+ }
+}
+
+/**
+ * AnalysisService
+ *
+ * enum {
+ * FOLDING
+ * HIGHLIGHTS
+ * NAVIGATION
+ * OCCURRENCES
+ * OUTLINE
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisOccurrencesParams implements HasToJson {
- String _file;
+class AnalysisService implements Enum {
+ static const AnalysisService FOLDING = const AnalysisService._("FOLDING");
- List<Occurrences> _occurrences;
+ static const AnalysisService HIGHLIGHTS =
+ const AnalysisService._("HIGHLIGHTS");
- /**
- * The file in which the references occur.
- */
- String get file => _file;
+ static const AnalysisService NAVIGATION =
+ const AnalysisService._("NAVIGATION");
- /**
- * The file in which the references occur.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
+ static const AnalysisService OCCURRENCES =
+ const AnalysisService._("OCCURRENCES");
- /**
- * The occurrences of references to elements within the file.
- */
- List<Occurrences> get occurrences => _occurrences;
+ static const AnalysisService OUTLINE = const AnalysisService._("OUTLINE");
/**
- * The occurrences of references to elements within the file.
+ * A list containing all of the enum values that are defined.
*/
- void set occurrences(List<Occurrences> value) {
- assert(value != null);
- this._occurrences = value;
- }
-
- AnalysisOccurrencesParams(String file, List<Occurrences> occurrences) {
- this.file = file;
- this.occurrences = occurrences;
- }
-
- factory AnalysisOccurrencesParams.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- List<Occurrences> occurrences;
- if (json.containsKey("occurrences")) {
- occurrences = jsonDecoder.decodeList(
- jsonPath + ".occurrences",
- json["occurrences"],
- (String jsonPath, Object json) =>
- new Occurrences.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "occurrences");
- }
- return new AnalysisOccurrencesParams(file, occurrences);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.occurrences params", json);
- }
- }
-
- factory AnalysisOccurrencesParams.fromNotification(
- Notification notification) {
- return new AnalysisOccurrencesParams.fromJson(
- new ResponseDecoder(null), "params", notification.params);
- }
+ static const List<AnalysisService> VALUES = const <AnalysisService>[
+ FOLDING,
+ HIGHLIGHTS,
+ NAVIGATION,
+ OCCURRENCES,
+ OUTLINE
+ ];
@override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["file"] = file;
- result["occurrences"] =
- occurrences.map((Occurrences value) => value.toJson()).toList();
- return result;
- }
+ final String name;
- Notification toNotification() {
- return new Notification("analysis.occurrences", toJson());
- }
+ const AnalysisService._(this.name);
- @override
- String toString() => JSON.encode(toJson());
+ factory AnalysisService(String name) {
+ switch (name) {
+ case "FOLDING":
+ return FOLDING;
+ case "HIGHLIGHTS":
+ return HIGHLIGHTS;
+ case "NAVIGATION":
+ return NAVIGATION;
+ case "OCCURRENCES":
+ return OCCURRENCES;
+ case "OUTLINE":
+ return OUTLINE;
+ }
+ throw new Exception('Illegal enum value: $name');
+ }
- @override
- bool operator ==(other) {
- if (other is AnalysisOccurrencesParams) {
- return file == other.file &&
- listEqual(occurrences, other.occurrences,
- (Occurrences a, Occurrences b) => a == b);
+ factory AnalysisService.fromJson(
+ JsonDecoder jsonDecoder, String jsonPath, Object json) {
+ if (json is String) {
+ try {
+ return new AnalysisService(json);
+ } catch (_) {
+ // Fall through
+ }
}
- return false;
+ throw jsonDecoder.mismatch(jsonPath, "AnalysisService", json);
}
@override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, occurrences.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
+ String toString() => "AnalysisService.$name";
+
+ String toJson() => name;
}
/**
- * analysis.outline params
+ * analysis.setContextBuilderOptions params
*
* {
- * "file": FilePath
- * "outline": List<Outline>
+ * "options": ContextBuilderOptions
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisOutlineParams implements HasToJson {
- String _file;
-
- List<Outline> _outline;
-
- /**
- * The file with which the outline is associated.
- */
- String get file => _file;
-
- /**
- * The file with which the outline is associated.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
+class AnalysisSetContextBuilderOptionsParams implements RequestParams {
+ ContextBuilderOptions _options;
/**
- * The outline fragments associated with the file.
+ * The options used to build the analysis contexts.
*/
- List<Outline> get outline => _outline;
+ ContextBuilderOptions get options => _options;
/**
- * The outline fragments associated with the file.
+ * The options used to build the analysis contexts.
*/
- void set outline(List<Outline> value) {
+ void set options(ContextBuilderOptions value) {
assert(value != null);
- this._outline = value;
+ this._options = value;
}
- AnalysisOutlineParams(String file, List<Outline> outline) {
- this.file = file;
- this.outline = outline;
+ AnalysisSetContextBuilderOptionsParams(ContextBuilderOptions options) {
+ this.options = options;
}
- factory AnalysisOutlineParams.fromJson(
+ factory AnalysisSetContextBuilderOptionsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- List<Outline> outline;
- if (json.containsKey("outline")) {
- outline = jsonDecoder.decodeList(
- jsonPath + ".outline",
- json["outline"],
- (String jsonPath, Object json) =>
- new Outline.fromJson(jsonDecoder, jsonPath, json));
+ ContextBuilderOptions options;
+ if (json.containsKey("options")) {
+ options = new ContextBuilderOptions.fromJson(
+ jsonDecoder, jsonPath + ".options", json["options"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "outline");
+ throw jsonDecoder.mismatch(jsonPath, "options");
}
- return new AnalysisOutlineParams(file, outline);
+ return new AnalysisSetContextBuilderOptionsParams(options);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.outline params", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "analysis.setContextBuilderOptions params", json);
}
}
- factory AnalysisOutlineParams.fromNotification(Notification notification) {
- return new AnalysisOutlineParams.fromJson(
- new ResponseDecoder(null), "params", notification.params);
+ factory AnalysisSetContextBuilderOptionsParams.fromRequest(Request request) {
+ return new AnalysisSetContextBuilderOptionsParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["file"] = file;
- result["outline"] = outline.map((Outline value) => value.toJson()).toList();
+ result["options"] = options.toJson();
return result;
}
- Notification toNotification() {
- return new Notification("analysis.outline", toJson());
+ @override
+ Request toRequest(String id) {
+ return new Request(id, "analysis.setContextBuilderOptions", toJson());
}
@override
@@ -1467,9 +1255,8 @@ class AnalysisOutlineParams implements HasToJson {
@override
bool operator ==(other) {
- if (other is AnalysisOutlineParams) {
- return file == other.file &&
- listEqual(outline, other.outline, (Outline a, Outline b) => a == b);
+ if (other is AnalysisSetContextBuilderOptionsParams) {
+ return options == other.options;
}
return false;
}
@@ -1477,80 +1264,106 @@ class AnalysisOutlineParams implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, outline.hashCode);
+ hash = JenkinsSmiHash.combine(hash, options.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.reanalyze params
+ * analysis.setContextBuilderOptions result
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class AnalysisSetContextBuilderOptionsResult implements ResponseResult {
+ @override
+ Map<String, dynamic> toJson() => <String, dynamic>{};
+
+ @override
+ Response toResponse(String id) {
+ return new Response(id, result: null);
+ }
+
+ @override
+ bool operator ==(other) {
+ if (other is AnalysisSetContextBuilderOptionsResult) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 645412314;
+ }
+}
+
+/**
+ * analysis.setContextRoots params
*
* {
- * "roots": optional List<FilePath>
+ * "roots": List<ContextRoot>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisReanalyzeParams implements RequestParams {
- List<String> _roots;
+class AnalysisSetContextRootsParams implements RequestParams {
+ List<ContextRoot> _roots;
/**
- * A list of the context roots that are to be re-analyzed.
- *
- * If no context roots are provided, then all current context roots should be
- * re-analyzed.
+ * A list of the context roots that should be analyzed.
*/
- List<String> get roots => _roots;
+ List<ContextRoot> get roots => _roots;
/**
- * A list of the context roots that are to be re-analyzed.
- *
- * If no context roots are provided, then all current context roots should be
- * re-analyzed.
+ * A list of the context roots that should be analyzed.
*/
- void set roots(List<String> value) {
+ void set roots(List<ContextRoot> value) {
+ assert(value != null);
this._roots = value;
}
- AnalysisReanalyzeParams({List<String> roots}) {
+ AnalysisSetContextRootsParams(List<ContextRoot> roots) {
this.roots = roots;
}
- factory AnalysisReanalyzeParams.fromJson(
+ factory AnalysisSetContextRootsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- List<String> roots;
+ List<ContextRoot> roots;
if (json.containsKey("roots")) {
roots = jsonDecoder.decodeList(
- jsonPath + ".roots", json["roots"], jsonDecoder.decodeString);
+ jsonPath + ".roots",
+ json["roots"],
+ (String jsonPath, Object json) =>
+ new ContextRoot.fromJson(jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "roots");
}
- return new AnalysisReanalyzeParams(roots: roots);
+ return new AnalysisSetContextRootsParams(roots);
} else {
- throw jsonDecoder.mismatch(jsonPath, "analysis.reanalyze params", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "analysis.setContextRoots params", json);
}
}
- factory AnalysisReanalyzeParams.fromRequest(Request request) {
- return new AnalysisReanalyzeParams.fromJson(
+ factory AnalysisSetContextRootsParams.fromRequest(Request request) {
+ return new AnalysisSetContextRootsParams.fromJson(
new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- if (roots != null) {
- result["roots"] = roots;
- }
+ result["roots"] = roots.map((ContextRoot value) => value.toJson()).toList();
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "analysis.reanalyze", toJson());
+ return new Request(id, "analysis.setContextRoots", toJson());
}
@override
@@ -1558,8 +1371,9 @@ class AnalysisReanalyzeParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisReanalyzeParams) {
- return listEqual(roots, other.roots, (String a, String b) => a == b);
+ if (other is AnalysisSetContextRootsParams) {
+ return listEqual(
+ roots, other.roots, (ContextRoot a, ContextRoot b) => a == b);
}
return false;
}
@@ -1573,11 +1387,11 @@ class AnalysisReanalyzeParams implements RequestParams {
}
/**
- * analysis.reanalyze result
+ * analysis.setContextRoots result
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisReanalyzeResult implements ResponseResult {
+class AnalysisSetContextRootsResult implements ResponseResult {
@override
Map<String, dynamic> toJson() => <String, dynamic>{};
@@ -1588,7 +1402,7 @@ class AnalysisReanalyzeResult implements ResponseResult {
@override
bool operator ==(other) {
- if (other is AnalysisReanalyzeResult) {
+ if (other is AnalysisSetContextRootsResult) {
return true;
}
return false;
@@ -1596,151 +1410,74 @@ class AnalysisReanalyzeResult implements ResponseResult {
@override
int get hashCode {
- return 846803925;
- }
-}
-
-/**
- * AnalysisService
- *
- * enum {
- * FOLDING
- * HIGHLIGHTS
- * NAVIGATION
- * OCCURRENCES
- * OUTLINE
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class AnalysisService implements Enum {
- static const AnalysisService FOLDING = const AnalysisService._("FOLDING");
-
- static const AnalysisService HIGHLIGHTS =
- const AnalysisService._("HIGHLIGHTS");
-
- static const AnalysisService NAVIGATION =
- const AnalysisService._("NAVIGATION");
-
- static const AnalysisService OCCURRENCES =
- const AnalysisService._("OCCURRENCES");
-
- static const AnalysisService OUTLINE = const AnalysisService._("OUTLINE");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<AnalysisService> VALUES = const <AnalysisService>[
- FOLDING,
- HIGHLIGHTS,
- NAVIGATION,
- OCCURRENCES,
- OUTLINE
- ];
-
- @override
- final String name;
-
- const AnalysisService._(this.name);
-
- factory AnalysisService(String name) {
- switch (name) {
- case "FOLDING":
- return FOLDING;
- case "HIGHLIGHTS":
- return HIGHLIGHTS;
- case "NAVIGATION":
- return NAVIGATION;
- case "OCCURRENCES":
- return OCCURRENCES;
- case "OUTLINE":
- return OUTLINE;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory AnalysisService.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new AnalysisService(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "AnalysisService", json);
+ return 969645618;
}
-
- @override
- String toString() => "AnalysisService.$name";
-
- String toJson() => name;
}
/**
- * analysis.setContextBuilderOptions params
+ * analysis.setPriorityFiles params
*
* {
- * "options": ContextBuilderOptions
+ * "files": List<FilePath>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetContextBuilderOptionsParams implements RequestParams {
- ContextBuilderOptions _options;
+class AnalysisSetPriorityFilesParams implements RequestParams {
+ List<String> _files;
/**
- * The options used to build the analysis contexts.
+ * The files that are to be a priority for analysis.
*/
- ContextBuilderOptions get options => _options;
+ List<String> get files => _files;
/**
- * The options used to build the analysis contexts.
+ * The files that are to be a priority for analysis.
*/
- void set options(ContextBuilderOptions value) {
+ void set files(List<String> value) {
assert(value != null);
- this._options = value;
+ this._files = value;
}
- AnalysisSetContextBuilderOptionsParams(ContextBuilderOptions options) {
- this.options = options;
+ AnalysisSetPriorityFilesParams(List<String> files) {
+ this.files = files;
}
- factory AnalysisSetContextBuilderOptionsParams.fromJson(
+ factory AnalysisSetPriorityFilesParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- ContextBuilderOptions options;
- if (json.containsKey("options")) {
- options = new ContextBuilderOptions.fromJson(
- jsonDecoder, jsonPath + ".options", json["options"]);
+ List<String> files;
+ if (json.containsKey("files")) {
+ files = jsonDecoder.decodeList(
+ jsonPath + ".files", json["files"], jsonDecoder.decodeString);
} else {
- throw jsonDecoder.mismatch(jsonPath, "options");
+ throw jsonDecoder.mismatch(jsonPath, "files");
}
- return new AnalysisSetContextBuilderOptionsParams(options);
+ return new AnalysisSetPriorityFilesParams(files);
} else {
throw jsonDecoder.mismatch(
- jsonPath, "analysis.setContextBuilderOptions params", json);
+ jsonPath, "analysis.setPriorityFiles params", json);
}
}
- factory AnalysisSetContextBuilderOptionsParams.fromRequest(Request request) {
- return new AnalysisSetContextBuilderOptionsParams.fromJson(
+ factory AnalysisSetPriorityFilesParams.fromRequest(Request request) {
+ return new AnalysisSetPriorityFilesParams.fromJson(
new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["options"] = options.toJson();
+ result["files"] = files;
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "analysis.setContextBuilderOptions", toJson());
+ return new Request(id, "analysis.setPriorityFiles", toJson());
}
@override
@@ -1748,8 +1485,8 @@ class AnalysisSetContextBuilderOptionsParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisSetContextBuilderOptionsParams) {
- return options == other.options;
+ if (other is AnalysisSetPriorityFilesParams) {
+ return listEqual(files, other.files, (String a, String b) => a == b);
}
return false;
}
@@ -1757,17 +1494,17 @@ class AnalysisSetContextBuilderOptionsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, options.hashCode);
+ hash = JenkinsSmiHash.combine(hash, files.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.setContextBuilderOptions result
+ * analysis.setPriorityFiles result
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetContextBuilderOptionsResult implements ResponseResult {
+class AnalysisSetPriorityFilesResult implements ResponseResult {
@override
Map<String, dynamic> toJson() => <String, dynamic>{};
@@ -1778,7 +1515,7 @@ class AnalysisSetContextBuilderOptionsResult implements ResponseResult {
@override
bool operator ==(other) {
- if (other is AnalysisSetContextBuilderOptionsResult) {
+ if (other is AnalysisSetPriorityFilesResult) {
return true;
}
return false;
@@ -1786,77 +1523,82 @@ class AnalysisSetContextBuilderOptionsResult implements ResponseResult {
@override
int get hashCode {
- return 645412314;
+ return 330050055;
}
}
/**
- * analysis.setContextRoots params
+ * analysis.setSubscriptions params
*
* {
- * "roots": List<ContextRoot>
+ * "subscriptions": Map<AnalysisService, List<FilePath>>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetContextRootsParams implements RequestParams {
- List<ContextRoot> _roots;
+class AnalysisSetSubscriptionsParams implements RequestParams {
+ Map<AnalysisService, List<String>> _subscriptions;
/**
- * A list of the context roots that should be analyzed.
+ * A table mapping services to a list of the files being subscribed to the
+ * service.
*/
- List<ContextRoot> get roots => _roots;
+ Map<AnalysisService, List<String>> get subscriptions => _subscriptions;
/**
- * A list of the context roots that should be analyzed.
+ * A table mapping services to a list of the files being subscribed to the
+ * service.
*/
- void set roots(List<ContextRoot> value) {
+ void set subscriptions(Map<AnalysisService, List<String>> value) {
assert(value != null);
- this._roots = value;
+ this._subscriptions = value;
}
- AnalysisSetContextRootsParams(List<ContextRoot> roots) {
- this.roots = roots;
+ AnalysisSetSubscriptionsParams(
+ Map<AnalysisService, List<String>> subscriptions) {
+ this.subscriptions = subscriptions;
}
- factory AnalysisSetContextRootsParams.fromJson(
+ factory AnalysisSetSubscriptionsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- List<ContextRoot> roots;
- if (json.containsKey("roots")) {
- roots = jsonDecoder.decodeList(
- jsonPath + ".roots",
- json["roots"],
- (String jsonPath, Object json) =>
- new ContextRoot.fromJson(jsonDecoder, jsonPath, json));
+ Map<AnalysisService, List<String>> subscriptions;
+ if (json.containsKey("subscriptions")) {
+ subscriptions = jsonDecoder.decodeMap(
+ jsonPath + ".subscriptions", json["subscriptions"],
+ keyDecoder: (String jsonPath, Object json) =>
+ new AnalysisService.fromJson(jsonDecoder, jsonPath, json),
+ valueDecoder: (String jsonPath, Object json) => jsonDecoder
+ .decodeList(jsonPath, json, jsonDecoder.decodeString));
} else {
- throw jsonDecoder.mismatch(jsonPath, "roots");
+ throw jsonDecoder.mismatch(jsonPath, "subscriptions");
}
- return new AnalysisSetContextRootsParams(roots);
+ return new AnalysisSetSubscriptionsParams(subscriptions);
} else {
throw jsonDecoder.mismatch(
- jsonPath, "analysis.setContextRoots params", json);
+ jsonPath, "analysis.setSubscriptions params", json);
}
}
- factory AnalysisSetContextRootsParams.fromRequest(Request request) {
- return new AnalysisSetContextRootsParams.fromJson(
+ factory AnalysisSetSubscriptionsParams.fromRequest(Request request) {
+ return new AnalysisSetSubscriptionsParams.fromJson(
new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["roots"] = roots.map((ContextRoot value) => value.toJson()).toList();
+ result["subscriptions"] = mapMap(subscriptions,
+ keyCallback: (AnalysisService value) => value.toJson());
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "analysis.setContextRoots", toJson());
+ return new Request(id, "analysis.setSubscriptions", toJson());
}
@override
@@ -1864,9 +1606,12 @@ class AnalysisSetContextRootsParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisSetContextRootsParams) {
- return listEqual(
- roots, other.roots, (ContextRoot a, ContextRoot b) => a == b);
+ if (other is AnalysisSetSubscriptionsParams) {
+ return mapEqual(
+ subscriptions,
+ other.subscriptions,
+ (List<String> a, List<String> b) =>
+ listEqual(a, b, (String a, String b) => a == b));
}
return false;
}
@@ -1874,17 +1619,17 @@ class AnalysisSetContextRootsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, roots.hashCode);
+ hash = JenkinsSmiHash.combine(hash, subscriptions.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.setContextRoots result
+ * analysis.setSubscriptions result
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetContextRootsResult implements ResponseResult {
+class AnalysisSetSubscriptionsResult implements ResponseResult {
@override
Map<String, dynamic> toJson() => <String, dynamic>{};
@@ -1895,7 +1640,7 @@ class AnalysisSetContextRootsResult implements ResponseResult {
@override
bool operator ==(other) {
- if (other is AnalysisSetContextRootsResult) {
+ if (other is AnalysisSetSubscriptionsResult) {
return true;
}
return false;
@@ -1903,74 +1648,88 @@ class AnalysisSetContextRootsResult implements ResponseResult {
@override
int get hashCode {
- return 969645618;
+ return 218088493;
}
}
/**
- * analysis.setPriorityFiles params
+ * analysis.updateContent params
*
* {
- * "files": List<FilePath>
+ * "files": Map<FilePath, AddContentOverlay | ChangeContentOverlay | RemoveContentOverlay>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetPriorityFilesParams implements RequestParams {
- List<String> _files;
+class AnalysisUpdateContentParams implements RequestParams {
+ Map<String, dynamic> _files;
/**
- * The files that are to be a priority for analysis.
+ * A table mapping the files whose content has changed to a description of
+ * the content change.
*/
- List<String> get files => _files;
+ Map<String, dynamic> get files => _files;
/**
- * The files that are to be a priority for analysis.
+ * A table mapping the files whose content has changed to a description of
+ * the content change.
*/
- void set files(List<String> value) {
+ void set files(Map<String, dynamic> value) {
assert(value != null);
this._files = value;
}
- AnalysisSetPriorityFilesParams(List<String> files) {
+ AnalysisUpdateContentParams(Map<String, dynamic> files) {
this.files = files;
}
- factory AnalysisSetPriorityFilesParams.fromJson(
+ factory AnalysisUpdateContentParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- List<String> files;
+ Map<String, dynamic> files;
if (json.containsKey("files")) {
- files = jsonDecoder.decodeList(
- jsonPath + ".files", json["files"], jsonDecoder.decodeString);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "files");
- }
- return new AnalysisSetPriorityFilesParams(files);
- } else {
+ files = jsonDecoder.decodeMap(jsonPath + ".files", json["files"],
+ valueDecoder: (String jsonPath, Object json) =>
+ jsonDecoder.decodeUnion(jsonPath, json, "type", {
+ "add": (String jsonPath, Object json) =>
+ new AddContentOverlay.fromJson(
+ jsonDecoder, jsonPath, json),
+ "change": (String jsonPath, Object json) =>
+ new ChangeContentOverlay.fromJson(
+ jsonDecoder, jsonPath, json),
+ "remove": (String jsonPath, Object json) =>
+ new RemoveContentOverlay.fromJson(
+ jsonDecoder, jsonPath, json)
+ }));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "files");
+ }
+ return new AnalysisUpdateContentParams(files);
+ } else {
throw jsonDecoder.mismatch(
- jsonPath, "analysis.setPriorityFiles params", json);
+ jsonPath, "analysis.updateContent params", json);
}
}
- factory AnalysisSetPriorityFilesParams.fromRequest(Request request) {
- return new AnalysisSetPriorityFilesParams.fromJson(
+ factory AnalysisUpdateContentParams.fromRequest(Request request) {
+ return new AnalysisUpdateContentParams.fromJson(
new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["files"] = files;
+ result["files"] =
+ mapMap(files, valueCallback: (dynamic value) => value.toJson());
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "analysis.setPriorityFiles", toJson());
+ return new Request(id, "analysis.updateContent", toJson());
}
@override
@@ -1978,8 +1737,8 @@ class AnalysisSetPriorityFilesParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisSetPriorityFilesParams) {
- return listEqual(files, other.files, (String a, String b) => a == b);
+ if (other is AnalysisUpdateContentParams) {
+ return mapEqual(files, other.files, (dynamic a, dynamic b) => a == b);
}
return false;
}
@@ -1993,11 +1752,11 @@ class AnalysisSetPriorityFilesParams implements RequestParams {
}
/**
- * analysis.setPriorityFiles result
+ * analysis.updateContent result
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetPriorityFilesResult implements ResponseResult {
+class AnalysisUpdateContentResult implements ResponseResult {
@override
Map<String, dynamic> toJson() => <String, dynamic>{};
@@ -2008,7 +1767,7 @@ class AnalysisSetPriorityFilesResult implements ResponseResult {
@override
bool operator ==(other) {
- if (other is AnalysisSetPriorityFilesResult) {
+ if (other is AnalysisUpdateContentResult) {
return true;
}
return false;
@@ -2016,82 +1775,97 @@ class AnalysisSetPriorityFilesResult implements ResponseResult {
@override
int get hashCode {
- return 330050055;
+ return 468798730;
}
}
/**
- * analysis.setSubscriptions params
+ * completion.getSuggestions params
*
* {
- * "subscriptions": Map<AnalysisService, List<FilePath>>
+ * "file": FilePath
+ * "offset": int
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetSubscriptionsParams implements RequestParams {
- Map<AnalysisService, List<String>> _subscriptions;
+class CompletionGetSuggestionsParams implements RequestParams {
+ String _file;
+
+ int _offset;
/**
- * A table mapping services to a list of the files being subscribed to the
- * service.
+ * The file containing the point at which suggestions are to be made.
*/
- Map<AnalysisService, List<String>> get subscriptions => _subscriptions;
+ String get file => _file;
/**
- * A table mapping services to a list of the files being subscribed to the
- * service.
+ * The file containing the point at which suggestions are to be made.
*/
- void set subscriptions(Map<AnalysisService, List<String>> value) {
+ void set file(String value) {
assert(value != null);
- this._subscriptions = value;
+ this._file = value;
}
- AnalysisSetSubscriptionsParams(
- Map<AnalysisService, List<String>> subscriptions) {
- this.subscriptions = subscriptions;
+ /**
+ * The offset within the file at which suggestions are to be made.
+ */
+ int get offset => _offset;
+
+ /**
+ * The offset within the file at which suggestions are to be made.
+ */
+ void set offset(int value) {
+ assert(value != null);
+ this._offset = value;
}
- factory AnalysisSetSubscriptionsParams.fromJson(
+ CompletionGetSuggestionsParams(String file, int offset) {
+ this.file = file;
+ this.offset = offset;
+ }
+
+ factory CompletionGetSuggestionsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- Map<AnalysisService, List<String>> subscriptions;
- if (json.containsKey("subscriptions")) {
- subscriptions = jsonDecoder.decodeMap(
- jsonPath + ".subscriptions", json["subscriptions"],
- keyDecoder: (String jsonPath, Object json) =>
- new AnalysisService.fromJson(jsonDecoder, jsonPath, json),
- valueDecoder: (String jsonPath, Object json) => jsonDecoder
- .decodeList(jsonPath, json, jsonDecoder.decodeString));
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "subscriptions");
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- return new AnalysisSetSubscriptionsParams(subscriptions);
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "offset");
+ }
+ return new CompletionGetSuggestionsParams(file, offset);
} else {
throw jsonDecoder.mismatch(
- jsonPath, "analysis.setSubscriptions params", json);
+ jsonPath, "completion.getSuggestions params", json);
}
}
- factory AnalysisSetSubscriptionsParams.fromRequest(Request request) {
- return new AnalysisSetSubscriptionsParams.fromJson(
+ factory CompletionGetSuggestionsParams.fromRequest(Request request) {
+ return new CompletionGetSuggestionsParams.fromJson(
new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["subscriptions"] = mapMap(subscriptions,
- keyCallback: (AnalysisService value) => value.toJson());
+ result["file"] = file;
+ result["offset"] = offset;
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "analysis.setSubscriptions", toJson());
+ return new Request(id, "completion.getSuggestions", toJson());
}
@override
@@ -2099,12 +1873,8 @@ class AnalysisSetSubscriptionsParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisSetSubscriptionsParams) {
- return mapEqual(
- subscriptions,
- other.subscriptions,
- (List<String> a, List<String> b) =>
- listEqual(a, b, (String a, String b) => a == b));
+ if (other is CompletionGetSuggestionsParams) {
+ return file == other.file && offset == other.offset;
}
return false;
}
@@ -2112,117 +1882,152 @@ class AnalysisSetSubscriptionsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, subscriptions.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.setSubscriptions result
+ * completion.getSuggestions result
+ *
+ * {
+ * "replacementOffset": int
+ * "replacementLength": int
+ * "results": List<CompletionSuggestion>
+ * }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisSetSubscriptionsResult implements ResponseResult {
- @override
- Map<String, dynamic> toJson() => <String, dynamic>{};
+class CompletionGetSuggestionsResult implements ResponseResult {
+ int _replacementOffset;
- @override
- Response toResponse(String id) {
- return new Response(id, result: null);
- }
+ int _replacementLength;
- @override
- bool operator ==(other) {
- if (other is AnalysisSetSubscriptionsResult) {
- return true;
- }
- return false;
- }
+ List<CompletionSuggestion> _results;
- @override
- int get hashCode {
- return 218088493;
+ /**
+ * The offset of the start of the text to be replaced. This will be different
+ * than the offset used to request the completion suggestions if there was a
+ * portion of an identifier before the original offset. In particular, the
+ * replacementOffset will be the offset of the beginning of said identifier.
+ */
+ int get replacementOffset => _replacementOffset;
+
+ /**
+ * The offset of the start of the text to be replaced. This will be different
+ * than the offset used to request the completion suggestions if there was a
+ * portion of an identifier before the original offset. In particular, the
+ * replacementOffset will be the offset of the beginning of said identifier.
+ */
+ void set replacementOffset(int value) {
+ assert(value != null);
+ this._replacementOffset = value;
}
-}
-/**
- * analysis.updateContent params
- *
- * {
- * "files": Map<FilePath, AddContentOverlay | ChangeContentOverlay | RemoveContentOverlay>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class AnalysisUpdateContentParams implements RequestParams {
- Map<String, dynamic> _files;
+ /**
+ * The length of the text to be replaced if the remainder of the identifier
+ * containing the cursor is to be replaced when the suggestion is applied
+ * (that is, the number of characters in the existing identifier).
+ */
+ int get replacementLength => _replacementLength;
/**
- * A table mapping the files whose content has changed to a description of
- * the content change.
+ * The length of the text to be replaced if the remainder of the identifier
+ * containing the cursor is to be replaced when the suggestion is applied
+ * (that is, the number of characters in the existing identifier).
*/
- Map<String, dynamic> get files => _files;
+ void set replacementLength(int value) {
+ assert(value != null);
+ this._replacementLength = value;
+ }
/**
- * A table mapping the files whose content has changed to a description of
- * the content change.
+ * The completion suggestions being reported. The notification contains all
+ * possible completions at the requested cursor position, even those that do
+ * not match the characters the user has already typed. This allows the
+ * client to respond to further keystrokes from the user without having to
+ * make additional requests.
*/
- void set files(Map<String, dynamic> value) {
+ List<CompletionSuggestion> get results => _results;
+
+ /**
+ * The completion suggestions being reported. The notification contains all
+ * possible completions at the requested cursor position, even those that do
+ * not match the characters the user has already typed. This allows the
+ * client to respond to further keystrokes from the user without having to
+ * make additional requests.
+ */
+ void set results(List<CompletionSuggestion> value) {
assert(value != null);
- this._files = value;
+ this._results = value;
}
- AnalysisUpdateContentParams(Map<String, dynamic> files) {
- this.files = files;
+ CompletionGetSuggestionsResult(int replacementOffset, int replacementLength,
+ List<CompletionSuggestion> results) {
+ this.replacementOffset = replacementOffset;
+ this.replacementLength = replacementLength;
+ this.results = results;
}
- factory AnalysisUpdateContentParams.fromJson(
+ factory CompletionGetSuggestionsResult.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- Map<String, dynamic> files;
- if (json.containsKey("files")) {
- files = jsonDecoder.decodeMap(jsonPath + ".files", json["files"],
- valueDecoder: (String jsonPath, Object json) =>
- jsonDecoder.decodeUnion(jsonPath, json, "type", {
- "add": (String jsonPath, Object json) =>
- new AddContentOverlay.fromJson(
- jsonDecoder, jsonPath, json),
- "change": (String jsonPath, Object json) =>
- new ChangeContentOverlay.fromJson(
- jsonDecoder, jsonPath, json),
- "remove": (String jsonPath, Object json) =>
- new RemoveContentOverlay.fromJson(
- jsonDecoder, jsonPath, json)
- }));
+ int replacementOffset;
+ if (json.containsKey("replacementOffset")) {
+ replacementOffset = jsonDecoder.decodeInt(
+ jsonPath + ".replacementOffset", json["replacementOffset"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "files");
+ throw jsonDecoder.mismatch(jsonPath, "replacementOffset");
}
- return new AnalysisUpdateContentParams(files);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "analysis.updateContent params", json);
+ int replacementLength;
+ if (json.containsKey("replacementLength")) {
+ replacementLength = jsonDecoder.decodeInt(
+ jsonPath + ".replacementLength", json["replacementLength"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "replacementLength");
+ }
+ List<CompletionSuggestion> results;
+ if (json.containsKey("results")) {
+ results = jsonDecoder.decodeList(
+ jsonPath + ".results",
+ json["results"],
+ (String jsonPath, Object json) =>
+ new CompletionSuggestion.fromJson(jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "results");
+ }
+ return new CompletionGetSuggestionsResult(
+ replacementOffset, replacementLength, results);
+ } else {
+ throw jsonDecoder.mismatch(
+ jsonPath, "completion.getSuggestions result", json);
}
}
- factory AnalysisUpdateContentParams.fromRequest(Request request) {
- return new AnalysisUpdateContentParams.fromJson(
- new RequestDecoder(request), "params", request.params);
+ factory CompletionGetSuggestionsResult.fromResponse(Response response) {
+ return new CompletionGetSuggestionsResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["files"] =
- mapMap(files, valueCallback: (dynamic value) => value.toJson());
+ result["replacementOffset"] = replacementOffset;
+ result["replacementLength"] = replacementLength;
+ result["results"] =
+ results.map((CompletionSuggestion value) => value.toJson()).toList();
return result;
}
@override
- Request toRequest(String id) {
- return new Request(id, "analysis.updateContent", toJson());
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
}
@override
@@ -2230,8 +2035,11 @@ class AnalysisUpdateContentParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is AnalysisUpdateContentParams) {
- return mapEqual(files, other.files, (dynamic a, dynamic b) => a == b);
+ if (other is CompletionGetSuggestionsResult) {
+ return replacementOffset == other.replacementOffset &&
+ replacementLength == other.replacementLength &&
+ listEqual(results, other.results,
+ (CompletionSuggestion a, CompletionSuggestion b) => a == b);
}
return false;
}
@@ -2239,99 +2047,199 @@ class AnalysisUpdateContentParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, files.hashCode);
+ hash = JenkinsSmiHash.combine(hash, replacementOffset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, replacementLength.hashCode);
+ hash = JenkinsSmiHash.combine(hash, results.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * analysis.updateContent result
+ * ContextBuilderOptions
+ *
+ * {
+ * "dartSdkSummaryPath": optional String
+ * "defaultAnalysisOptionsFilePath": optional List<String>
+ * "declaredVariables": optional Map<String, String>
+ * "defaultPackageFilePath": optional List<String>
+ * "defaultPackagesDirectoryPath": optional List<String>
+ * }
*
* Clients may not extend, implement or mix-in this class.
*/
-class AnalysisUpdateContentResult implements ResponseResult {
- @override
- Map<String, dynamic> toJson() => <String, dynamic>{};
+class ContextBuilderOptions implements HasToJson {
+ String _dartSdkSummaryPath;
- @override
- Response toResponse(String id) {
- return new Response(id, result: null);
+ List<String> _defaultAnalysisOptionsFilePath;
+
+ Map<String, String> _declaredVariables;
+
+ List<String> _defaultPackageFilePath;
+
+ List<String> _defaultPackagesDirectoryPath;
+
+ /**
+ * The file path of the file containing the summary of the SDK that should be
+ * used to "analyze" the SDK. The field will be omitted if the summary should
+ * be found in the SDK.
+ */
+ String get dartSdkSummaryPath => _dartSdkSummaryPath;
+
+ /**
+ * The file path of the file containing the summary of the SDK that should be
+ * used to "analyze" the SDK. The field will be omitted if the summary should
+ * be found in the SDK.
+ */
+ void set dartSdkSummaryPath(String value) {
+ this._dartSdkSummaryPath = value;
}
- @override
- bool operator ==(other) {
- if (other is AnalysisUpdateContentResult) {
- return true;
- }
- return false;
+ /**
+ * The file path of the analysis options file that should be used in place of
+ * any file in the root directory or a parent of the root directory. The
+ * field will be omitted if the normal lookup mechanism should be used.
+ */
+ List<String> get defaultAnalysisOptionsFilePath =>
+ _defaultAnalysisOptionsFilePath;
+
+ /**
+ * The file path of the analysis options file that should be used in place of
+ * any file in the root directory or a parent of the root directory. The
+ * field will be omitted if the normal lookup mechanism should be used.
+ */
+ void set defaultAnalysisOptionsFilePath(List<String> value) {
+ this._defaultAnalysisOptionsFilePath = value;
}
- @override
- int get hashCode {
- return 468798730;
+ /**
+ * A table mapping variable names to values for the declared variables. The
+ * field will be omitted if no additional variables need to be declared.
+ */
+ Map<String, String> get declaredVariables => _declaredVariables;
+
+ /**
+ * A table mapping variable names to values for the declared variables. The
+ * field will be omitted if no additional variables need to be declared.
+ */
+ void set declaredVariables(Map<String, String> value) {
+ this._declaredVariables = value;
}
-}
-/**
- * ChangeContentOverlay
- *
- * {
- * "type": "change"
- * "edits": List<SourceEdit>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ChangeContentOverlay implements HasToJson {
- List<SourceEdit> _edits;
+ /**
+ * The file path of the .packages file that should be used in place of any
+ * file found using the normal (Package Specification DEP) lookup mechanism.
+ * The field will be omitted if the normal lookup mechanism should be used.
+ */
+ List<String> get defaultPackageFilePath => _defaultPackageFilePath;
/**
- * The edits to be applied to the file.
+ * The file path of the .packages file that should be used in place of any
+ * file found using the normal (Package Specification DEP) lookup mechanism.
+ * The field will be omitted if the normal lookup mechanism should be used.
*/
- List<SourceEdit> get edits => _edits;
+ void set defaultPackageFilePath(List<String> value) {
+ this._defaultPackageFilePath = value;
+ }
/**
- * The edits to be applied to the file.
+ * The file path of the packages directory that should be used in place of
+ * any file found using the normal (Package Specification DEP) lookup
+ * mechanism. The field will be omitted if the normal lookup mechanism should
+ * be used.
*/
- void set edits(List<SourceEdit> value) {
- assert(value != null);
- this._edits = value;
+ List<String> get defaultPackagesDirectoryPath =>
+ _defaultPackagesDirectoryPath;
+
+ /**
+ * The file path of the packages directory that should be used in place of
+ * any file found using the normal (Package Specification DEP) lookup
+ * mechanism. The field will be omitted if the normal lookup mechanism should
+ * be used.
+ */
+ void set defaultPackagesDirectoryPath(List<String> value) {
+ this._defaultPackagesDirectoryPath = value;
}
- ChangeContentOverlay(List<SourceEdit> edits) {
- this.edits = edits;
+ ContextBuilderOptions(
+ {String dartSdkSummaryPath,
+ List<String> defaultAnalysisOptionsFilePath,
+ Map<String, String> declaredVariables,
+ List<String> defaultPackageFilePath,
+ List<String> defaultPackagesDirectoryPath}) {
+ this.dartSdkSummaryPath = dartSdkSummaryPath;
+ this.defaultAnalysisOptionsFilePath = defaultAnalysisOptionsFilePath;
+ this.declaredVariables = declaredVariables;
+ this.defaultPackageFilePath = defaultPackageFilePath;
+ this.defaultPackagesDirectoryPath = defaultPackagesDirectoryPath;
}
- factory ChangeContentOverlay.fromJson(
+ factory ContextBuilderOptions.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- if (json["type"] != "change") {
- throw jsonDecoder.mismatch(jsonPath, "equal " + "change", json);
+ String dartSdkSummaryPath;
+ if (json.containsKey("dartSdkSummaryPath")) {
+ dartSdkSummaryPath = jsonDecoder.decodeString(
+ jsonPath + ".dartSdkSummaryPath", json["dartSdkSummaryPath"]);
}
- List<SourceEdit> edits;
- if (json.containsKey("edits")) {
- edits = jsonDecoder.decodeList(
- jsonPath + ".edits",
- json["edits"],
- (String jsonPath, Object json) =>
- new SourceEdit.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edits");
+ List<String> defaultAnalysisOptionsFilePath;
+ if (json.containsKey("defaultAnalysisOptionsFilePath")) {
+ defaultAnalysisOptionsFilePath = jsonDecoder.decodeList(
+ jsonPath + ".defaultAnalysisOptionsFilePath",
+ json["defaultAnalysisOptionsFilePath"],
+ jsonDecoder.decodeString);
+ }
+ Map<String, String> declaredVariables;
+ if (json.containsKey("declaredVariables")) {
+ declaredVariables = jsonDecoder.decodeMap(
+ jsonPath + ".declaredVariables", json["declaredVariables"],
+ valueDecoder: jsonDecoder.decodeString);
+ }
+ List<String> defaultPackageFilePath;
+ if (json.containsKey("defaultPackageFilePath")) {
+ defaultPackageFilePath = jsonDecoder.decodeList(
+ jsonPath + ".defaultPackageFilePath",
+ json["defaultPackageFilePath"],
+ jsonDecoder.decodeString);
+ }
+ List<String> defaultPackagesDirectoryPath;
+ if (json.containsKey("defaultPackagesDirectoryPath")) {
+ defaultPackagesDirectoryPath = jsonDecoder.decodeList(
+ jsonPath + ".defaultPackagesDirectoryPath",
+ json["defaultPackagesDirectoryPath"],
+ jsonDecoder.decodeString);
}
- return new ChangeContentOverlay(edits);
+ return new ContextBuilderOptions(
+ dartSdkSummaryPath: dartSdkSummaryPath,
+ defaultAnalysisOptionsFilePath: defaultAnalysisOptionsFilePath,
+ declaredVariables: declaredVariables,
+ defaultPackageFilePath: defaultPackageFilePath,
+ defaultPackagesDirectoryPath: defaultPackagesDirectoryPath);
} else {
- throw jsonDecoder.mismatch(jsonPath, "ChangeContentOverlay", json);
+ throw jsonDecoder.mismatch(jsonPath, "ContextBuilderOptions", json);
}
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["type"] = "change";
- result["edits"] = edits.map((SourceEdit value) => value.toJson()).toList();
+ if (dartSdkSummaryPath != null) {
+ result["dartSdkSummaryPath"] = dartSdkSummaryPath;
+ }
+ if (defaultAnalysisOptionsFilePath != null) {
+ result["defaultAnalysisOptionsFilePath"] = defaultAnalysisOptionsFilePath;
+ }
+ if (declaredVariables != null) {
+ result["declaredVariables"] = declaredVariables;
+ }
+ if (defaultPackageFilePath != null) {
+ result["defaultPackageFilePath"] = defaultPackageFilePath;
+ }
+ if (defaultPackagesDirectoryPath != null) {
+ result["defaultPackagesDirectoryPath"] = defaultPackagesDirectoryPath;
+ }
return result;
}
@@ -2340,9 +2248,20 @@ class ChangeContentOverlay implements HasToJson {
@override
bool operator ==(other) {
- if (other is ChangeContentOverlay) {
- return listEqual(
- edits, other.edits, (SourceEdit a, SourceEdit b) => a == b);
+ if (other is ContextBuilderOptions) {
+ return dartSdkSummaryPath == other.dartSdkSummaryPath &&
+ listEqual(
+ defaultAnalysisOptionsFilePath,
+ other.defaultAnalysisOptionsFilePath,
+ (String a, String b) => a == b) &&
+ mapEqual(declaredVariables, other.declaredVariables,
+ (String a, String b) => a == b) &&
+ listEqual(defaultPackageFilePath, other.defaultPackageFilePath,
+ (String a, String b) => a == b) &&
+ listEqual(
+ defaultPackagesDirectoryPath,
+ other.defaultPackagesDirectoryPath,
+ (String a, String b) => a == b);
}
return false;
}
@@ -2350,108 +2269,107 @@ class ChangeContentOverlay implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, 873118866);
- hash = JenkinsSmiHash.combine(hash, edits.hashCode);
+ hash = JenkinsSmiHash.combine(hash, dartSdkSummaryPath.hashCode);
+ hash =
+ JenkinsSmiHash.combine(hash, defaultAnalysisOptionsFilePath.hashCode);
+ hash = JenkinsSmiHash.combine(hash, declaredVariables.hashCode);
+ hash = JenkinsSmiHash.combine(hash, defaultPackageFilePath.hashCode);
+ hash = JenkinsSmiHash.combine(hash, defaultPackagesDirectoryPath.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * completion.getSuggestions params
+ * ContextRoot
*
* {
- * "file": FilePath
- * "offset": int
- * }
+ * "root": String
+ * "exclude": List<String>
+ * }
*
* Clients may not extend, implement or mix-in this class.
*/
-class CompletionGetSuggestionsParams implements RequestParams {
- String _file;
+class ContextRoot implements HasToJson {
+ String _root;
- int _offset;
+ List<String> _exclude;
/**
- * The file containing the point at which suggestions are to be made.
+ * The absolute path of the root directory containing the files to be
+ * analyzed.
*/
- String get file => _file;
+ String get root => _root;
/**
- * The file containing the point at which suggestions are to be made.
+ * The absolute path of the root directory containing the files to be
+ * analyzed.
*/
- void set file(String value) {
+ void set root(String value) {
assert(value != null);
- this._file = value;
+ this._root = value;
}
/**
- * The offset within the file at which suggestions are to be made.
+ * A list of the absolute paths of files and directories within the root
+ * directory that should not be analyzed.
*/
- int get offset => _offset;
+ List<String> get exclude => _exclude;
/**
- * The offset within the file at which suggestions are to be made.
+ * A list of the absolute paths of files and directories within the root
+ * directory that should not be analyzed.
*/
- void set offset(int value) {
+ void set exclude(List<String> value) {
assert(value != null);
- this._offset = value;
+ this._exclude = value;
}
- CompletionGetSuggestionsParams(String file, int offset) {
- this.file = file;
- this.offset = offset;
+ ContextRoot(String root, List<String> exclude) {
+ this.root = root;
+ this.exclude = exclude;
}
- factory CompletionGetSuggestionsParams.fromJson(
+ factory ContextRoot.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
+ String root;
+ if (json.containsKey("root")) {
+ root = jsonDecoder.decodeString(jsonPath + ".root", json["root"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "file");
+ throw jsonDecoder.mismatch(jsonPath, "root");
}
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ List<String> exclude;
+ if (json.containsKey("exclude")) {
+ exclude = jsonDecoder.decodeList(
+ jsonPath + ".exclude", json["exclude"], jsonDecoder.decodeString);
} else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
+ throw jsonDecoder.mismatch(jsonPath, "exclude");
}
- return new CompletionGetSuggestionsParams(file, offset);
+ return new ContextRoot(root, exclude);
} else {
- throw jsonDecoder.mismatch(
- jsonPath, "completion.getSuggestions params", json);
+ throw jsonDecoder.mismatch(jsonPath, "ContextRoot", json);
}
}
- factory CompletionGetSuggestionsParams.fromRequest(Request request) {
- return new CompletionGetSuggestionsParams.fromJson(
- new RequestDecoder(request), "params", request.params);
- }
-
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["file"] = file;
- result["offset"] = offset;
+ result["root"] = root;
+ result["exclude"] = exclude;
return result;
}
@override
- Request toRequest(String id) {
- return new Request(id, "completion.getSuggestions", toJson());
- }
-
- @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is CompletionGetSuggestionsParams) {
- return file == other.file && offset == other.offset;
+ if (other is ContextRoot) {
+ return root == other.root &&
+ listEqual(exclude, other.exclude, (String a, String b) => a == b);
}
return false;
}
@@ -2459,152 +2377,206 @@ class CompletionGetSuggestionsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, root.hashCode);
+ hash = JenkinsSmiHash.combine(hash, exclude.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * completion.getSuggestions result
+ * convertGetterToMethod feedback
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class ConvertGetterToMethodFeedback extends RefactoringFeedback
+ implements HasToJson {
+ @override
+ bool operator ==(other) {
+ if (other is ConvertGetterToMethodFeedback) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 616032599;
+ }
+}
+
+/**
+ * convertGetterToMethod options
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class ConvertGetterToMethodOptions extends RefactoringOptions
+ implements HasToJson {
+ @override
+ bool operator ==(other) {
+ if (other is ConvertGetterToMethodOptions) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 488848400;
+ }
+}
+
+/**
+ * convertMethodToGetter feedback
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class ConvertMethodToGetterFeedback extends RefactoringFeedback
+ implements HasToJson {
+ @override
+ bool operator ==(other) {
+ if (other is ConvertMethodToGetterFeedback) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 165291526;
+ }
+}
+
+/**
+ * convertMethodToGetter options
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class ConvertMethodToGetterOptions extends RefactoringOptions
+ implements HasToJson {
+ @override
+ bool operator ==(other) {
+ if (other is ConvertMethodToGetterOptions) {
+ return true;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 27952290;
+ }
+}
+
+/**
+ * edit.getAssists params
*
* {
- * "replacementOffset": int
- * "replacementLength": int
- * "results": List<CompletionSuggestion>
+ * "file": FilePath
+ * "offset": int
+ * "length": int
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class CompletionGetSuggestionsResult implements ResponseResult {
- int _replacementOffset;
+class EditGetAssistsParams implements RequestParams {
+ String _file;
- int _replacementLength;
+ int _offset;
- List<CompletionSuggestion> _results;
+ int _length;
/**
- * The offset of the start of the text to be replaced. This will be different
- * than the offset used to request the completion suggestions if there was a
- * portion of an identifier before the original offset. In particular, the
- * replacementOffset will be the offset of the beginning of said identifier.
+ * The file containing the code for which assists are being requested.
*/
- int get replacementOffset => _replacementOffset;
+ String get file => _file;
/**
- * The offset of the start of the text to be replaced. This will be different
- * than the offset used to request the completion suggestions if there was a
- * portion of an identifier before the original offset. In particular, the
- * replacementOffset will be the offset of the beginning of said identifier.
+ * The file containing the code for which assists are being requested.
*/
- void set replacementOffset(int value) {
+ void set file(String value) {
assert(value != null);
- this._replacementOffset = value;
+ this._file = value;
}
/**
- * The length of the text to be replaced if the remainder of the identifier
- * containing the cursor is to be replaced when the suggestion is applied
- * (that is, the number of characters in the existing identifier).
+ * The offset of the code for which assists are being requested.
*/
- int get replacementLength => _replacementLength;
+ int get offset => _offset;
/**
- * The length of the text to be replaced if the remainder of the identifier
- * containing the cursor is to be replaced when the suggestion is applied
- * (that is, the number of characters in the existing identifier).
+ * The offset of the code for which assists are being requested.
*/
- void set replacementLength(int value) {
+ void set offset(int value) {
assert(value != null);
- this._replacementLength = value;
+ this._offset = value;
}
/**
- * The completion suggestions being reported. The notification contains all
- * possible completions at the requested cursor position, even those that do
- * not match the characters the user has already typed. This allows the
- * client to respond to further keystrokes from the user without having to
- * make additional requests.
+ * The length of the code for which assists are being requested.
*/
- List<CompletionSuggestion> get results => _results;
+ int get length => _length;
/**
- * The completion suggestions being reported. The notification contains all
- * possible completions at the requested cursor position, even those that do
- * not match the characters the user has already typed. This allows the
- * client to respond to further keystrokes from the user without having to
- * make additional requests.
+ * The length of the code for which assists are being requested.
*/
- void set results(List<CompletionSuggestion> value) {
+ void set length(int value) {
assert(value != null);
- this._results = value;
+ this._length = value;
}
- CompletionGetSuggestionsResult(int replacementOffset, int replacementLength,
- List<CompletionSuggestion> results) {
- this.replacementOffset = replacementOffset;
- this.replacementLength = replacementLength;
- this.results = results;
+ EditGetAssistsParams(String file, int offset, int length) {
+ this.file = file;
+ this.offset = offset;
+ this.length = length;
}
- factory CompletionGetSuggestionsResult.fromJson(
+ factory EditGetAssistsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- int replacementOffset;
- if (json.containsKey("replacementOffset")) {
- replacementOffset = jsonDecoder.decodeInt(
- jsonPath + ".replacementOffset", json["replacementOffset"]);
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "replacementOffset");
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- int replacementLength;
- if (json.containsKey("replacementLength")) {
- replacementLength = jsonDecoder.decodeInt(
- jsonPath + ".replacementLength", json["replacementLength"]);
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "replacementLength");
+ throw jsonDecoder.mismatch(jsonPath, "offset");
}
- List<CompletionSuggestion> results;
- if (json.containsKey("results")) {
- results = jsonDecoder.decodeList(
- jsonPath + ".results",
- json["results"],
- (String jsonPath, Object json) =>
- new CompletionSuggestion.fromJson(jsonDecoder, jsonPath, json));
+ int length;
+ if (json.containsKey("length")) {
+ length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "results");
+ throw jsonDecoder.mismatch(jsonPath, "length");
}
- return new CompletionGetSuggestionsResult(
- replacementOffset, replacementLength, results);
+ return new EditGetAssistsParams(file, offset, length);
} else {
- throw jsonDecoder.mismatch(
- jsonPath, "completion.getSuggestions result", json);
+ throw jsonDecoder.mismatch(jsonPath, "edit.getAssists params", json);
}
}
- factory CompletionGetSuggestionsResult.fromResponse(Response response) {
- return new CompletionGetSuggestionsResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
+ factory EditGetAssistsParams.fromRequest(Request request) {
+ return new EditGetAssistsParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["replacementOffset"] = replacementOffset;
- result["replacementLength"] = replacementLength;
- result["results"] =
- results.map((CompletionSuggestion value) => value.toJson()).toList();
+ result["file"] = file;
+ result["offset"] = offset;
+ result["length"] = length;
return result;
}
@override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
+ Request toRequest(String id) {
+ return new Request(id, "edit.getAssists", toJson());
}
@override
@@ -2612,11 +2584,10 @@ class CompletionGetSuggestionsResult implements ResponseResult {
@override
bool operator ==(other) {
- if (other is CompletionGetSuggestionsResult) {
- return replacementOffset == other.replacementOffset &&
- replacementLength == other.replacementLength &&
- listEqual(results, other.results,
- (CompletionSuggestion a, CompletionSuggestion b) => a == b);
+ if (other is EditGetAssistsParams) {
+ return file == other.file &&
+ offset == other.offset &&
+ length == other.length;
}
return false;
}
@@ -2624,678 +2595,227 @@ class CompletionGetSuggestionsResult implements ResponseResult {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, replacementOffset.hashCode);
- hash = JenkinsSmiHash.combine(hash, replacementLength.hashCode);
- hash = JenkinsSmiHash.combine(hash, results.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, length.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * CompletionSuggestion
+ * edit.getAssists result
*
* {
- * "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
+ * "assists": List<PrioritizedSourceChange>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class CompletionSuggestion implements HasToJson {
- CompletionSuggestionKind _kind;
-
- int _relevance;
-
- String _completion;
-
- int _selectionOffset;
-
- int _selectionLength;
-
- bool _isDeprecated;
-
- bool _isPotential;
-
- String _docSummary;
-
- String _docComplete;
-
- String _declaringType;
-
- String _defaultArgumentListString;
-
- List<int> _defaultArgumentListTextRanges;
-
- Element _element;
-
- String _returnType;
-
- List<String> _parameterNames;
-
- List<String> _parameterTypes;
-
- int _requiredParameterCount;
-
- bool _hasNamedParameters;
-
- String _parameterName;
-
- String _parameterType;
-
- String _importUri;
-
- /**
- * The kind of element being suggested.
- */
- CompletionSuggestionKind get kind => _kind;
-
- /**
- * The kind of element being suggested.
- */
- void set kind(CompletionSuggestionKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- /**
- * The relevance of this completion suggestion where a higher number
- * indicates a higher relevance.
- */
- int get relevance => _relevance;
-
- /**
- * The relevance of this completion suggestion where a higher number
- * indicates a higher relevance.
- */
- void set relevance(int value) {
- assert(value != null);
- this._relevance = value;
- }
+class EditGetAssistsResult implements ResponseResult {
+ List<PrioritizedSourceChange> _assists;
/**
- * The identifier to be inserted if the suggestion is selected. If the
- * suggestion is for a method or function, the client might want to
- * additionally insert a template for the parameters. The information
- * required in order to do so is contained in other fields.
+ * The assists that are available at the given location.
*/
- String get completion => _completion;
+ List<PrioritizedSourceChange> get assists => _assists;
/**
- * The identifier to be inserted if the suggestion is selected. If the
- * suggestion is for a method or function, the client might want to
- * additionally insert a template for the parameters. The information
- * required in order to do so is contained in other fields.
+ * The assists that are available at the given location.
*/
- void set completion(String value) {
+ void set assists(List<PrioritizedSourceChange> value) {
assert(value != null);
- this._completion = value;
+ this._assists = value;
}
- /**
- * The offset, relative to the beginning of the completion, of where the
- * selection should be placed after insertion.
- */
- int get selectionOffset => _selectionOffset;
-
- /**
- * The offset, relative to the beginning of the completion, of where the
- * selection should be placed after insertion.
- */
- void set selectionOffset(int value) {
- assert(value != null);
- this._selectionOffset = value;
+ EditGetAssistsResult(List<PrioritizedSourceChange> assists) {
+ this.assists = assists;
}
- /**
- * The number of characters that should be selected after insertion.
- */
- int get selectionLength => _selectionLength;
-
- /**
- * The number of characters that should be selected after insertion.
- */
- void set selectionLength(int value) {
- assert(value != null);
- this._selectionLength = value;
+ factory EditGetAssistsResult.fromJson(
+ JsonDecoder jsonDecoder, String jsonPath, Object json) {
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ List<PrioritizedSourceChange> assists;
+ if (json.containsKey("assists")) {
+ assists = jsonDecoder.decodeList(
+ jsonPath + ".assists",
+ json["assists"],
+ (String jsonPath, Object json) =>
+ new PrioritizedSourceChange.fromJson(
+ jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "assists");
+ }
+ return new EditGetAssistsResult(assists);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "edit.getAssists result", json);
+ }
}
- /**
- * True if the suggested element is deprecated.
- */
- bool get isDeprecated => _isDeprecated;
-
- /**
- * True if the suggested element is deprecated.
- */
- void set isDeprecated(bool value) {
- assert(value != null);
- this._isDeprecated = value;
+ factory EditGetAssistsResult.fromResponse(Response response) {
+ return new EditGetAssistsResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
}
- /**
- * True if the element is not known to be valid for the target. This happens
- * if the type of the target is dynamic.
- */
- bool get isPotential => _isPotential;
-
- /**
- * True if the element is not known to be valid for the target. This happens
- * if the type of the target is dynamic.
- */
- void set isPotential(bool value) {
- assert(value != null);
- this._isPotential = value;
+ @override
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["assists"] =
+ assists.map((PrioritizedSourceChange value) => value.toJson()).toList();
+ return result;
}
- /**
- * An abbreviated version of the Dartdoc associated with the element being
- * suggested, This field is omitted if there is no Dartdoc associated with
- * the element.
- */
- String get docSummary => _docSummary;
-
- /**
- * An abbreviated version of the Dartdoc associated with the element being
- * suggested, This field is omitted if there is no Dartdoc associated with
- * the element.
- */
- void set docSummary(String value) {
- this._docSummary = value;
+ @override
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
}
- /**
- * The Dartdoc associated with the element being suggested. This field is
- * omitted if there is no Dartdoc associated with the element.
- */
- String get docComplete => _docComplete;
+ @override
+ String toString() => JSON.encode(toJson());
- /**
- * The Dartdoc associated with the element being suggested. This field is
- * omitted if there is no Dartdoc associated with the element.
- */
- void set docComplete(String value) {
- this._docComplete = value;
+ @override
+ bool operator ==(other) {
+ if (other is EditGetAssistsResult) {
+ return listEqual(assists, other.assists,
+ (PrioritizedSourceChange a, PrioritizedSourceChange b) => a == b);
+ }
+ return false;
}
- /**
- * The class that declares the element being suggested. This field is omitted
- * if the suggested element is not a member of a class.
- */
- String get declaringType => _declaringType;
-
- /**
- * The class that declares the element being suggested. This field is omitted
- * if the suggested element is not a member of a class.
- */
- void set declaringType(String value) {
- this._declaringType = value;
+ @override
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, assists.hashCode);
+ return JenkinsSmiHash.finish(hash);
}
+}
- /**
- * A default String for use in generating argument list source contents on
- * the client side.
- */
- String get defaultArgumentListString => _defaultArgumentListString;
-
- /**
- * A default String for use in generating argument list source contents on
- * the client side.
- */
- void set defaultArgumentListString(String value) {
- this._defaultArgumentListString = value;
- }
+/**
+ * edit.getAvailableRefactorings params
+ *
+ * {
+ * "file": FilePath
+ * "offset": int
+ * "length": int
+ * }
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class EditGetAvailableRefactoringsParams implements RequestParams {
+ String _file;
- /**
- * Pairs of offsets and lengths describing 'defaultArgumentListString' text
- * ranges suitable for use by clients to set up linked edits of default
- * argument source contents. For example, given an argument list string 'x,
- * y', the corresponding text range [0, 1, 3, 1], indicates two text ranges
- * of length 1, starting at offsets 0 and 3. Clients can use these ranges to
- * treat the 'x' and 'y' values specially for linked edits.
- */
- List<int> get defaultArgumentListTextRanges => _defaultArgumentListTextRanges;
+ int _offset;
- /**
- * Pairs of offsets and lengths describing 'defaultArgumentListString' text
- * ranges suitable for use by clients to set up linked edits of default
- * argument source contents. For example, given an argument list string 'x,
- * y', the corresponding text range [0, 1, 3, 1], indicates two text ranges
- * of length 1, starting at offsets 0 and 3. Clients can use these ranges to
- * treat the 'x' and 'y' values specially for linked edits.
- */
- void set defaultArgumentListTextRanges(List<int> value) {
- this._defaultArgumentListTextRanges = value;
- }
+ int _length;
/**
- * Information about the element reference being suggested.
+ * The file containing the code on which the refactoring would be based.
*/
- Element get element => _element;
+ String get file => _file;
/**
- * Information about the element reference being suggested.
+ * The file containing the code on which the refactoring would be based.
*/
- void set element(Element value) {
- this._element = value;
+ void set file(String value) {
+ assert(value != null);
+ this._file = value;
}
/**
- * The return type of the getter, function or method or the type of the field
- * being suggested. This field is omitted if the suggested element is not a
- * getter, function or method.
+ * The offset of the code on which the refactoring would be based.
*/
- String get returnType => _returnType;
+ int get offset => _offset;
/**
- * The return type of the getter, function or method or the type of the field
- * being suggested. This field is omitted if the suggested element is not a
- * getter, function or method.
+ * The offset of the code on which the refactoring would be based.
*/
- void set returnType(String value) {
- this._returnType = value;
+ void set offset(int value) {
+ assert(value != null);
+ this._offset = value;
}
/**
- * The names of the parameters of the function or method being suggested.
- * This field is omitted if the suggested element is not a setter, function
- * or method.
+ * The length of the code on which the refactoring would be based.
*/
- List<String> get parameterNames => _parameterNames;
+ int get length => _length;
/**
- * The names of the parameters of the function or method being suggested.
- * This field is omitted if the suggested element is not a setter, function
- * or method.
+ * The length of the code on which the refactoring would be based.
*/
- void set parameterNames(List<String> value) {
- this._parameterNames = value;
+ void set length(int value) {
+ assert(value != null);
+ this._length = value;
}
- /**
- * The types of the parameters of the function or method being suggested.
- * This field is omitted if the parameterNames field is omitted.
- */
- List<String> get parameterTypes => _parameterTypes;
-
- /**
- * The types of the parameters of the function or method being suggested.
- * This field is omitted if the parameterNames field is omitted.
- */
- void set parameterTypes(List<String> value) {
- this._parameterTypes = value;
+ EditGetAvailableRefactoringsParams(String file, int offset, int length) {
+ this.file = file;
+ this.offset = offset;
+ this.length = length;
}
- /**
- * The number of required parameters for the function or method being
- * suggested. This field is omitted if the parameterNames field is omitted.
- */
- int get requiredParameterCount => _requiredParameterCount;
-
- /**
- * The number of required parameters for the function or method being
- * suggested. This field is omitted if the parameterNames field is omitted.
- */
- void set requiredParameterCount(int value) {
- this._requiredParameterCount = value;
- }
-
- /**
- * True if the function or method being suggested has at least one named
- * parameter. This field is omitted if the parameterNames field is omitted.
- */
- bool get hasNamedParameters => _hasNamedParameters;
-
- /**
- * True if the function or method being suggested has at least one named
- * parameter. This field is omitted if the parameterNames field is omitted.
- */
- void set hasNamedParameters(bool value) {
- this._hasNamedParameters = value;
- }
-
- /**
- * The name of the optional parameter being suggested. This field is omitted
- * if the suggestion is not the addition of an optional argument within an
- * argument list.
- */
- String get parameterName => _parameterName;
-
- /**
- * The name of the optional parameter being suggested. This field is omitted
- * if the suggestion is not the addition of an optional argument within an
- * argument list.
- */
- void set parameterName(String value) {
- this._parameterName = value;
- }
-
- /**
- * The type of the options parameter being suggested. This field is omitted
- * if the parameterName field is omitted.
- */
- String get parameterType => _parameterType;
-
- /**
- * The type of the options parameter being suggested. This field is omitted
- * if the parameterName field is omitted.
- */
- void set parameterType(String value) {
- this._parameterType = value;
- }
-
- /**
- * The import to be added if the suggestion is out of scope and needs an
- * import to be added to be in scope.
- */
- String get importUri => _importUri;
-
- /**
- * The import to be added if the suggestion is out of scope and needs an
- * import to be added to be in scope.
- */
- void set importUri(String value) {
- this._importUri = value;
- }
-
- CompletionSuggestion(
- CompletionSuggestionKind kind,
- int relevance,
- String completion,
- int selectionOffset,
- int selectionLength,
- bool isDeprecated,
- bool isPotential,
- {String docSummary,
- String docComplete,
- String declaringType,
- String defaultArgumentListString,
- List<int> defaultArgumentListTextRanges,
- Element element,
- String returnType,
- List<String> parameterNames,
- List<String> parameterTypes,
- int requiredParameterCount,
- bool hasNamedParameters,
- String parameterName,
- String parameterType,
- String importUri}) {
- this.kind = kind;
- this.relevance = relevance;
- this.completion = completion;
- this.selectionOffset = selectionOffset;
- this.selectionLength = selectionLength;
- this.isDeprecated = isDeprecated;
- this.isPotential = isPotential;
- this.docSummary = docSummary;
- this.docComplete = docComplete;
- this.declaringType = declaringType;
- this.defaultArgumentListString = defaultArgumentListString;
- this.defaultArgumentListTextRanges = defaultArgumentListTextRanges;
- this.element = element;
- this.returnType = returnType;
- this.parameterNames = parameterNames;
- this.parameterTypes = parameterTypes;
- this.requiredParameterCount = requiredParameterCount;
- this.hasNamedParameters = hasNamedParameters;
- this.parameterName = parameterName;
- this.parameterType = parameterType;
- this.importUri = importUri;
- }
-
- factory CompletionSuggestion.fromJson(
+ factory EditGetAvailableRefactoringsParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- CompletionSuggestionKind kind;
- if (json.containsKey("kind")) {
- kind = new CompletionSuggestionKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- int relevance;
- if (json.containsKey("relevance")) {
- relevance =
- jsonDecoder.decodeInt(jsonPath + ".relevance", json["relevance"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "relevance");
- }
- String completion;
- if (json.containsKey("completion")) {
- completion = jsonDecoder.decodeString(
- jsonPath + ".completion", json["completion"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "completion");
- }
- int selectionOffset;
- if (json.containsKey("selectionOffset")) {
- selectionOffset = jsonDecoder.decodeInt(
- jsonPath + ".selectionOffset", json["selectionOffset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "selectionOffset");
- }
- int selectionLength;
- if (json.containsKey("selectionLength")) {
- selectionLength = jsonDecoder.decodeInt(
- jsonPath + ".selectionLength", json["selectionLength"]);
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "selectionLength");
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- bool isDeprecated;
- if (json.containsKey("isDeprecated")) {
- isDeprecated = jsonDecoder.decodeBool(
- jsonPath + ".isDeprecated", json["isDeprecated"]);
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "isDeprecated");
+ throw jsonDecoder.mismatch(jsonPath, "offset");
}
- bool isPotential;
- if (json.containsKey("isPotential")) {
- isPotential = jsonDecoder.decodeBool(
- jsonPath + ".isPotential", json["isPotential"]);
+ int length;
+ if (json.containsKey("length")) {
+ length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "isPotential");
- }
- String docSummary;
- if (json.containsKey("docSummary")) {
- docSummary = jsonDecoder.decodeString(
- jsonPath + ".docSummary", json["docSummary"]);
- }
- String docComplete;
- if (json.containsKey("docComplete")) {
- docComplete = jsonDecoder.decodeString(
- jsonPath + ".docComplete", json["docComplete"]);
- }
- String declaringType;
- if (json.containsKey("declaringType")) {
- declaringType = jsonDecoder.decodeString(
- jsonPath + ".declaringType", json["declaringType"]);
- }
- String defaultArgumentListString;
- if (json.containsKey("defaultArgumentListString")) {
- defaultArgumentListString = jsonDecoder.decodeString(
- jsonPath + ".defaultArgumentListString",
- json["defaultArgumentListString"]);
- }
- List<int> defaultArgumentListTextRanges;
- if (json.containsKey("defaultArgumentListTextRanges")) {
- defaultArgumentListTextRanges = jsonDecoder.decodeList(
- jsonPath + ".defaultArgumentListTextRanges",
- json["defaultArgumentListTextRanges"],
- jsonDecoder.decodeInt);
- }
- Element element;
- if (json.containsKey("element")) {
- element = new Element.fromJson(
- jsonDecoder, jsonPath + ".element", json["element"]);
- }
- String returnType;
- if (json.containsKey("returnType")) {
- returnType = jsonDecoder.decodeString(
- jsonPath + ".returnType", json["returnType"]);
- }
- List<String> parameterNames;
- if (json.containsKey("parameterNames")) {
- parameterNames = jsonDecoder.decodeList(jsonPath + ".parameterNames",
- json["parameterNames"], jsonDecoder.decodeString);
- }
- List<String> parameterTypes;
- if (json.containsKey("parameterTypes")) {
- parameterTypes = jsonDecoder.decodeList(jsonPath + ".parameterTypes",
- json["parameterTypes"], jsonDecoder.decodeString);
- }
- int requiredParameterCount;
- if (json.containsKey("requiredParameterCount")) {
- requiredParameterCount = jsonDecoder.decodeInt(
- jsonPath + ".requiredParameterCount",
- json["requiredParameterCount"]);
- }
- bool hasNamedParameters;
- if (json.containsKey("hasNamedParameters")) {
- hasNamedParameters = jsonDecoder.decodeBool(
- jsonPath + ".hasNamedParameters", json["hasNamedParameters"]);
- }
- String parameterName;
- if (json.containsKey("parameterName")) {
- parameterName = jsonDecoder.decodeString(
- jsonPath + ".parameterName", json["parameterName"]);
- }
- String parameterType;
- if (json.containsKey("parameterType")) {
- parameterType = jsonDecoder.decodeString(
- jsonPath + ".parameterType", json["parameterType"]);
- }
- String importUri;
- if (json.containsKey("importUri")) {
- importUri = jsonDecoder.decodeString(
- jsonPath + ".importUri", json["importUri"]);
+ throw jsonDecoder.mismatch(jsonPath, "length");
}
- return new CompletionSuggestion(kind, relevance, completion,
- selectionOffset, selectionLength, isDeprecated, isPotential,
- docSummary: docSummary,
- docComplete: docComplete,
- declaringType: declaringType,
- defaultArgumentListString: defaultArgumentListString,
- defaultArgumentListTextRanges: defaultArgumentListTextRanges,
- element: element,
- returnType: returnType,
- parameterNames: parameterNames,
- parameterTypes: parameterTypes,
- requiredParameterCount: requiredParameterCount,
- hasNamedParameters: hasNamedParameters,
- parameterName: parameterName,
- parameterType: parameterType,
- importUri: importUri);
+ return new EditGetAvailableRefactoringsParams(file, offset, length);
} else {
- throw jsonDecoder.mismatch(jsonPath, "CompletionSuggestion", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "edit.getAvailableRefactorings params", json);
}
}
+ factory EditGetAvailableRefactoringsParams.fromRequest(Request request) {
+ return new EditGetAvailableRefactoringsParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["kind"] = kind.toJson();
- result["relevance"] = relevance;
- result["completion"] = completion;
- result["selectionOffset"] = selectionOffset;
- result["selectionLength"] = selectionLength;
- result["isDeprecated"] = isDeprecated;
- result["isPotential"] = isPotential;
- if (docSummary != null) {
- result["docSummary"] = docSummary;
- }
- if (docComplete != null) {
- result["docComplete"] = docComplete;
- }
- if (declaringType != null) {
- result["declaringType"] = declaringType;
- }
- if (defaultArgumentListString != null) {
- result["defaultArgumentListString"] = defaultArgumentListString;
- }
- if (defaultArgumentListTextRanges != null) {
- result["defaultArgumentListTextRanges"] = defaultArgumentListTextRanges;
- }
- if (element != null) {
- result["element"] = element.toJson();
- }
- if (returnType != null) {
- result["returnType"] = returnType;
- }
- if (parameterNames != null) {
- result["parameterNames"] = parameterNames;
- }
- if (parameterTypes != null) {
- result["parameterTypes"] = parameterTypes;
- }
- if (requiredParameterCount != null) {
- result["requiredParameterCount"] = requiredParameterCount;
- }
- if (hasNamedParameters != null) {
- result["hasNamedParameters"] = hasNamedParameters;
- }
- if (parameterName != null) {
- result["parameterName"] = parameterName;
- }
- if (parameterType != null) {
- result["parameterType"] = parameterType;
- }
- if (importUri != null) {
- result["importUri"] = importUri;
- }
+ result["file"] = file;
+ result["offset"] = offset;
+ result["length"] = length;
return result;
}
@override
+ Request toRequest(String id) {
+ return new Request(id, "edit.getAvailableRefactorings", toJson());
+ }
+
+ @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is CompletionSuggestion) {
- return kind == other.kind &&
- relevance == other.relevance &&
- completion == other.completion &&
- selectionOffset == other.selectionOffset &&
- selectionLength == other.selectionLength &&
- isDeprecated == other.isDeprecated &&
- isPotential == other.isPotential &&
- docSummary == other.docSummary &&
- docComplete == other.docComplete &&
- declaringType == other.declaringType &&
- defaultArgumentListString == other.defaultArgumentListString &&
- listEqual(defaultArgumentListTextRanges,
- other.defaultArgumentListTextRanges, (int a, int b) => a == b) &&
- element == other.element &&
- returnType == other.returnType &&
- listEqual(parameterNames, other.parameterNames,
- (String a, String b) => a == b) &&
- listEqual(parameterTypes, other.parameterTypes,
- (String a, String b) => a == b) &&
- requiredParameterCount == other.requiredParameterCount &&
- hasNamedParameters == other.hasNamedParameters &&
- parameterName == other.parameterName &&
- parameterType == other.parameterType &&
- importUri == other.importUri;
+ if (other is EditGetAvailableRefactoringsParams) {
+ return file == other.file &&
+ offset == other.offset &&
+ length == other.length;
}
return false;
}
@@ -3303,366 +2823,210 @@ class CompletionSuggestion implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, relevance.hashCode);
- hash = JenkinsSmiHash.combine(hash, completion.hashCode);
- hash = JenkinsSmiHash.combine(hash, selectionOffset.hashCode);
- hash = JenkinsSmiHash.combine(hash, selectionLength.hashCode);
- hash = JenkinsSmiHash.combine(hash, isDeprecated.hashCode);
- hash = JenkinsSmiHash.combine(hash, isPotential.hashCode);
- hash = JenkinsSmiHash.combine(hash, docSummary.hashCode);
- hash = JenkinsSmiHash.combine(hash, docComplete.hashCode);
- hash = JenkinsSmiHash.combine(hash, declaringType.hashCode);
- hash = JenkinsSmiHash.combine(hash, defaultArgumentListString.hashCode);
- hash = JenkinsSmiHash.combine(hash, defaultArgumentListTextRanges.hashCode);
- hash = JenkinsSmiHash.combine(hash, element.hashCode);
- hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameterNames.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameterTypes.hashCode);
- hash = JenkinsSmiHash.combine(hash, requiredParameterCount.hashCode);
- hash = JenkinsSmiHash.combine(hash, hasNamedParameters.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameterName.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameterType.hashCode);
- hash = JenkinsSmiHash.combine(hash, importUri.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, length.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * CompletionSuggestionKind
+ * edit.getAvailableRefactorings result
*
- * enum {
- * ARGUMENT_LIST
- * IMPORT
- * IDENTIFIER
- * INVOCATION
- * KEYWORD
- * NAMED_ARGUMENT
- * OPTIONAL_ARGUMENT
- * PARAMETER
+ * {
+ * "kinds": List<RefactoringKind>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class CompletionSuggestionKind implements Enum {
- /**
- * A list of arguments for the method or function that is being invoked. For
- * this suggestion kind, the completion field is a textual representation of
- * the invocation and the parameterNames, parameterTypes, and
- * requiredParameterCount attributes are defined.
- */
- static const CompletionSuggestionKind ARGUMENT_LIST =
- const CompletionSuggestionKind._("ARGUMENT_LIST");
-
- static const CompletionSuggestionKind IMPORT =
- const CompletionSuggestionKind._("IMPORT");
-
- /**
- * The element identifier should be inserted at the completion location. For
- * example "someMethod" in import 'myLib.dart' show someMethod;. For
- * suggestions of this kind, the element attribute is defined and the
- * completion field is the element's identifier.
- */
- static const CompletionSuggestionKind IDENTIFIER =
- const CompletionSuggestionKind._("IDENTIFIER");
-
- /**
- * The element is being invoked at the completion location. For example,
- * 'someMethod' in x.someMethod();. For suggestions of this kind, the element
- * attribute is defined and the completion field is the element's identifier.
- */
- static const CompletionSuggestionKind INVOCATION =
- const CompletionSuggestionKind._("INVOCATION");
+class EditGetAvailableRefactoringsResult implements ResponseResult {
+ List<RefactoringKind> _kinds;
/**
- * A keyword is being suggested. For suggestions of this kind, the completion
- * is the keyword.
+ * The kinds of refactorings that are valid for the given selection.
+ *
+ * The list of refactoring kinds is currently limited to those defined by the
+ * server API, preventing plugins from adding their own refactorings.
+ * However, plugins can support pre-defined refactorings, such as a rename
+ * refactoring, at locations not supported by server.
*/
- static const CompletionSuggestionKind KEYWORD =
- const CompletionSuggestionKind._("KEYWORD");
+ List<RefactoringKind> get kinds => _kinds;
/**
- * A named argument for the current call site is being suggested. For
- * suggestions of this kind, the completion is the named argument identifier
- * including a trailing ':' and a space.
+ * The kinds of refactorings that are valid for the given selection.
+ *
+ * The list of refactoring kinds is currently limited to those defined by the
+ * server API, preventing plugins from adding their own refactorings.
+ * However, plugins can support pre-defined refactorings, such as a rename
+ * refactoring, at locations not supported by server.
*/
- static const CompletionSuggestionKind NAMED_ARGUMENT =
- const CompletionSuggestionKind._("NAMED_ARGUMENT");
+ void set kinds(List<RefactoringKind> value) {
+ assert(value != null);
+ this._kinds = value;
+ }
- static const CompletionSuggestionKind OPTIONAL_ARGUMENT =
- const CompletionSuggestionKind._("OPTIONAL_ARGUMENT");
+ EditGetAvailableRefactoringsResult(List<RefactoringKind> kinds) {
+ this.kinds = kinds;
+ }
- static const CompletionSuggestionKind PARAMETER =
- const CompletionSuggestionKind._("PARAMETER");
+ factory EditGetAvailableRefactoringsResult.fromJson(
+ JsonDecoder jsonDecoder, String jsonPath, Object json) {
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ List<RefactoringKind> kinds;
+ if (json.containsKey("kinds")) {
+ kinds = jsonDecoder.decodeList(
+ jsonPath + ".kinds",
+ json["kinds"],
+ (String jsonPath, Object json) =>
+ new RefactoringKind.fromJson(jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "kinds");
+ }
+ return new EditGetAvailableRefactoringsResult(kinds);
+ } else {
+ throw jsonDecoder.mismatch(
+ jsonPath, "edit.getAvailableRefactorings result", json);
+ }
+ }
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<CompletionSuggestionKind> VALUES =
- const <CompletionSuggestionKind>[
- ARGUMENT_LIST,
- IMPORT,
- IDENTIFIER,
- INVOCATION,
- KEYWORD,
- NAMED_ARGUMENT,
- OPTIONAL_ARGUMENT,
- PARAMETER
- ];
+ factory EditGetAvailableRefactoringsResult.fromResponse(Response response) {
+ return new EditGetAvailableRefactoringsResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
+ }
@override
- final String name;
-
- const CompletionSuggestionKind._(this.name);
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["kinds"] =
+ kinds.map((RefactoringKind value) => value.toJson()).toList();
+ return result;
+ }
- factory CompletionSuggestionKind(String name) {
- switch (name) {
- case "ARGUMENT_LIST":
- return ARGUMENT_LIST;
- case "IMPORT":
- return IMPORT;
- case "IDENTIFIER":
- return IDENTIFIER;
- case "INVOCATION":
- return INVOCATION;
- case "KEYWORD":
- return KEYWORD;
- case "NAMED_ARGUMENT":
- return NAMED_ARGUMENT;
- case "OPTIONAL_ARGUMENT":
- return OPTIONAL_ARGUMENT;
- case "PARAMETER":
- return PARAMETER;
- }
- throw new Exception('Illegal enum value: $name');
+ @override
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
}
- factory CompletionSuggestionKind.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new CompletionSuggestionKind(json);
- } catch (_) {
- // Fall through
- }
+ @override
+ String toString() => JSON.encode(toJson());
+
+ @override
+ bool operator ==(other) {
+ if (other is EditGetAvailableRefactoringsResult) {
+ return listEqual(
+ kinds, other.kinds, (RefactoringKind a, RefactoringKind b) => a == b);
}
- throw jsonDecoder.mismatch(jsonPath, "CompletionSuggestionKind", json);
+ return false;
}
@override
- String toString() => "CompletionSuggestionKind.$name";
-
- String toJson() => name;
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, kinds.hashCode);
+ return JenkinsSmiHash.finish(hash);
+ }
}
/**
- * ContextBuilderOptions
+ * edit.getFixes params
*
* {
- * "dartSdkSummaryPath": optional String
- * "defaultAnalysisOptionsFilePath": optional List<String>
- * "declaredVariables": optional Map<String, String>
- * "defaultPackageFilePath": optional List<String>
- * "defaultPackagesDirectoryPath": optional List<String>
+ * "file": FilePath
+ * "offset": int
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class ContextBuilderOptions implements HasToJson {
- String _dartSdkSummaryPath;
-
- List<String> _defaultAnalysisOptionsFilePath;
-
- Map<String, String> _declaredVariables;
-
- List<String> _defaultPackageFilePath;
+class EditGetFixesParams implements RequestParams {
+ String _file;
- List<String> _defaultPackagesDirectoryPath;
+ int _offset;
/**
- * The file path of the file containing the summary of the SDK that should be
- * used to "analyze" the SDK. The field will be omitted if the summary should
- * be found in the SDK.
+ * The file containing the errors for which fixes are being requested.
*/
- String get dartSdkSummaryPath => _dartSdkSummaryPath;
+ String get file => _file;
/**
- * The file path of the file containing the summary of the SDK that should be
- * used to "analyze" the SDK. The field will be omitted if the summary should
- * be found in the SDK.
- */
- void set dartSdkSummaryPath(String value) {
- this._dartSdkSummaryPath = value;
- }
-
- /**
- * The file path of the analysis options file that should be used in place of
- * any file in the root directory or a parent of the root directory. The
- * field will be omitted if the normal lookup mechanism should be used.
- */
- List<String> get defaultAnalysisOptionsFilePath =>
- _defaultAnalysisOptionsFilePath;
-
- /**
- * The file path of the analysis options file that should be used in place of
- * any file in the root directory or a parent of the root directory. The
- * field will be omitted if the normal lookup mechanism should be used.
- */
- void set defaultAnalysisOptionsFilePath(List<String> value) {
- this._defaultAnalysisOptionsFilePath = value;
- }
-
- /**
- * A table mapping variable names to values for the declared variables. The
- * field will be omitted if no additional variables need to be declared.
- */
- Map<String, String> get declaredVariables => _declaredVariables;
-
- /**
- * A table mapping variable names to values for the declared variables. The
- * field will be omitted if no additional variables need to be declared.
- */
- void set declaredVariables(Map<String, String> value) {
- this._declaredVariables = value;
- }
-
- /**
- * The file path of the .packages file that should be used in place of any
- * file found using the normal (Package Specification DEP) lookup mechanism.
- * The field will be omitted if the normal lookup mechanism should be used.
- */
- List<String> get defaultPackageFilePath => _defaultPackageFilePath;
-
- /**
- * The file path of the .packages file that should be used in place of any
- * file found using the normal (Package Specification DEP) lookup mechanism.
- * The field will be omitted if the normal lookup mechanism should be used.
+ * The file containing the errors for which fixes are being requested.
*/
- void set defaultPackageFilePath(List<String> value) {
- this._defaultPackageFilePath = value;
+ void set file(String value) {
+ assert(value != null);
+ this._file = value;
}
/**
- * The file path of the packages directory that should be used in place of
- * any file found using the normal (Package Specification DEP) lookup
- * mechanism. The field will be omitted if the normal lookup mechanism should
- * be used.
+ * The offset used to select the errors for which fixes will be returned.
*/
- List<String> get defaultPackagesDirectoryPath =>
- _defaultPackagesDirectoryPath;
+ int get offset => _offset;
/**
- * The file path of the packages directory that should be used in place of
- * any file found using the normal (Package Specification DEP) lookup
- * mechanism. The field will be omitted if the normal lookup mechanism should
- * be used.
+ * The offset used to select the errors for which fixes will be returned.
*/
- void set defaultPackagesDirectoryPath(List<String> value) {
- this._defaultPackagesDirectoryPath = value;
+ void set offset(int value) {
+ assert(value != null);
+ this._offset = value;
}
- ContextBuilderOptions(
- {String dartSdkSummaryPath,
- List<String> defaultAnalysisOptionsFilePath,
- Map<String, String> declaredVariables,
- List<String> defaultPackageFilePath,
- List<String> defaultPackagesDirectoryPath}) {
- this.dartSdkSummaryPath = dartSdkSummaryPath;
- this.defaultAnalysisOptionsFilePath = defaultAnalysisOptionsFilePath;
- this.declaredVariables = declaredVariables;
- this.defaultPackageFilePath = defaultPackageFilePath;
- this.defaultPackagesDirectoryPath = defaultPackagesDirectoryPath;
+ EditGetFixesParams(String file, int offset) {
+ this.file = file;
+ this.offset = offset;
}
- factory ContextBuilderOptions.fromJson(
+ factory EditGetFixesParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String dartSdkSummaryPath;
- if (json.containsKey("dartSdkSummaryPath")) {
- dartSdkSummaryPath = jsonDecoder.decodeString(
- jsonPath + ".dartSdkSummaryPath", json["dartSdkSummaryPath"]);
- }
- List<String> defaultAnalysisOptionsFilePath;
- if (json.containsKey("defaultAnalysisOptionsFilePath")) {
- defaultAnalysisOptionsFilePath = jsonDecoder.decodeList(
- jsonPath + ".defaultAnalysisOptionsFilePath",
- json["defaultAnalysisOptionsFilePath"],
- jsonDecoder.decodeString);
- }
- Map<String, String> declaredVariables;
- if (json.containsKey("declaredVariables")) {
- declaredVariables = jsonDecoder.decodeMap(
- jsonPath + ".declaredVariables", json["declaredVariables"],
- valueDecoder: jsonDecoder.decodeString);
- }
- List<String> defaultPackageFilePath;
- if (json.containsKey("defaultPackageFilePath")) {
- defaultPackageFilePath = jsonDecoder.decodeList(
- jsonPath + ".defaultPackageFilePath",
- json["defaultPackageFilePath"],
- jsonDecoder.decodeString);
+ String file;
+ if (json.containsKey("file")) {
+ file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "file");
}
- List<String> defaultPackagesDirectoryPath;
- if (json.containsKey("defaultPackagesDirectoryPath")) {
- defaultPackagesDirectoryPath = jsonDecoder.decodeList(
- jsonPath + ".defaultPackagesDirectoryPath",
- json["defaultPackagesDirectoryPath"],
- jsonDecoder.decodeString);
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "offset");
}
- return new ContextBuilderOptions(
- dartSdkSummaryPath: dartSdkSummaryPath,
- defaultAnalysisOptionsFilePath: defaultAnalysisOptionsFilePath,
- declaredVariables: declaredVariables,
- defaultPackageFilePath: defaultPackageFilePath,
- defaultPackagesDirectoryPath: defaultPackagesDirectoryPath);
+ return new EditGetFixesParams(file, offset);
} else {
- throw jsonDecoder.mismatch(jsonPath, "ContextBuilderOptions", json);
+ throw jsonDecoder.mismatch(jsonPath, "edit.getFixes params", json);
}
}
+ factory EditGetFixesParams.fromRequest(Request request) {
+ return new EditGetFixesParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- if (dartSdkSummaryPath != null) {
- result["dartSdkSummaryPath"] = dartSdkSummaryPath;
- }
- if (defaultAnalysisOptionsFilePath != null) {
- result["defaultAnalysisOptionsFilePath"] = defaultAnalysisOptionsFilePath;
- }
- if (declaredVariables != null) {
- result["declaredVariables"] = declaredVariables;
- }
- if (defaultPackageFilePath != null) {
- result["defaultPackageFilePath"] = defaultPackageFilePath;
- }
- if (defaultPackagesDirectoryPath != null) {
- result["defaultPackagesDirectoryPath"] = defaultPackagesDirectoryPath;
- }
+ result["file"] = file;
+ result["offset"] = offset;
return result;
}
@override
+ Request toRequest(String id) {
+ return new Request(id, "edit.getFixes", toJson());
+ }
+
+ @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is ContextBuilderOptions) {
- return dartSdkSummaryPath == other.dartSdkSummaryPath &&
- listEqual(
- defaultAnalysisOptionsFilePath,
- other.defaultAnalysisOptionsFilePath,
- (String a, String b) => a == b) &&
- mapEqual(declaredVariables, other.declaredVariables,
- (String a, String b) => a == b) &&
- listEqual(defaultPackageFilePath, other.defaultPackageFilePath,
- (String a, String b) => a == b) &&
- listEqual(
- defaultPackagesDirectoryPath,
- other.defaultPackagesDirectoryPath,
- (String a, String b) => a == b);
+ if (other is EditGetFixesParams) {
+ return file == other.file && offset == other.offset;
}
return false;
}
@@ -3670,229 +3034,150 @@ class ContextBuilderOptions implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, dartSdkSummaryPath.hashCode);
- hash =
- JenkinsSmiHash.combine(hash, defaultAnalysisOptionsFilePath.hashCode);
- hash = JenkinsSmiHash.combine(hash, declaredVariables.hashCode);
- hash = JenkinsSmiHash.combine(hash, defaultPackageFilePath.hashCode);
- hash = JenkinsSmiHash.combine(hash, defaultPackagesDirectoryPath.hashCode);
+ hash = JenkinsSmiHash.combine(hash, file.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * ContextRoot
+ * edit.getFixes result
*
* {
- * "root": String
- * "exclude": List<String>
+ * "fixes": List<AnalysisErrorFixes>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class ContextRoot implements HasToJson {
- String _root;
-
- List<String> _exclude;
-
- /**
- * The absolute path of the root directory containing the files to be
- * analyzed.
- */
- String get root => _root;
-
- /**
- * The absolute path of the root directory containing the files to be
- * analyzed.
- */
- void set root(String value) {
- assert(value != null);
- this._root = value;
- }
+class EditGetFixesResult implements ResponseResult {
+ List<AnalysisErrorFixes> _fixes;
/**
- * A list of the absolute paths of files and directories within the root
- * directory that should not be analyzed.
+ * The fixes that are available for the errors at the given offset.
*/
- List<String> get exclude => _exclude;
+ List<AnalysisErrorFixes> get fixes => _fixes;
/**
- * A list of the absolute paths of files and directories within the root
- * directory that should not be analyzed.
+ * The fixes that are available for the errors at the given offset.
*/
- void set exclude(List<String> value) {
+ void set fixes(List<AnalysisErrorFixes> value) {
assert(value != null);
- this._exclude = value;
+ this._fixes = value;
}
- ContextRoot(String root, List<String> exclude) {
- this.root = root;
- this.exclude = exclude;
+ EditGetFixesResult(List<AnalysisErrorFixes> fixes) {
+ this.fixes = fixes;
}
- factory ContextRoot.fromJson(
+ factory EditGetFixesResult.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String root;
- if (json.containsKey("root")) {
- root = jsonDecoder.decodeString(jsonPath + ".root", json["root"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "root");
- }
- List<String> exclude;
- if (json.containsKey("exclude")) {
- exclude = jsonDecoder.decodeList(
- jsonPath + ".exclude", json["exclude"], jsonDecoder.decodeString);
+ List<AnalysisErrorFixes> fixes;
+ if (json.containsKey("fixes")) {
+ fixes = jsonDecoder.decodeList(
+ jsonPath + ".fixes",
+ json["fixes"],
+ (String jsonPath, Object json) =>
+ new AnalysisErrorFixes.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "exclude");
+ throw jsonDecoder.mismatch(jsonPath, "fixes");
}
- return new ContextRoot(root, exclude);
+ return new EditGetFixesResult(fixes);
} else {
- throw jsonDecoder.mismatch(jsonPath, "ContextRoot", json);
+ throw jsonDecoder.mismatch(jsonPath, "edit.getFixes result", json);
}
}
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["root"] = root;
- result["exclude"] = exclude;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is ContextRoot) {
- return root == other.root &&
- listEqual(exclude, other.exclude, (String a, String b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, root.hashCode);
- hash = JenkinsSmiHash.combine(hash, exclude.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * convertGetterToMethod feedback
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ConvertGetterToMethodFeedback extends RefactoringFeedback
- implements HasToJson {
- @override
- bool operator ==(other) {
- if (other is ConvertGetterToMethodFeedback) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 616032599;
- }
-}
-
-/**
- * convertGetterToMethod options
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ConvertGetterToMethodOptions extends RefactoringOptions
- implements HasToJson {
- @override
- bool operator ==(other) {
- if (other is ConvertGetterToMethodOptions) {
- return true;
- }
- return false;
+ factory EditGetFixesResult.fromResponse(Response response) {
+ return new EditGetFixesResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
}
@override
- int get hashCode {
- return 488848400;
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["fixes"] =
+ fixes.map((AnalysisErrorFixes value) => value.toJson()).toList();
+ return result;
}
-}
-/**
- * convertMethodToGetter feedback
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ConvertMethodToGetterFeedback extends RefactoringFeedback
- implements HasToJson {
@override
- bool operator ==(other) {
- if (other is ConvertMethodToGetterFeedback) {
- return true;
- }
- return false;
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
}
@override
- int get hashCode {
- return 165291526;
- }
-}
+ String toString() => JSON.encode(toJson());
-/**
- * convertMethodToGetter options
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ConvertMethodToGetterOptions extends RefactoringOptions
- implements HasToJson {
@override
bool operator ==(other) {
- if (other is ConvertMethodToGetterOptions) {
- return true;
+ if (other is EditGetFixesResult) {
+ return listEqual(fixes, other.fixes,
+ (AnalysisErrorFixes a, AnalysisErrorFixes b) => a == b);
}
return false;
}
@override
int get hashCode {
- return 27952290;
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, fixes.hashCode);
+ return JenkinsSmiHash.finish(hash);
}
}
/**
- * edit.getAssists params
+ * edit.getRefactoring params
*
* {
+ * "kind": RefactoringKind
* "file": FilePath
* "offset": int
* "length": int
+ * "validateOnly": bool
+ * "options": optional RefactoringOptions
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class EditGetAssistsParams implements RequestParams {
+class EditGetRefactoringParams implements RequestParams {
+ RefactoringKind _kind;
+
String _file;
int _offset;
int _length;
+ bool _validateOnly;
+
+ RefactoringOptions _options;
+
/**
- * The file containing the code for which assists are being requested.
+ * The kind of refactoring to be performed.
+ */
+ RefactoringKind get kind => _kind;
+
+ /**
+ * The kind of refactoring to be performed.
+ */
+ void set kind(RefactoringKind value) {
+ assert(value != null);
+ this._kind = value;
+ }
+
+ /**
+ * The file containing the code involved in the refactoring.
*/
String get file => _file;
/**
- * The file containing the code for which assists are being requested.
+ * The file containing the code involved in the refactoring.
*/
void set file(String value) {
assert(value != null);
@@ -3900,12 +3185,12 @@ class EditGetAssistsParams implements RequestParams {
}
/**
- * The offset of the code for which assists are being requested.
+ * The offset of the region involved in the refactoring.
*/
int get offset => _offset;
/**
- * The offset of the code for which assists are being requested.
+ * The offset of the region involved in the refactoring.
*/
void set offset(int value) {
assert(value != null);
@@ -3913,30 +3198,77 @@ class EditGetAssistsParams implements RequestParams {
}
/**
- * The length of the code for which assists are being requested.
+ * The length of the region involved in the refactoring.
*/
int get length => _length;
/**
- * The length of the code for which assists are being requested.
+ * The length of the region involved in the refactoring.
*/
void set length(int value) {
assert(value != null);
this._length = value;
}
- EditGetAssistsParams(String file, int offset, int length) {
+ /**
+ * True if the client is only requesting that the values of the options be
+ * validated and no change be generated.
+ */
+ bool get validateOnly => _validateOnly;
+
+ /**
+ * True if the client is only requesting that the values of the options be
+ * validated and no change be generated.
+ */
+ void set validateOnly(bool value) {
+ assert(value != null);
+ this._validateOnly = value;
+ }
+
+ /**
+ * Data used to provide values provided by the user. The structure of the
+ * data is dependent on the kind of refactoring being performed. The data
+ * that is expected is documented in the section titled Refactorings, labeled
+ * as "Options". This field can be omitted if the refactoring does not
+ * require any options or if the values of those options are not known.
+ */
+ RefactoringOptions get options => _options;
+
+ /**
+ * Data used to provide values provided by the user. The structure of the
+ * data is dependent on the kind of refactoring being performed. The data
+ * that is expected is documented in the section titled Refactorings, labeled
+ * as "Options". This field can be omitted if the refactoring does not
+ * require any options or if the values of those options are not known.
+ */
+ void set options(RefactoringOptions value) {
+ this._options = value;
+ }
+
+ EditGetRefactoringParams(RefactoringKind kind, String file, int offset,
+ int length, bool validateOnly,
+ {RefactoringOptions options}) {
+ this.kind = kind;
this.file = file;
this.offset = offset;
this.length = length;
+ this.validateOnly = validateOnly;
+ this.options = options;
}
- factory EditGetAssistsParams.fromJson(
+ factory EditGetRefactoringParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
+ RefactoringKind kind;
+ if (json.containsKey("kind")) {
+ kind = new RefactoringKind.fromJson(
+ jsonDecoder, jsonPath + ".kind", json["kind"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "kind");
+ }
String file;
if (json.containsKey("file")) {
file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
@@ -3955,29 +3287,50 @@ class EditGetAssistsParams implements RequestParams {
} else {
throw jsonDecoder.mismatch(jsonPath, "length");
}
- return new EditGetAssistsParams(file, offset, length);
+ bool validateOnly;
+ if (json.containsKey("validateOnly")) {
+ validateOnly = jsonDecoder.decodeBool(
+ jsonPath + ".validateOnly", json["validateOnly"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "validateOnly");
+ }
+ RefactoringOptions options;
+ if (json.containsKey("options")) {
+ options = new RefactoringOptions.fromJson(
+ jsonDecoder, jsonPath + ".options", json["options"], kind);
+ }
+ return new EditGetRefactoringParams(
+ kind, file, offset, length, validateOnly,
+ options: options);
} else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getAssists params", json);
+ throw jsonDecoder.mismatch(jsonPath, "edit.getRefactoring params", json);
}
}
- factory EditGetAssistsParams.fromRequest(Request request) {
- return new EditGetAssistsParams.fromJson(
+ factory EditGetRefactoringParams.fromRequest(Request request) {
+ var params = new EditGetRefactoringParams.fromJson(
new RequestDecoder(request), "params", request.params);
+ REQUEST_ID_REFACTORING_KINDS[request.id] = params.kind;
+ return params;
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
+ result["kind"] = kind.toJson();
result["file"] = file;
result["offset"] = offset;
result["length"] = length;
+ result["validateOnly"] = validateOnly;
+ if (options != null) {
+ result["options"] = options.toJson();
+ }
return result;
}
@override
Request toRequest(String id) {
- return new Request(id, "edit.getAssists", toJson());
+ return new Request(id, "edit.getRefactoring", toJson());
}
@override
@@ -3985,10 +3338,13 @@ class EditGetAssistsParams implements RequestParams {
@override
bool operator ==(other) {
- if (other is EditGetAssistsParams) {
- return file == other.file &&
+ if (other is EditGetRefactoringParams) {
+ return kind == other.kind &&
+ file == other.file &&
offset == other.offset &&
- length == other.length;
+ length == other.length &&
+ validateOnly == other.validateOnly &&
+ options == other.options;
}
return false;
}
@@ -3996,5003 +3352,278 @@ class EditGetAssistsParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, kind.hashCode);
hash = JenkinsSmiHash.combine(hash, file.hashCode);
hash = JenkinsSmiHash.combine(hash, offset.hashCode);
hash = JenkinsSmiHash.combine(hash, length.hashCode);
+ hash = JenkinsSmiHash.combine(hash, validateOnly.hashCode);
+ hash = JenkinsSmiHash.combine(hash, options.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * edit.getAssists result
+ * edit.getRefactoring result
*
* {
- * "assists": List<PrioritizedSourceChange>
+ * "initialProblems": List<RefactoringProblem>
+ * "optionsProblems": List<RefactoringProblem>
+ * "finalProblems": List<RefactoringProblem>
+ * "feedback": optional RefactoringFeedback
+ * "change": optional SourceChange
+ * "potentialEdits": optional List<String>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class EditGetAssistsResult implements ResponseResult {
- List<PrioritizedSourceChange> _assists;
+class EditGetRefactoringResult implements ResponseResult {
+ List<RefactoringProblem> _initialProblems;
- /**
- * The assists that are available at the given location.
- */
- List<PrioritizedSourceChange> get assists => _assists;
-
- /**
- * The assists that are available at the given location.
- */
- void set assists(List<PrioritizedSourceChange> value) {
- assert(value != null);
- this._assists = value;
- }
-
- EditGetAssistsResult(List<PrioritizedSourceChange> assists) {
- this.assists = assists;
- }
-
- factory EditGetAssistsResult.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<PrioritizedSourceChange> assists;
- if (json.containsKey("assists")) {
- assists = jsonDecoder.decodeList(
- jsonPath + ".assists",
- json["assists"],
- (String jsonPath, Object json) =>
- new PrioritizedSourceChange.fromJson(
- jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "assists");
- }
- return new EditGetAssistsResult(assists);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getAssists result", json);
- }
- }
-
- factory EditGetAssistsResult.fromResponse(Response response) {
- return new EditGetAssistsResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["assists"] =
- assists.map((PrioritizedSourceChange value) => value.toJson()).toList();
- return result;
- }
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetAssistsResult) {
- return listEqual(assists, other.assists,
- (PrioritizedSourceChange a, PrioritizedSourceChange b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, assists.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getAvailableRefactorings params
- *
- * {
- * "file": FilePath
- * "offset": int
- * "length": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetAvailableRefactoringsParams implements RequestParams {
- String _file;
-
- int _offset;
-
- int _length;
-
- /**
- * The file containing the code on which the refactoring would be based.
- */
- String get file => _file;
-
- /**
- * The file containing the code on which the refactoring would be based.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
-
- /**
- * The offset of the code on which the refactoring would be based.
- */
- int get offset => _offset;
-
- /**
- * The offset of the code on which the refactoring would be based.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the code on which the refactoring would be based.
- */
- int get length => _length;
-
- /**
- * The length of the code on which the refactoring would be based.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- EditGetAvailableRefactoringsParams(String file, int offset, int length) {
- this.file = file;
- this.offset = offset;
- this.length = length;
- }
-
- factory EditGetAvailableRefactoringsParams.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- return new EditGetAvailableRefactoringsParams(file, offset, length);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "edit.getAvailableRefactorings params", json);
- }
- }
-
- factory EditGetAvailableRefactoringsParams.fromRequest(Request request) {
- return new EditGetAvailableRefactoringsParams.fromJson(
- new RequestDecoder(request), "params", request.params);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["file"] = file;
- result["offset"] = offset;
- result["length"] = length;
- return result;
- }
-
- @override
- Request toRequest(String id) {
- return new Request(id, "edit.getAvailableRefactorings", toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetAvailableRefactoringsParams) {
- return file == other.file &&
- offset == other.offset &&
- length == other.length;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getAvailableRefactorings result
- *
- * {
- * "kinds": List<RefactoringKind>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetAvailableRefactoringsResult implements ResponseResult {
- List<RefactoringKind> _kinds;
-
- /**
- * The kinds of refactorings that are valid for the given selection.
- *
- * The list of refactoring kinds is currently limited to those defined by the
- * server API, preventing plugins from adding their own refactorings.
- * However, plugins can support pre-defined refactorings, such as a rename
- * refactoring, at locations not supported by server.
- */
- List<RefactoringKind> get kinds => _kinds;
-
- /**
- * The kinds of refactorings that are valid for the given selection.
- *
- * The list of refactoring kinds is currently limited to those defined by the
- * server API, preventing plugins from adding their own refactorings.
- * However, plugins can support pre-defined refactorings, such as a rename
- * refactoring, at locations not supported by server.
- */
- void set kinds(List<RefactoringKind> value) {
- assert(value != null);
- this._kinds = value;
- }
-
- EditGetAvailableRefactoringsResult(List<RefactoringKind> kinds) {
- this.kinds = kinds;
- }
-
- factory EditGetAvailableRefactoringsResult.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<RefactoringKind> kinds;
- if (json.containsKey("kinds")) {
- kinds = jsonDecoder.decodeList(
- jsonPath + ".kinds",
- json["kinds"],
- (String jsonPath, Object json) =>
- new RefactoringKind.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kinds");
- }
- return new EditGetAvailableRefactoringsResult(kinds);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "edit.getAvailableRefactorings result", json);
- }
- }
-
- factory EditGetAvailableRefactoringsResult.fromResponse(Response response) {
- return new EditGetAvailableRefactoringsResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["kinds"] =
- kinds.map((RefactoringKind value) => value.toJson()).toList();
- return result;
- }
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetAvailableRefactoringsResult) {
- return listEqual(
- kinds, other.kinds, (RefactoringKind a, RefactoringKind b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kinds.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getFixes params
- *
- * {
- * "file": FilePath
- * "offset": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetFixesParams implements RequestParams {
- String _file;
-
- int _offset;
-
- /**
- * The file containing the errors for which fixes are being requested.
- */
- String get file => _file;
-
- /**
- * The file containing the errors for which fixes are being requested.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
-
- /**
- * The offset used to select the errors for which fixes will be returned.
- */
- int get offset => _offset;
-
- /**
- * The offset used to select the errors for which fixes will be returned.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- EditGetFixesParams(String file, int offset) {
- this.file = file;
- this.offset = offset;
- }
-
- factory EditGetFixesParams.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- return new EditGetFixesParams(file, offset);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getFixes params", json);
- }
- }
-
- factory EditGetFixesParams.fromRequest(Request request) {
- return new EditGetFixesParams.fromJson(
- new RequestDecoder(request), "params", request.params);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["file"] = file;
- result["offset"] = offset;
- return result;
- }
-
- @override
- Request toRequest(String id) {
- return new Request(id, "edit.getFixes", toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetFixesParams) {
- return file == other.file && offset == other.offset;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getFixes result
- *
- * {
- * "fixes": List<AnalysisErrorFixes>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetFixesResult implements ResponseResult {
- List<AnalysisErrorFixes> _fixes;
-
- /**
- * The fixes that are available for the errors at the given offset.
- */
- List<AnalysisErrorFixes> get fixes => _fixes;
-
- /**
- * The fixes that are available for the errors at the given offset.
- */
- void set fixes(List<AnalysisErrorFixes> value) {
- assert(value != null);
- this._fixes = value;
- }
-
- EditGetFixesResult(List<AnalysisErrorFixes> fixes) {
- this.fixes = fixes;
- }
-
- factory EditGetFixesResult.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<AnalysisErrorFixes> fixes;
- if (json.containsKey("fixes")) {
- fixes = jsonDecoder.decodeList(
- jsonPath + ".fixes",
- json["fixes"],
- (String jsonPath, Object json) =>
- new AnalysisErrorFixes.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "fixes");
- }
- return new EditGetFixesResult(fixes);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getFixes result", json);
- }
- }
-
- factory EditGetFixesResult.fromResponse(Response response) {
- return new EditGetFixesResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["fixes"] =
- fixes.map((AnalysisErrorFixes value) => value.toJson()).toList();
- return result;
- }
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetFixesResult) {
- return listEqual(fixes, other.fixes,
- (AnalysisErrorFixes a, AnalysisErrorFixes b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, fixes.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getRefactoring params
- *
- * {
- * "kind": RefactoringKind
- * "file": FilePath
- * "offset": int
- * "length": int
- * "validateOnly": bool
- * "options": optional RefactoringOptions
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetRefactoringParams implements RequestParams {
- RefactoringKind _kind;
-
- String _file;
-
- int _offset;
-
- int _length;
-
- bool _validateOnly;
-
- RefactoringOptions _options;
-
- /**
- * The kind of refactoring to be performed.
- */
- RefactoringKind get kind => _kind;
-
- /**
- * The kind of refactoring to be performed.
- */
- void set kind(RefactoringKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- /**
- * The file containing the code involved in the refactoring.
- */
- String get file => _file;
-
- /**
- * The file containing the code involved in the refactoring.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
-
- /**
- * The offset of the region involved in the refactoring.
- */
- int get offset => _offset;
-
- /**
- * The offset of the region involved in the refactoring.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the region involved in the refactoring.
- */
- int get length => _length;
-
- /**
- * The length of the region involved in the refactoring.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * True if the client is only requesting that the values of the options be
- * validated and no change be generated.
- */
- bool get validateOnly => _validateOnly;
-
- /**
- * True if the client is only requesting that the values of the options be
- * validated and no change be generated.
- */
- void set validateOnly(bool value) {
- assert(value != null);
- this._validateOnly = value;
- }
-
- /**
- * Data used to provide values provided by the user. The structure of the
- * data is dependent on the kind of refactoring being performed. The data
- * that is expected is documented in the section titled Refactorings, labeled
- * as "Options". This field can be omitted if the refactoring does not
- * require any options or if the values of those options are not known.
- */
- RefactoringOptions get options => _options;
-
- /**
- * Data used to provide values provided by the user. The structure of the
- * data is dependent on the kind of refactoring being performed. The data
- * that is expected is documented in the section titled Refactorings, labeled
- * as "Options". This field can be omitted if the refactoring does not
- * require any options or if the values of those options are not known.
- */
- void set options(RefactoringOptions value) {
- this._options = value;
- }
-
- EditGetRefactoringParams(RefactoringKind kind, String file, int offset,
- int length, bool validateOnly,
- {RefactoringOptions options}) {
- this.kind = kind;
- this.file = file;
- this.offset = offset;
- this.length = length;
- this.validateOnly = validateOnly;
- this.options = options;
- }
-
- factory EditGetRefactoringParams.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- RefactoringKind kind;
- if (json.containsKey("kind")) {
- kind = new RefactoringKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- bool validateOnly;
- if (json.containsKey("validateOnly")) {
- validateOnly = jsonDecoder.decodeBool(
- jsonPath + ".validateOnly", json["validateOnly"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "validateOnly");
- }
- RefactoringOptions options;
- if (json.containsKey("options")) {
- options = new RefactoringOptions.fromJson(
- jsonDecoder, jsonPath + ".options", json["options"], kind);
- }
- return new EditGetRefactoringParams(
- kind, file, offset, length, validateOnly,
- options: options);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getRefactoring params", json);
- }
- }
-
- factory EditGetRefactoringParams.fromRequest(Request request) {
- var params = new EditGetRefactoringParams.fromJson(
- new RequestDecoder(request), "params", request.params);
- REQUEST_ID_REFACTORING_KINDS[request.id] = params.kind;
- return params;
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["kind"] = kind.toJson();
- result["file"] = file;
- result["offset"] = offset;
- result["length"] = length;
- result["validateOnly"] = validateOnly;
- if (options != null) {
- result["options"] = options.toJson();
- }
- return result;
- }
-
- @override
- Request toRequest(String id) {
- return new Request(id, "edit.getRefactoring", toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetRefactoringParams) {
- return kind == other.kind &&
- file == other.file &&
- offset == other.offset &&
- length == other.length &&
- validateOnly == other.validateOnly &&
- options == other.options;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, validateOnly.hashCode);
- hash = JenkinsSmiHash.combine(hash, options.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * edit.getRefactoring result
- *
- * {
- * "initialProblems": List<RefactoringProblem>
- * "optionsProblems": List<RefactoringProblem>
- * "finalProblems": List<RefactoringProblem>
- * "feedback": optional RefactoringFeedback
- * "change": optional SourceChange
- * "potentialEdits": optional List<String>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class EditGetRefactoringResult implements ResponseResult {
- List<RefactoringProblem> _initialProblems;
-
- List<RefactoringProblem> _optionsProblems;
-
- List<RefactoringProblem> _finalProblems;
-
- RefactoringFeedback _feedback;
-
- SourceChange _change;
-
- List<String> _potentialEdits;
-
- /**
- * The initial status of the refactoring, that is, problems related to the
- * context in which the refactoring is requested. The list should be empty if
- * there are no known problems.
- */
- List<RefactoringProblem> get initialProblems => _initialProblems;
-
- /**
- * The initial status of the refactoring, that is, problems related to the
- * context in which the refactoring is requested. The list should be empty if
- * there are no known problems.
- */
- void set initialProblems(List<RefactoringProblem> value) {
- assert(value != null);
- this._initialProblems = value;
- }
-
- /**
- * The options validation status, that is, problems in the given options,
- * such as light-weight validation of a new name, flags compatibility, etc.
- * The list should be empty if there are no known problems.
- */
- List<RefactoringProblem> get optionsProblems => _optionsProblems;
-
- /**
- * The options validation status, that is, problems in the given options,
- * such as light-weight validation of a new name, flags compatibility, etc.
- * The list should be empty if there are no known problems.
- */
- void set optionsProblems(List<RefactoringProblem> value) {
- assert(value != null);
- this._optionsProblems = value;
- }
-
- /**
- * The final status of the refactoring, that is, problems identified in the
- * result of a full, potentially expensive validation and / or change
- * creation. The list should be empty if there are no known problems.
- */
- List<RefactoringProblem> get finalProblems => _finalProblems;
-
- /**
- * The final status of the refactoring, that is, problems identified in the
- * result of a full, potentially expensive validation and / or change
- * creation. The list should be empty if there are no known problems.
- */
- void set finalProblems(List<RefactoringProblem> value) {
- assert(value != null);
- this._finalProblems = value;
- }
-
- /**
- * Data used to provide feedback to the user. The structure of the data is
- * dependent on the kind of refactoring being created. The data that is
- * returned is documented in the section titled Refactorings, labeled as
- * "Feedback".
- */
- RefactoringFeedback get feedback => _feedback;
-
- /**
- * Data used to provide feedback to the user. The structure of the data is
- * dependent on the kind of refactoring being created. The data that is
- * returned is documented in the section titled Refactorings, labeled as
- * "Feedback".
- */
- void set feedback(RefactoringFeedback value) {
- this._feedback = value;
- }
-
- /**
- * The changes that are to be applied to affect the refactoring. This field
- * can be omitted if there are problems that prevent a set of changes from
- * being computed, such as having no options specified for a refactoring that
- * requires them, or if only validation was requested.
- */
- SourceChange get change => _change;
-
- /**
- * The changes that are to be applied to affect the refactoring. This field
- * can be omitted if there are problems that prevent a set of changes from
- * being computed, such as having no options specified for a refactoring that
- * requires them, or if only validation was requested.
- */
- void set change(SourceChange value) {
- this._change = value;
- }
-
- /**
- * The ids of source edits that are not known to be valid. An edit is not
- * known to be valid if there was insufficient type information for the
- * plugin to be able to determine whether or not the code needs to be
- * modified, such as when a member is being renamed and there is a reference
- * to a member from an unknown type. This field can be omitted if the change
- * field is omitted or if there are no potential edits for the refactoring.
- */
- List<String> get potentialEdits => _potentialEdits;
-
- /**
- * The ids of source edits that are not known to be valid. An edit is not
- * known to be valid if there was insufficient type information for the
- * plugin to be able to determine whether or not the code needs to be
- * modified, such as when a member is being renamed and there is a reference
- * to a member from an unknown type. This field can be omitted if the change
- * field is omitted or if there are no potential edits for the refactoring.
- */
- void set potentialEdits(List<String> value) {
- this._potentialEdits = value;
- }
-
- EditGetRefactoringResult(
- List<RefactoringProblem> initialProblems,
- List<RefactoringProblem> optionsProblems,
- List<RefactoringProblem> finalProblems,
- {RefactoringFeedback feedback,
- SourceChange change,
- List<String> potentialEdits}) {
- this.initialProblems = initialProblems;
- this.optionsProblems = optionsProblems;
- this.finalProblems = finalProblems;
- this.feedback = feedback;
- this.change = change;
- this.potentialEdits = potentialEdits;
- }
-
- factory EditGetRefactoringResult.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<RefactoringProblem> initialProblems;
- if (json.containsKey("initialProblems")) {
- initialProblems = jsonDecoder.decodeList(
- jsonPath + ".initialProblems",
- json["initialProblems"],
- (String jsonPath, Object json) =>
- new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "initialProblems");
- }
- List<RefactoringProblem> optionsProblems;
- if (json.containsKey("optionsProblems")) {
- optionsProblems = jsonDecoder.decodeList(
- jsonPath + ".optionsProblems",
- json["optionsProblems"],
- (String jsonPath, Object json) =>
- new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "optionsProblems");
- }
- List<RefactoringProblem> finalProblems;
- if (json.containsKey("finalProblems")) {
- finalProblems = jsonDecoder.decodeList(
- jsonPath + ".finalProblems",
- json["finalProblems"],
- (String jsonPath, Object json) =>
- new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "finalProblems");
- }
- RefactoringFeedback feedback;
- if (json.containsKey("feedback")) {
- feedback = new RefactoringFeedback.fromJson(
- jsonDecoder, jsonPath + ".feedback", json["feedback"], json);
- }
- SourceChange change;
- if (json.containsKey("change")) {
- change = new SourceChange.fromJson(
- jsonDecoder, jsonPath + ".change", json["change"]);
- }
- List<String> potentialEdits;
- if (json.containsKey("potentialEdits")) {
- potentialEdits = jsonDecoder.decodeList(jsonPath + ".potentialEdits",
- json["potentialEdits"], jsonDecoder.decodeString);
- }
- return new EditGetRefactoringResult(
- initialProblems, optionsProblems, finalProblems,
- feedback: feedback, change: change, potentialEdits: potentialEdits);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edit.getRefactoring result", json);
- }
- }
-
- factory EditGetRefactoringResult.fromResponse(Response response) {
- return new EditGetRefactoringResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["initialProblems"] = initialProblems
- .map((RefactoringProblem value) => value.toJson())
- .toList();
- result["optionsProblems"] = optionsProblems
- .map((RefactoringProblem value) => value.toJson())
- .toList();
- result["finalProblems"] = finalProblems
- .map((RefactoringProblem value) => value.toJson())
- .toList();
- if (feedback != null) {
- result["feedback"] = feedback.toJson();
- }
- if (change != null) {
- result["change"] = change.toJson();
- }
- if (potentialEdits != null) {
- result["potentialEdits"] = potentialEdits;
- }
- return result;
- }
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is EditGetRefactoringResult) {
- return listEqual(initialProblems, other.initialProblems,
- (RefactoringProblem a, RefactoringProblem b) => a == b) &&
- listEqual(optionsProblems, other.optionsProblems,
- (RefactoringProblem a, RefactoringProblem b) => a == b) &&
- listEqual(finalProblems, other.finalProblems,
- (RefactoringProblem a, RefactoringProblem b) => a == b) &&
- feedback == other.feedback &&
- change == other.change &&
- listEqual(potentialEdits, other.potentialEdits,
- (String a, String b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, initialProblems.hashCode);
- hash = JenkinsSmiHash.combine(hash, optionsProblems.hashCode);
- hash = JenkinsSmiHash.combine(hash, finalProblems.hashCode);
- hash = JenkinsSmiHash.combine(hash, feedback.hashCode);
- hash = JenkinsSmiHash.combine(hash, change.hashCode);
- hash = JenkinsSmiHash.combine(hash, potentialEdits.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * Element
- *
- * {
- * "kind": ElementKind
- * "name": String
- * "location": optional Location
- * "flags": int
- * "parameters": optional String
- * "returnType": optional String
- * "typeParameters": optional String
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class Element implements HasToJson {
- static const int FLAG_ABSTRACT = 0x01;
- static const int FLAG_CONST = 0x02;
- static const int FLAG_FINAL = 0x04;
- static const int FLAG_STATIC = 0x08;
- static const int FLAG_PRIVATE = 0x10;
- static const int FLAG_DEPRECATED = 0x20;
-
- static int makeFlags(
- {isAbstract: false,
- isConst: false,
- isFinal: false,
- isStatic: false,
- isPrivate: false,
- isDeprecated: false}) {
- int flags = 0;
- if (isAbstract) flags |= FLAG_ABSTRACT;
- if (isConst) flags |= FLAG_CONST;
- if (isFinal) flags |= FLAG_FINAL;
- if (isStatic) flags |= FLAG_STATIC;
- if (isPrivate) flags |= FLAG_PRIVATE;
- if (isDeprecated) flags |= FLAG_DEPRECATED;
- return flags;
- }
-
- ElementKind _kind;
-
- String _name;
-
- Location _location;
-
- int _flags;
-
- String _parameters;
-
- String _returnType;
-
- String _typeParameters;
-
- /**
- * The kind of the element.
- */
- ElementKind get kind => _kind;
-
- /**
- * The kind of the element.
- */
- void set kind(ElementKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- /**
- * The name of the element. This is typically used as the label in the
- * outline.
- */
- String get name => _name;
-
- /**
- * The name of the element. This is typically used as the label in the
- * outline.
- */
- void set name(String value) {
- assert(value != null);
- this._name = value;
- }
-
- /**
- * The location of the name in the declaration of the element.
- */
- Location get location => _location;
-
- /**
- * The location of the name in the declaration of the element.
- */
- void set location(Location value) {
- this._location = value;
- }
-
- /**
- * A bit-map containing the following flags:
- *
- * - 0x01 - set if the element is explicitly or implicitly abstract
- * - 0x02 - set if the element was declared to be ‘const’
- * - 0x04 - set if the element was declared to be ‘final’
- * - 0x08 - set if the element is a static member of a class or is a
- * top-level function or field
- * - 0x10 - set if the element is private
- * - 0x20 - set if the element is deprecated
- */
- int get flags => _flags;
-
- /**
- * A bit-map containing the following flags:
- *
- * - 0x01 - set if the element is explicitly or implicitly abstract
- * - 0x02 - set if the element was declared to be ‘const’
- * - 0x04 - set if the element was declared to be ‘final’
- * - 0x08 - set if the element is a static member of a class or is a
- * top-level function or field
- * - 0x10 - set if the element is private
- * - 0x20 - set if the element is deprecated
- */
- void set flags(int value) {
- assert(value != null);
- this._flags = value;
- }
-
- /**
- * The parameter list for the element. If the element is not a method or
- * function this field will not be defined. If the element doesn't have
- * parameters (e.g. getter), this field will not be defined. If the element
- * has zero parameters, this field will have a value of "()".
- */
- String get parameters => _parameters;
-
- /**
- * The parameter list for the element. If the element is not a method or
- * function this field will not be defined. If the element doesn't have
- * parameters (e.g. getter), this field will not be defined. If the element
- * has zero parameters, this field will have a value of "()".
- */
- void set parameters(String value) {
- this._parameters = value;
- }
-
- /**
- * The return type of the element. If the element is not a method or function
- * this field will not be defined. If the element does not have a declared
- * return type, this field will contain an empty string.
- */
- String get returnType => _returnType;
-
- /**
- * The return type of the element. If the element is not a method or function
- * this field will not be defined. If the element does not have a declared
- * return type, this field will contain an empty string.
- */
- void set returnType(String value) {
- this._returnType = value;
- }
-
- /**
- * The type parameter list for the element. If the element doesn't have type
- * parameters, this field will not be defined.
- */
- String get typeParameters => _typeParameters;
-
- /**
- * The type parameter list for the element. If the element doesn't have type
- * parameters, this field will not be defined.
- */
- void set typeParameters(String value) {
- this._typeParameters = value;
- }
-
- Element(ElementKind kind, String name, int flags,
- {Location location,
- String parameters,
- String returnType,
- String typeParameters}) {
- this.kind = kind;
- this.name = name;
- this.location = location;
- this.flags = flags;
- this.parameters = parameters;
- this.returnType = returnType;
- this.typeParameters = typeParameters;
- }
-
- factory Element.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- ElementKind kind;
- if (json.containsKey("kind")) {
- kind = new ElementKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "name");
- }
- Location location;
- if (json.containsKey("location")) {
- location = new Location.fromJson(
- jsonDecoder, jsonPath + ".location", json["location"]);
- }
- int flags;
- if (json.containsKey("flags")) {
- flags = jsonDecoder.decodeInt(jsonPath + ".flags", json["flags"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "flags");
- }
- String parameters;
- if (json.containsKey("parameters")) {
- parameters = jsonDecoder.decodeString(
- jsonPath + ".parameters", json["parameters"]);
- }
- String returnType;
- if (json.containsKey("returnType")) {
- returnType = jsonDecoder.decodeString(
- jsonPath + ".returnType", json["returnType"]);
- }
- String typeParameters;
- if (json.containsKey("typeParameters")) {
- typeParameters = jsonDecoder.decodeString(
- jsonPath + ".typeParameters", json["typeParameters"]);
- }
- return new Element(kind, name, flags,
- location: location,
- parameters: parameters,
- returnType: returnType,
- typeParameters: typeParameters);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "Element", json);
- }
- }
-
- bool get isAbstract => (flags & FLAG_ABSTRACT) != 0;
- bool get isConst => (flags & FLAG_CONST) != 0;
- bool get isFinal => (flags & FLAG_FINAL) != 0;
- bool get isStatic => (flags & FLAG_STATIC) != 0;
- bool get isPrivate => (flags & FLAG_PRIVATE) != 0;
- bool get isDeprecated => (flags & FLAG_DEPRECATED) != 0;
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["kind"] = kind.toJson();
- result["name"] = name;
- if (location != null) {
- result["location"] = location.toJson();
- }
- result["flags"] = flags;
- if (parameters != null) {
- result["parameters"] = parameters;
- }
- if (returnType != null) {
- result["returnType"] = returnType;
- }
- if (typeParameters != null) {
- result["typeParameters"] = typeParameters;
- }
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is Element) {
- return kind == other.kind &&
- name == other.name &&
- location == other.location &&
- flags == other.flags &&
- parameters == other.parameters &&
- returnType == other.returnType &&
- typeParameters == other.typeParameters;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, location.hashCode);
- hash = JenkinsSmiHash.combine(hash, flags.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
- hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
- hash = JenkinsSmiHash.combine(hash, typeParameters.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * ElementKind
- *
- * 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
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ElementKind implements Enum {
- static const ElementKind CLASS = const ElementKind._("CLASS");
-
- static const ElementKind CLASS_TYPE_ALIAS =
- const ElementKind._("CLASS_TYPE_ALIAS");
-
- static const ElementKind COMPILATION_UNIT =
- const ElementKind._("COMPILATION_UNIT");
-
- static const ElementKind CONSTRUCTOR = const ElementKind._("CONSTRUCTOR");
-
- static const ElementKind ENUM = const ElementKind._("ENUM");
-
- static const ElementKind ENUM_CONSTANT = const ElementKind._("ENUM_CONSTANT");
-
- static const ElementKind FIELD = const ElementKind._("FIELD");
-
- static const ElementKind FILE = const ElementKind._("FILE");
-
- static const ElementKind FUNCTION = const ElementKind._("FUNCTION");
-
- static const ElementKind FUNCTION_TYPE_ALIAS =
- const ElementKind._("FUNCTION_TYPE_ALIAS");
-
- static const ElementKind GETTER = const ElementKind._("GETTER");
-
- static const ElementKind LABEL = const ElementKind._("LABEL");
-
- static const ElementKind LIBRARY = const ElementKind._("LIBRARY");
-
- static const ElementKind LOCAL_VARIABLE =
- const ElementKind._("LOCAL_VARIABLE");
-
- static const ElementKind METHOD = const ElementKind._("METHOD");
-
- static const ElementKind PARAMETER = const ElementKind._("PARAMETER");
-
- static const ElementKind PREFIX = const ElementKind._("PREFIX");
-
- static const ElementKind SETTER = const ElementKind._("SETTER");
-
- static const ElementKind TOP_LEVEL_VARIABLE =
- const ElementKind._("TOP_LEVEL_VARIABLE");
-
- static const ElementKind TYPE_PARAMETER =
- const ElementKind._("TYPE_PARAMETER");
-
- /**
- * Deprecated: support for tests was removed.
- */
- static const ElementKind UNIT_TEST_GROUP =
- const ElementKind._("UNIT_TEST_GROUP");
-
- /**
- * Deprecated: support for tests was removed.
- */
- static const ElementKind UNIT_TEST_TEST =
- const ElementKind._("UNIT_TEST_TEST");
-
- static const ElementKind UNKNOWN = const ElementKind._("UNKNOWN");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<ElementKind> VALUES = const <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
- ];
-
- @override
- final String name;
-
- const ElementKind._(this.name);
-
- factory ElementKind(String name) {
- switch (name) {
- case "CLASS":
- return CLASS;
- case "CLASS_TYPE_ALIAS":
- return CLASS_TYPE_ALIAS;
- case "COMPILATION_UNIT":
- return COMPILATION_UNIT;
- case "CONSTRUCTOR":
- return CONSTRUCTOR;
- case "ENUM":
- return ENUM;
- case "ENUM_CONSTANT":
- return ENUM_CONSTANT;
- case "FIELD":
- return FIELD;
- case "FILE":
- return FILE;
- case "FUNCTION":
- return FUNCTION;
- case "FUNCTION_TYPE_ALIAS":
- return FUNCTION_TYPE_ALIAS;
- case "GETTER":
- return GETTER;
- case "LABEL":
- return LABEL;
- case "LIBRARY":
- return LIBRARY;
- case "LOCAL_VARIABLE":
- return LOCAL_VARIABLE;
- case "METHOD":
- return METHOD;
- case "PARAMETER":
- return PARAMETER;
- case "PREFIX":
- return PREFIX;
- case "SETTER":
- return SETTER;
- case "TOP_LEVEL_VARIABLE":
- return TOP_LEVEL_VARIABLE;
- case "TYPE_PARAMETER":
- return TYPE_PARAMETER;
- case "UNIT_TEST_GROUP":
- return UNIT_TEST_GROUP;
- case "UNIT_TEST_TEST":
- return UNIT_TEST_TEST;
- case "UNKNOWN":
- return UNKNOWN;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory ElementKind.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new ElementKind(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "ElementKind", json);
- }
-
- @override
- String toString() => "ElementKind.$name";
-
- String toJson() => name;
-}
-
-/**
- * extractLocalVariable feedback
- *
- * {
- * "coveringExpressionOffsets": optional List<int>
- * "coveringExpressionLengths": optional List<int>
- * "names": List<String>
- * "offsets": List<int>
- * "lengths": List<int>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ExtractLocalVariableFeedback extends RefactoringFeedback {
- List<int> _coveringExpressionOffsets;
-
- List<int> _coveringExpressionLengths;
-
- List<String> _names;
-
- List<int> _offsets;
-
- List<int> _lengths;
-
- /**
- * The offsets of the expressions that cover the specified selection, from
- * the down most to the up most.
- */
- List<int> get coveringExpressionOffsets => _coveringExpressionOffsets;
-
- /**
- * The offsets of the expressions that cover the specified selection, from
- * the down most to the up most.
- */
- void set coveringExpressionOffsets(List<int> value) {
- this._coveringExpressionOffsets = value;
- }
-
- /**
- * The lengths of the expressions that cover the specified selection, from
- * the down most to the up most.
- */
- List<int> get coveringExpressionLengths => _coveringExpressionLengths;
-
- /**
- * The lengths of the expressions that cover the specified selection, from
- * the down most to the up most.
- */
- void set coveringExpressionLengths(List<int> value) {
- this._coveringExpressionLengths = value;
- }
-
- /**
- * The proposed names for the local variable.
- */
- List<String> get names => _names;
-
- /**
- * The proposed names for the local variable.
- */
- void set names(List<String> value) {
- assert(value != null);
- this._names = value;
- }
-
- /**
- * The offsets of the expressions that would be replaced by a reference to
- * the variable.
- */
- List<int> get offsets => _offsets;
-
- /**
- * The offsets of the expressions that would be replaced by a reference to
- * the variable.
- */
- void set offsets(List<int> value) {
- assert(value != null);
- this._offsets = value;
- }
-
- /**
- * The lengths of the expressions that would be replaced by a reference to
- * the variable. The lengths correspond to the offsets. In other words, for a
- * given expression, if the offset of that expression is offsets[i], then the
- * length of that expression is lengths[i].
- */
- List<int> get lengths => _lengths;
-
- /**
- * The lengths of the expressions that would be replaced by a reference to
- * the variable. The lengths correspond to the offsets. In other words, for a
- * given expression, if the offset of that expression is offsets[i], then the
- * length of that expression is lengths[i].
- */
- void set lengths(List<int> value) {
- assert(value != null);
- this._lengths = value;
- }
-
- ExtractLocalVariableFeedback(
- List<String> names, List<int> offsets, List<int> lengths,
- {List<int> coveringExpressionOffsets,
- List<int> coveringExpressionLengths}) {
- this.coveringExpressionOffsets = coveringExpressionOffsets;
- this.coveringExpressionLengths = coveringExpressionLengths;
- this.names = names;
- this.offsets = offsets;
- this.lengths = lengths;
- }
-
- factory ExtractLocalVariableFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<int> coveringExpressionOffsets;
- if (json.containsKey("coveringExpressionOffsets")) {
- coveringExpressionOffsets = jsonDecoder.decodeList(
- jsonPath + ".coveringExpressionOffsets",
- json["coveringExpressionOffsets"],
- jsonDecoder.decodeInt);
- }
- List<int> coveringExpressionLengths;
- if (json.containsKey("coveringExpressionLengths")) {
- coveringExpressionLengths = jsonDecoder.decodeList(
- jsonPath + ".coveringExpressionLengths",
- json["coveringExpressionLengths"],
- jsonDecoder.decodeInt);
- }
- List<String> names;
- if (json.containsKey("names")) {
- names = jsonDecoder.decodeList(
- jsonPath + ".names", json["names"], jsonDecoder.decodeString);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "names");
- }
- List<int> offsets;
- if (json.containsKey("offsets")) {
- offsets = jsonDecoder.decodeList(
- jsonPath + ".offsets", json["offsets"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offsets");
- }
- List<int> lengths;
- if (json.containsKey("lengths")) {
- lengths = jsonDecoder.decodeList(
- jsonPath + ".lengths", json["lengths"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "lengths");
- }
- return new ExtractLocalVariableFeedback(names, offsets, lengths,
- coveringExpressionOffsets: coveringExpressionOffsets,
- coveringExpressionLengths: coveringExpressionLengths);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "extractLocalVariable feedback", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- if (coveringExpressionOffsets != null) {
- result["coveringExpressionOffsets"] = coveringExpressionOffsets;
- }
- if (coveringExpressionLengths != null) {
- result["coveringExpressionLengths"] = coveringExpressionLengths;
- }
- result["names"] = names;
- result["offsets"] = offsets;
- result["lengths"] = lengths;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is ExtractLocalVariableFeedback) {
- return listEqual(coveringExpressionOffsets,
- other.coveringExpressionOffsets, (int a, int b) => a == b) &&
- listEqual(coveringExpressionLengths, other.coveringExpressionLengths,
- (int a, int b) => a == b) &&
- listEqual(names, other.names, (String a, String b) => a == b) &&
- listEqual(offsets, other.offsets, (int a, int b) => a == b) &&
- listEqual(lengths, other.lengths, (int a, int b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, coveringExpressionOffsets.hashCode);
- hash = JenkinsSmiHash.combine(hash, coveringExpressionLengths.hashCode);
- hash = JenkinsSmiHash.combine(hash, names.hashCode);
- hash = JenkinsSmiHash.combine(hash, offsets.hashCode);
- hash = JenkinsSmiHash.combine(hash, lengths.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * extractLocalVariable options
- *
- * {
- * "name": String
- * "extractAll": bool
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ExtractLocalVariableOptions extends RefactoringOptions {
- String _name;
-
- bool _extractAll;
-
- /**
- * The name that the local variable should be given.
- */
- String get name => _name;
-
- /**
- * The name that the local variable should be given.
- */
- void set name(String value) {
- assert(value != null);
- this._name = value;
- }
-
- /**
- * True if all occurrences of the expression within the scope in which the
- * variable will be defined should be replaced by a reference to the local
- * variable. The expression used to initiate the refactoring will always be
- * replaced.
- */
- bool get extractAll => _extractAll;
-
- /**
- * True if all occurrences of the expression within the scope in which the
- * variable will be defined should be replaced by a reference to the local
- * variable. The expression used to initiate the refactoring will always be
- * replaced.
- */
- void set extractAll(bool value) {
- assert(value != null);
- this._extractAll = value;
- }
-
- ExtractLocalVariableOptions(String name, bool extractAll) {
- this.name = name;
- this.extractAll = extractAll;
- }
-
- factory ExtractLocalVariableOptions.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "name");
- }
- bool extractAll;
- if (json.containsKey("extractAll")) {
- extractAll = jsonDecoder.decodeBool(
- jsonPath + ".extractAll", json["extractAll"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "extractAll");
- }
- return new ExtractLocalVariableOptions(name, extractAll);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "extractLocalVariable options", json);
- }
- }
-
- factory ExtractLocalVariableOptions.fromRefactoringParams(
- EditGetRefactoringParams refactoringParams, Request request) {
- return new ExtractLocalVariableOptions.fromJson(
- new RequestDecoder(request), "options", refactoringParams.options);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["name"] = name;
- result["extractAll"] = extractAll;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is ExtractLocalVariableOptions) {
- return name == other.name && extractAll == other.extractAll;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, extractAll.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * extractMethod feedback
- *
- * {
- * "offset": int
- * "length": int
- * "returnType": String
- * "names": List<String>
- * "canCreateGetter": bool
- * "parameters": List<RefactoringMethodParameter>
- * "offsets": List<int>
- * "lengths": List<int>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ExtractMethodFeedback extends RefactoringFeedback {
- int _offset;
-
- int _length;
-
- String _returnType;
-
- List<String> _names;
-
- bool _canCreateGetter;
-
- List<RefactoringMethodParameter> _parameters;
-
- List<int> _offsets;
-
- List<int> _lengths;
-
- /**
- * The offset to the beginning of the expression or statements that will be
- * extracted.
- */
- int get offset => _offset;
-
- /**
- * The offset to the beginning of the expression or statements that will be
- * extracted.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the expression or statements that will be extracted.
- */
- int get length => _length;
-
- /**
- * The length of the expression or statements that will be extracted.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * The proposed return type for the method. If the returned element does not
- * have a declared return type, this field will contain an empty string.
- */
- String get returnType => _returnType;
-
- /**
- * The proposed return type for the method. If the returned element does not
- * have a declared return type, this field will contain an empty string.
- */
- void set returnType(String value) {
- assert(value != null);
- this._returnType = value;
- }
-
- /**
- * The proposed names for the method.
- */
- List<String> get names => _names;
-
- /**
- * The proposed names for the method.
- */
- void set names(List<String> value) {
- assert(value != null);
- this._names = value;
- }
-
- /**
- * True if a getter could be created rather than a method.
- */
- bool get canCreateGetter => _canCreateGetter;
-
- /**
- * True if a getter could be created rather than a method.
- */
- void set canCreateGetter(bool value) {
- assert(value != null);
- this._canCreateGetter = value;
- }
-
- /**
- * The proposed parameters for the method.
- */
- List<RefactoringMethodParameter> get parameters => _parameters;
-
- /**
- * The proposed parameters for the method.
- */
- void set parameters(List<RefactoringMethodParameter> value) {
- assert(value != null);
- this._parameters = value;
- }
-
- /**
- * The offsets of the expressions or statements that would be replaced by an
- * invocation of the method.
- */
- List<int> get offsets => _offsets;
-
- /**
- * The offsets of the expressions or statements that would be replaced by an
- * invocation of the method.
- */
- void set offsets(List<int> value) {
- assert(value != null);
- this._offsets = value;
- }
-
- /**
- * The lengths of the expressions or statements that would be replaced by an
- * invocation of the method. The lengths correspond to the offsets. In other
- * words, for a given expression (or block of statements), if the offset of
- * that expression is offsets[i], then the length of that expression is
- * lengths[i].
- */
- List<int> get lengths => _lengths;
-
- /**
- * The lengths of the expressions or statements that would be replaced by an
- * invocation of the method. The lengths correspond to the offsets. In other
- * words, for a given expression (or block of statements), if the offset of
- * that expression is offsets[i], then the length of that expression is
- * lengths[i].
- */
- void set lengths(List<int> value) {
- assert(value != null);
- this._lengths = value;
- }
-
- ExtractMethodFeedback(
- int offset,
- int length,
- String returnType,
- List<String> names,
- bool canCreateGetter,
- List<RefactoringMethodParameter> parameters,
- List<int> offsets,
- List<int> lengths) {
- this.offset = offset;
- this.length = length;
- this.returnType = returnType;
- this.names = names;
- this.canCreateGetter = canCreateGetter;
- this.parameters = parameters;
- this.offsets = offsets;
- this.lengths = lengths;
- }
-
- factory ExtractMethodFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- String returnType;
- if (json.containsKey("returnType")) {
- returnType = jsonDecoder.decodeString(
- jsonPath + ".returnType", json["returnType"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "returnType");
- }
- List<String> names;
- if (json.containsKey("names")) {
- names = jsonDecoder.decodeList(
- jsonPath + ".names", json["names"], jsonDecoder.decodeString);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "names");
- }
- bool canCreateGetter;
- if (json.containsKey("canCreateGetter")) {
- canCreateGetter = jsonDecoder.decodeBool(
- jsonPath + ".canCreateGetter", json["canCreateGetter"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "canCreateGetter");
- }
- List<RefactoringMethodParameter> parameters;
- if (json.containsKey("parameters")) {
- parameters = jsonDecoder.decodeList(
- jsonPath + ".parameters",
- json["parameters"],
- (String jsonPath, Object json) =>
- new RefactoringMethodParameter.fromJson(
- jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "parameters");
- }
- List<int> offsets;
- if (json.containsKey("offsets")) {
- offsets = jsonDecoder.decodeList(
- jsonPath + ".offsets", json["offsets"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offsets");
- }
- List<int> lengths;
- if (json.containsKey("lengths")) {
- lengths = jsonDecoder.decodeList(
- jsonPath + ".lengths", json["lengths"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "lengths");
- }
- return new ExtractMethodFeedback(offset, length, returnType, names,
- canCreateGetter, parameters, offsets, lengths);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "extractMethod feedback", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["offset"] = offset;
- result["length"] = length;
- result["returnType"] = returnType;
- result["names"] = names;
- result["canCreateGetter"] = canCreateGetter;
- result["parameters"] = parameters
- .map((RefactoringMethodParameter value) => value.toJson())
- .toList();
- result["offsets"] = offsets;
- result["lengths"] = lengths;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is ExtractMethodFeedback) {
- return offset == other.offset &&
- length == other.length &&
- returnType == other.returnType &&
- listEqual(names, other.names, (String a, String b) => a == b) &&
- canCreateGetter == other.canCreateGetter &&
- listEqual(
- parameters,
- other.parameters,
- (RefactoringMethodParameter a, RefactoringMethodParameter b) =>
- a == b) &&
- listEqual(offsets, other.offsets, (int a, int b) => a == b) &&
- listEqual(lengths, other.lengths, (int a, int b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
- hash = JenkinsSmiHash.combine(hash, names.hashCode);
- hash = JenkinsSmiHash.combine(hash, canCreateGetter.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
- hash = JenkinsSmiHash.combine(hash, offsets.hashCode);
- hash = JenkinsSmiHash.combine(hash, lengths.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * extractMethod options
- *
- * {
- * "returnType": String
- * "createGetter": bool
- * "name": String
- * "parameters": List<RefactoringMethodParameter>
- * "extractAll": bool
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class ExtractMethodOptions extends RefactoringOptions {
- String _returnType;
-
- bool _createGetter;
-
- String _name;
-
- List<RefactoringMethodParameter> _parameters;
-
- bool _extractAll;
-
- /**
- * The return type that should be defined for the method.
- */
- String get returnType => _returnType;
-
- /**
- * The return type that should be defined for the method.
- */
- void set returnType(String value) {
- assert(value != null);
- this._returnType = value;
- }
-
- /**
- * True if a getter should be created rather than a method. It is an error if
- * this field is true and the list of parameters is non-empty.
- */
- bool get createGetter => _createGetter;
-
- /**
- * True if a getter should be created rather than a method. It is an error if
- * this field is true and the list of parameters is non-empty.
- */
- void set createGetter(bool value) {
- assert(value != null);
- this._createGetter = value;
- }
-
- /**
- * The name that the method should be given.
- */
- String get name => _name;
-
- /**
- * The name that the method should be given.
- */
- void set name(String value) {
- assert(value != null);
- this._name = value;
- }
-
- /**
- * The parameters that should be defined for the method.
- *
- * It is an error if a REQUIRED or NAMED parameter follows a POSITIONAL
- * parameter. It is an error if a REQUIRED or POSITIONAL parameter follows a
- * NAMED parameter.
- *
- * - To change the order and/or update proposed parameters, add parameters
- * with the same identifiers as proposed.
- * - To add new parameters, omit their identifier.
- * - To remove some parameters, omit them in this list.
- */
- List<RefactoringMethodParameter> get parameters => _parameters;
-
- /**
- * The parameters that should be defined for the method.
- *
- * It is an error if a REQUIRED or NAMED parameter follows a POSITIONAL
- * parameter. It is an error if a REQUIRED or POSITIONAL parameter follows a
- * NAMED parameter.
- *
- * - To change the order and/or update proposed parameters, add parameters
- * with the same identifiers as proposed.
- * - To add new parameters, omit their identifier.
- * - To remove some parameters, omit them in this list.
- */
- void set parameters(List<RefactoringMethodParameter> value) {
- assert(value != null);
- this._parameters = value;
- }
-
- /**
- * True if all occurrences of the expression or statements should be replaced
- * by an invocation of the method. The expression or statements used to
- * initiate the refactoring will always be replaced.
- */
- bool get extractAll => _extractAll;
-
- /**
- * True if all occurrences of the expression or statements should be replaced
- * by an invocation of the method. The expression or statements used to
- * initiate the refactoring will always be replaced.
- */
- void set extractAll(bool value) {
- assert(value != null);
- this._extractAll = value;
- }
-
- ExtractMethodOptions(String returnType, bool createGetter, String name,
- List<RefactoringMethodParameter> parameters, bool extractAll) {
- this.returnType = returnType;
- this.createGetter = createGetter;
- this.name = name;
- this.parameters = parameters;
- this.extractAll = extractAll;
- }
-
- factory ExtractMethodOptions.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String returnType;
- if (json.containsKey("returnType")) {
- returnType = jsonDecoder.decodeString(
- jsonPath + ".returnType", json["returnType"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "returnType");
- }
- bool createGetter;
- if (json.containsKey("createGetter")) {
- createGetter = jsonDecoder.decodeBool(
- jsonPath + ".createGetter", json["createGetter"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "createGetter");
- }
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "name");
- }
- List<RefactoringMethodParameter> parameters;
- if (json.containsKey("parameters")) {
- parameters = jsonDecoder.decodeList(
- jsonPath + ".parameters",
- json["parameters"],
- (String jsonPath, Object json) =>
- new RefactoringMethodParameter.fromJson(
- jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "parameters");
- }
- bool extractAll;
- if (json.containsKey("extractAll")) {
- extractAll = jsonDecoder.decodeBool(
- jsonPath + ".extractAll", json["extractAll"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "extractAll");
- }
- return new ExtractMethodOptions(
- returnType, createGetter, name, parameters, extractAll);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "extractMethod options", json);
- }
- }
-
- factory ExtractMethodOptions.fromRefactoringParams(
- EditGetRefactoringParams refactoringParams, Request request) {
- return new ExtractMethodOptions.fromJson(
- new RequestDecoder(request), "options", refactoringParams.options);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["returnType"] = returnType;
- result["createGetter"] = createGetter;
- result["name"] = name;
- result["parameters"] = parameters
- .map((RefactoringMethodParameter value) => value.toJson())
- .toList();
- result["extractAll"] = extractAll;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is ExtractMethodOptions) {
- return returnType == other.returnType &&
- createGetter == other.createGetter &&
- name == other.name &&
- listEqual(
- parameters,
- other.parameters,
- (RefactoringMethodParameter a, RefactoringMethodParameter b) =>
- a == b) &&
- extractAll == other.extractAll;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
- hash = JenkinsSmiHash.combine(hash, createGetter.hashCode);
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
- hash = JenkinsSmiHash.combine(hash, extractAll.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * FoldingKind
- *
- * enum {
- * COMMENT
- * CLASS_MEMBER
- * DIRECTIVES
- * DOCUMENTATION_COMMENT
- * TOP_LEVEL_DECLARATION
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class FoldingKind implements Enum {
- static const FoldingKind COMMENT = const FoldingKind._("COMMENT");
-
- static const FoldingKind CLASS_MEMBER = const FoldingKind._("CLASS_MEMBER");
-
- static const FoldingKind DIRECTIVES = const FoldingKind._("DIRECTIVES");
-
- static const FoldingKind DOCUMENTATION_COMMENT =
- const FoldingKind._("DOCUMENTATION_COMMENT");
-
- static const FoldingKind TOP_LEVEL_DECLARATION =
- const FoldingKind._("TOP_LEVEL_DECLARATION");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<FoldingKind> VALUES = const <FoldingKind>[
- COMMENT,
- CLASS_MEMBER,
- DIRECTIVES,
- DOCUMENTATION_COMMENT,
- TOP_LEVEL_DECLARATION
- ];
-
- @override
- final String name;
-
- const FoldingKind._(this.name);
-
- factory FoldingKind(String name) {
- switch (name) {
- case "COMMENT":
- return COMMENT;
- case "CLASS_MEMBER":
- return CLASS_MEMBER;
- case "DIRECTIVES":
- return DIRECTIVES;
- case "DOCUMENTATION_COMMENT":
- return DOCUMENTATION_COMMENT;
- case "TOP_LEVEL_DECLARATION":
- return TOP_LEVEL_DECLARATION;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory FoldingKind.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new FoldingKind(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "FoldingKind", json);
- }
-
- @override
- String toString() => "FoldingKind.$name";
-
- String toJson() => name;
-}
-
-/**
- * FoldingRegion
- *
- * {
- * "kind": FoldingKind
- * "offset": int
- * "length": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class FoldingRegion implements HasToJson {
- FoldingKind _kind;
-
- int _offset;
-
- int _length;
-
- /**
- * The kind of the region.
- */
- FoldingKind get kind => _kind;
-
- /**
- * The kind of the region.
- */
- void set kind(FoldingKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- /**
- * The offset of the region to be folded.
- */
- int get offset => _offset;
-
- /**
- * The offset of the region to be folded.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the region to be folded.
- */
- int get length => _length;
-
- /**
- * The length of the region to be folded.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- FoldingRegion(FoldingKind kind, int offset, int length) {
- this.kind = kind;
- this.offset = offset;
- this.length = length;
- }
-
- factory FoldingRegion.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- FoldingKind kind;
- if (json.containsKey("kind")) {
- kind = new FoldingKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- return new FoldingRegion(kind, offset, length);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "FoldingRegion", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["kind"] = kind.toJson();
- result["offset"] = offset;
- result["length"] = length;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is FoldingRegion) {
- return kind == other.kind &&
- offset == other.offset &&
- length == other.length;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * HighlightRegion
- *
- * {
- * "type": HighlightRegionType
- * "offset": int
- * "length": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class HighlightRegion implements HasToJson {
- HighlightRegionType _type;
-
- int _offset;
-
- int _length;
-
- /**
- * The type of highlight associated with the region.
- */
- HighlightRegionType get type => _type;
-
- /**
- * The type of highlight associated with the region.
- */
- void set type(HighlightRegionType value) {
- assert(value != null);
- this._type = value;
- }
-
- /**
- * The offset of the region to be highlighted.
- */
- int get offset => _offset;
-
- /**
- * The offset of the region to be highlighted.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the region to be highlighted.
- */
- int get length => _length;
-
- /**
- * The length of the region to be highlighted.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- HighlightRegion(HighlightRegionType type, int offset, int length) {
- this.type = type;
- this.offset = offset;
- this.length = length;
- }
-
- factory HighlightRegion.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- HighlightRegionType type;
- if (json.containsKey("type")) {
- type = new HighlightRegionType.fromJson(
- jsonDecoder, jsonPath + ".type", json["type"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "type");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- return new HighlightRegion(type, offset, length);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "HighlightRegion", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["type"] = type.toJson();
- result["offset"] = offset;
- result["length"] = length;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is HighlightRegion) {
- return type == other.type &&
- offset == other.offset &&
- length == other.length;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, type.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * HighlightRegionType
- *
- * 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
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class HighlightRegionType implements Enum {
- static const HighlightRegionType ANNOTATION =
- const HighlightRegionType._("ANNOTATION");
-
- static const HighlightRegionType BUILT_IN =
- const HighlightRegionType._("BUILT_IN");
-
- static const HighlightRegionType CLASS = const HighlightRegionType._("CLASS");
-
- static const HighlightRegionType COMMENT_BLOCK =
- const HighlightRegionType._("COMMENT_BLOCK");
-
- static const HighlightRegionType COMMENT_DOCUMENTATION =
- const HighlightRegionType._("COMMENT_DOCUMENTATION");
-
- static const HighlightRegionType COMMENT_END_OF_LINE =
- const HighlightRegionType._("COMMENT_END_OF_LINE");
-
- static const HighlightRegionType CONSTRUCTOR =
- const HighlightRegionType._("CONSTRUCTOR");
-
- static const HighlightRegionType DIRECTIVE =
- const HighlightRegionType._("DIRECTIVE");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType DYNAMIC_TYPE =
- const HighlightRegionType._("DYNAMIC_TYPE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType DYNAMIC_LOCAL_VARIABLE_DECLARATION =
- const HighlightRegionType._("DYNAMIC_LOCAL_VARIABLE_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType DYNAMIC_LOCAL_VARIABLE_REFERENCE =
- const HighlightRegionType._("DYNAMIC_LOCAL_VARIABLE_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType DYNAMIC_PARAMETER_DECLARATION =
- const HighlightRegionType._("DYNAMIC_PARAMETER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType DYNAMIC_PARAMETER_REFERENCE =
- const HighlightRegionType._("DYNAMIC_PARAMETER_REFERENCE");
-
- static const HighlightRegionType ENUM = const HighlightRegionType._("ENUM");
-
- static const HighlightRegionType ENUM_CONSTANT =
- const HighlightRegionType._("ENUM_CONSTANT");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType FIELD = const HighlightRegionType._("FIELD");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType FIELD_STATIC =
- const HighlightRegionType._("FIELD_STATIC");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType FUNCTION =
- const HighlightRegionType._("FUNCTION");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType FUNCTION_DECLARATION =
- const HighlightRegionType._("FUNCTION_DECLARATION");
-
- static const HighlightRegionType FUNCTION_TYPE_ALIAS =
- const HighlightRegionType._("FUNCTION_TYPE_ALIAS");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType GETTER_DECLARATION =
- const HighlightRegionType._("GETTER_DECLARATION");
-
- static const HighlightRegionType IDENTIFIER_DEFAULT =
- const HighlightRegionType._("IDENTIFIER_DEFAULT");
-
- static const HighlightRegionType IMPORT_PREFIX =
- const HighlightRegionType._("IMPORT_PREFIX");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_FIELD_DECLARATION =
- const HighlightRegionType._("INSTANCE_FIELD_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_FIELD_REFERENCE =
- const HighlightRegionType._("INSTANCE_FIELD_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_GETTER_DECLARATION =
- const HighlightRegionType._("INSTANCE_GETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_GETTER_REFERENCE =
- const HighlightRegionType._("INSTANCE_GETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_METHOD_DECLARATION =
- const HighlightRegionType._("INSTANCE_METHOD_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_METHOD_REFERENCE =
- const HighlightRegionType._("INSTANCE_METHOD_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_SETTER_DECLARATION =
- const HighlightRegionType._("INSTANCE_SETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INSTANCE_SETTER_REFERENCE =
- const HighlightRegionType._("INSTANCE_SETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType INVALID_STRING_ESCAPE =
- const HighlightRegionType._("INVALID_STRING_ESCAPE");
-
- static const HighlightRegionType KEYWORD =
- const HighlightRegionType._("KEYWORD");
-
- static const HighlightRegionType LABEL = const HighlightRegionType._("LABEL");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType LIBRARY_NAME =
- const HighlightRegionType._("LIBRARY_NAME");
-
- static const HighlightRegionType LITERAL_BOOLEAN =
- const HighlightRegionType._("LITERAL_BOOLEAN");
-
- static const HighlightRegionType LITERAL_DOUBLE =
- const HighlightRegionType._("LITERAL_DOUBLE");
-
- static const HighlightRegionType LITERAL_INTEGER =
- const HighlightRegionType._("LITERAL_INTEGER");
-
- static const HighlightRegionType LITERAL_LIST =
- const HighlightRegionType._("LITERAL_LIST");
-
- static const HighlightRegionType LITERAL_MAP =
- const HighlightRegionType._("LITERAL_MAP");
-
- static const HighlightRegionType LITERAL_STRING =
- const HighlightRegionType._("LITERAL_STRING");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType LOCAL_FUNCTION_DECLARATION =
- const HighlightRegionType._("LOCAL_FUNCTION_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType LOCAL_FUNCTION_REFERENCE =
- const HighlightRegionType._("LOCAL_FUNCTION_REFERENCE");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType LOCAL_VARIABLE =
- const HighlightRegionType._("LOCAL_VARIABLE");
-
- static const HighlightRegionType LOCAL_VARIABLE_DECLARATION =
- const HighlightRegionType._("LOCAL_VARIABLE_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType LOCAL_VARIABLE_REFERENCE =
- const HighlightRegionType._("LOCAL_VARIABLE_REFERENCE");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType METHOD =
- const HighlightRegionType._("METHOD");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType METHOD_DECLARATION =
- const HighlightRegionType._("METHOD_DECLARATION");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType METHOD_DECLARATION_STATIC =
- const HighlightRegionType._("METHOD_DECLARATION_STATIC");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType METHOD_STATIC =
- const HighlightRegionType._("METHOD_STATIC");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType PARAMETER =
- const HighlightRegionType._("PARAMETER");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType SETTER_DECLARATION =
- const HighlightRegionType._("SETTER_DECLARATION");
-
- /**
- * Only for version 1 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_VARIABLE =
- const HighlightRegionType._("TOP_LEVEL_VARIABLE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType PARAMETER_DECLARATION =
- const HighlightRegionType._("PARAMETER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType PARAMETER_REFERENCE =
- const HighlightRegionType._("PARAMETER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_FIELD_DECLARATION =
- const HighlightRegionType._("STATIC_FIELD_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_GETTER_DECLARATION =
- const HighlightRegionType._("STATIC_GETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_GETTER_REFERENCE =
- const HighlightRegionType._("STATIC_GETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_METHOD_DECLARATION =
- const HighlightRegionType._("STATIC_METHOD_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_METHOD_REFERENCE =
- const HighlightRegionType._("STATIC_METHOD_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_SETTER_DECLARATION =
- const HighlightRegionType._("STATIC_SETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType STATIC_SETTER_REFERENCE =
- const HighlightRegionType._("STATIC_SETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_FUNCTION_DECLARATION =
- const HighlightRegionType._("TOP_LEVEL_FUNCTION_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_FUNCTION_REFERENCE =
- const HighlightRegionType._("TOP_LEVEL_FUNCTION_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_GETTER_DECLARATION =
- const HighlightRegionType._("TOP_LEVEL_GETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_GETTER_REFERENCE =
- const HighlightRegionType._("TOP_LEVEL_GETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_SETTER_DECLARATION =
- const HighlightRegionType._("TOP_LEVEL_SETTER_DECLARATION");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_SETTER_REFERENCE =
- const HighlightRegionType._("TOP_LEVEL_SETTER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType TOP_LEVEL_VARIABLE_DECLARATION =
- const HighlightRegionType._("TOP_LEVEL_VARIABLE_DECLARATION");
-
- static const HighlightRegionType TYPE_NAME_DYNAMIC =
- const HighlightRegionType._("TYPE_NAME_DYNAMIC");
-
- static const HighlightRegionType TYPE_PARAMETER =
- const HighlightRegionType._("TYPE_PARAMETER");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType UNRESOLVED_INSTANCE_MEMBER_REFERENCE =
- const HighlightRegionType._("UNRESOLVED_INSTANCE_MEMBER_REFERENCE");
-
- /**
- * Only for version 2 of highlight.
- */
- static const HighlightRegionType VALID_STRING_ESCAPE =
- const HighlightRegionType._("VALID_STRING_ESCAPE");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<HighlightRegionType> VALUES = const <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
- ];
-
- @override
- final String name;
-
- const HighlightRegionType._(this.name);
-
- factory HighlightRegionType(String name) {
- switch (name) {
- case "ANNOTATION":
- return ANNOTATION;
- case "BUILT_IN":
- return BUILT_IN;
- case "CLASS":
- return CLASS;
- case "COMMENT_BLOCK":
- return COMMENT_BLOCK;
- case "COMMENT_DOCUMENTATION":
- return COMMENT_DOCUMENTATION;
- case "COMMENT_END_OF_LINE":
- return COMMENT_END_OF_LINE;
- case "CONSTRUCTOR":
- return CONSTRUCTOR;
- case "DIRECTIVE":
- return DIRECTIVE;
- case "DYNAMIC_TYPE":
- return DYNAMIC_TYPE;
- case "DYNAMIC_LOCAL_VARIABLE_DECLARATION":
- return DYNAMIC_LOCAL_VARIABLE_DECLARATION;
- case "DYNAMIC_LOCAL_VARIABLE_REFERENCE":
- return DYNAMIC_LOCAL_VARIABLE_REFERENCE;
- case "DYNAMIC_PARAMETER_DECLARATION":
- return DYNAMIC_PARAMETER_DECLARATION;
- case "DYNAMIC_PARAMETER_REFERENCE":
- return DYNAMIC_PARAMETER_REFERENCE;
- case "ENUM":
- return ENUM;
- case "ENUM_CONSTANT":
- return ENUM_CONSTANT;
- case "FIELD":
- return FIELD;
- case "FIELD_STATIC":
- return FIELD_STATIC;
- case "FUNCTION":
- return FUNCTION;
- case "FUNCTION_DECLARATION":
- return FUNCTION_DECLARATION;
- case "FUNCTION_TYPE_ALIAS":
- return FUNCTION_TYPE_ALIAS;
- case "GETTER_DECLARATION":
- return GETTER_DECLARATION;
- case "IDENTIFIER_DEFAULT":
- return IDENTIFIER_DEFAULT;
- case "IMPORT_PREFIX":
- return IMPORT_PREFIX;
- case "INSTANCE_FIELD_DECLARATION":
- return INSTANCE_FIELD_DECLARATION;
- case "INSTANCE_FIELD_REFERENCE":
- return INSTANCE_FIELD_REFERENCE;
- case "INSTANCE_GETTER_DECLARATION":
- return INSTANCE_GETTER_DECLARATION;
- case "INSTANCE_GETTER_REFERENCE":
- return INSTANCE_GETTER_REFERENCE;
- case "INSTANCE_METHOD_DECLARATION":
- return INSTANCE_METHOD_DECLARATION;
- case "INSTANCE_METHOD_REFERENCE":
- return INSTANCE_METHOD_REFERENCE;
- case "INSTANCE_SETTER_DECLARATION":
- return INSTANCE_SETTER_DECLARATION;
- case "INSTANCE_SETTER_REFERENCE":
- return INSTANCE_SETTER_REFERENCE;
- case "INVALID_STRING_ESCAPE":
- return INVALID_STRING_ESCAPE;
- case "KEYWORD":
- return KEYWORD;
- case "LABEL":
- return LABEL;
- case "LIBRARY_NAME":
- return LIBRARY_NAME;
- case "LITERAL_BOOLEAN":
- return LITERAL_BOOLEAN;
- case "LITERAL_DOUBLE":
- return LITERAL_DOUBLE;
- case "LITERAL_INTEGER":
- return LITERAL_INTEGER;
- case "LITERAL_LIST":
- return LITERAL_LIST;
- case "LITERAL_MAP":
- return LITERAL_MAP;
- case "LITERAL_STRING":
- return LITERAL_STRING;
- case "LOCAL_FUNCTION_DECLARATION":
- return LOCAL_FUNCTION_DECLARATION;
- case "LOCAL_FUNCTION_REFERENCE":
- return LOCAL_FUNCTION_REFERENCE;
- case "LOCAL_VARIABLE":
- return LOCAL_VARIABLE;
- case "LOCAL_VARIABLE_DECLARATION":
- return LOCAL_VARIABLE_DECLARATION;
- case "LOCAL_VARIABLE_REFERENCE":
- return LOCAL_VARIABLE_REFERENCE;
- case "METHOD":
- return METHOD;
- case "METHOD_DECLARATION":
- return METHOD_DECLARATION;
- case "METHOD_DECLARATION_STATIC":
- return METHOD_DECLARATION_STATIC;
- case "METHOD_STATIC":
- return METHOD_STATIC;
- case "PARAMETER":
- return PARAMETER;
- case "SETTER_DECLARATION":
- return SETTER_DECLARATION;
- case "TOP_LEVEL_VARIABLE":
- return TOP_LEVEL_VARIABLE;
- case "PARAMETER_DECLARATION":
- return PARAMETER_DECLARATION;
- case "PARAMETER_REFERENCE":
- return PARAMETER_REFERENCE;
- case "STATIC_FIELD_DECLARATION":
- return STATIC_FIELD_DECLARATION;
- case "STATIC_GETTER_DECLARATION":
- return STATIC_GETTER_DECLARATION;
- case "STATIC_GETTER_REFERENCE":
- return STATIC_GETTER_REFERENCE;
- case "STATIC_METHOD_DECLARATION":
- return STATIC_METHOD_DECLARATION;
- case "STATIC_METHOD_REFERENCE":
- return STATIC_METHOD_REFERENCE;
- case "STATIC_SETTER_DECLARATION":
- return STATIC_SETTER_DECLARATION;
- case "STATIC_SETTER_REFERENCE":
- return STATIC_SETTER_REFERENCE;
- case "TOP_LEVEL_FUNCTION_DECLARATION":
- return TOP_LEVEL_FUNCTION_DECLARATION;
- case "TOP_LEVEL_FUNCTION_REFERENCE":
- return TOP_LEVEL_FUNCTION_REFERENCE;
- case "TOP_LEVEL_GETTER_DECLARATION":
- return TOP_LEVEL_GETTER_DECLARATION;
- case "TOP_LEVEL_GETTER_REFERENCE":
- return TOP_LEVEL_GETTER_REFERENCE;
- case "TOP_LEVEL_SETTER_DECLARATION":
- return TOP_LEVEL_SETTER_DECLARATION;
- case "TOP_LEVEL_SETTER_REFERENCE":
- return TOP_LEVEL_SETTER_REFERENCE;
- case "TOP_LEVEL_VARIABLE_DECLARATION":
- return TOP_LEVEL_VARIABLE_DECLARATION;
- case "TYPE_NAME_DYNAMIC":
- return TYPE_NAME_DYNAMIC;
- case "TYPE_PARAMETER":
- return TYPE_PARAMETER;
- case "UNRESOLVED_INSTANCE_MEMBER_REFERENCE":
- return UNRESOLVED_INSTANCE_MEMBER_REFERENCE;
- case "VALID_STRING_ESCAPE":
- return VALID_STRING_ESCAPE;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory HighlightRegionType.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new HighlightRegionType(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "HighlightRegionType", json);
- }
-
- @override
- String toString() => "HighlightRegionType.$name";
-
- String toJson() => name;
-}
-
-/**
- * inlineLocalVariable feedback
- *
- * {
- * "name": String
- * "occurrences": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class InlineLocalVariableFeedback extends RefactoringFeedback {
- String _name;
-
- int _occurrences;
-
- /**
- * The name of the variable being inlined.
- */
- String get name => _name;
-
- /**
- * The name of the variable being inlined.
- */
- void set name(String value) {
- assert(value != null);
- this._name = value;
- }
-
- /**
- * The number of times the variable occurs.
- */
- int get occurrences => _occurrences;
-
- /**
- * The number of times the variable occurs.
- */
- void set occurrences(int value) {
- assert(value != null);
- this._occurrences = value;
- }
-
- InlineLocalVariableFeedback(String name, int occurrences) {
- this.name = name;
- this.occurrences = occurrences;
- }
-
- factory InlineLocalVariableFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "name");
- }
- int occurrences;
- if (json.containsKey("occurrences")) {
- occurrences = jsonDecoder.decodeInt(
- jsonPath + ".occurrences", json["occurrences"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "occurrences");
- }
- return new InlineLocalVariableFeedback(name, occurrences);
- } else {
- throw jsonDecoder.mismatch(
- jsonPath, "inlineLocalVariable feedback", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["name"] = name;
- result["occurrences"] = occurrences;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is InlineLocalVariableFeedback) {
- return name == other.name && occurrences == other.occurrences;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, occurrences.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * inlineLocalVariable options
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class InlineLocalVariableOptions extends RefactoringOptions
- implements HasToJson {
- @override
- bool operator ==(other) {
- if (other is InlineLocalVariableOptions) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 540364977;
- }
-}
-
-/**
- * inlineMethod feedback
- *
- * {
- * "className": optional String
- * "methodName": String
- * "isDeclaration": bool
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class InlineMethodFeedback extends RefactoringFeedback {
- String _className;
-
- String _methodName;
-
- bool _isDeclaration;
-
- /**
- * The name of the class enclosing the method being inlined. If not a class
- * member is being inlined, this field will be absent.
- */
- String get className => _className;
-
- /**
- * The name of the class enclosing the method being inlined. If not a class
- * member is being inlined, this field will be absent.
- */
- void set className(String value) {
- this._className = value;
- }
-
- /**
- * The name of the method (or function) being inlined.
- */
- String get methodName => _methodName;
-
- /**
- * The name of the method (or function) being inlined.
- */
- void set methodName(String value) {
- assert(value != null);
- this._methodName = value;
- }
-
- /**
- * True if the declaration of the method is selected and all references
- * should be inlined.
- */
- bool get isDeclaration => _isDeclaration;
-
- /**
- * True if the declaration of the method is selected and all references
- * should be inlined.
- */
- void set isDeclaration(bool value) {
- assert(value != null);
- this._isDeclaration = value;
- }
-
- InlineMethodFeedback(String methodName, bool isDeclaration,
- {String className}) {
- this.className = className;
- this.methodName = methodName;
- this.isDeclaration = isDeclaration;
- }
-
- factory InlineMethodFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String className;
- if (json.containsKey("className")) {
- className = jsonDecoder.decodeString(
- jsonPath + ".className", json["className"]);
- }
- String methodName;
- if (json.containsKey("methodName")) {
- methodName = jsonDecoder.decodeString(
- jsonPath + ".methodName", json["methodName"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "methodName");
- }
- bool isDeclaration;
- if (json.containsKey("isDeclaration")) {
- isDeclaration = jsonDecoder.decodeBool(
- jsonPath + ".isDeclaration", json["isDeclaration"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "isDeclaration");
- }
- return new InlineMethodFeedback(methodName, isDeclaration,
- className: className);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "inlineMethod feedback", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- if (className != null) {
- result["className"] = className;
- }
- result["methodName"] = methodName;
- result["isDeclaration"] = isDeclaration;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is InlineMethodFeedback) {
- return className == other.className &&
- methodName == other.methodName &&
- isDeclaration == other.isDeclaration;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, className.hashCode);
- hash = JenkinsSmiHash.combine(hash, methodName.hashCode);
- hash = JenkinsSmiHash.combine(hash, isDeclaration.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * inlineMethod options
- *
- * {
- * "deleteSource": bool
- * "inlineAll": bool
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class InlineMethodOptions extends RefactoringOptions {
- bool _deleteSource;
-
- bool _inlineAll;
-
- /**
- * True if the method being inlined should be removed. It is an error if this
- * field is true and inlineAll is false.
- */
- bool get deleteSource => _deleteSource;
-
- /**
- * True if the method being inlined should be removed. It is an error if this
- * field is true and inlineAll is false.
- */
- void set deleteSource(bool value) {
- assert(value != null);
- this._deleteSource = value;
- }
-
- /**
- * True if all invocations of the method should be inlined, or false if only
- * the invocation site used to create this refactoring should be inlined.
- */
- bool get inlineAll => _inlineAll;
-
- /**
- * True if all invocations of the method should be inlined, or false if only
- * the invocation site used to create this refactoring should be inlined.
- */
- void set inlineAll(bool value) {
- assert(value != null);
- this._inlineAll = value;
- }
-
- InlineMethodOptions(bool deleteSource, bool inlineAll) {
- this.deleteSource = deleteSource;
- this.inlineAll = inlineAll;
- }
-
- factory InlineMethodOptions.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- bool deleteSource;
- if (json.containsKey("deleteSource")) {
- deleteSource = jsonDecoder.decodeBool(
- jsonPath + ".deleteSource", json["deleteSource"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "deleteSource");
- }
- bool inlineAll;
- if (json.containsKey("inlineAll")) {
- inlineAll =
- jsonDecoder.decodeBool(jsonPath + ".inlineAll", json["inlineAll"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "inlineAll");
- }
- return new InlineMethodOptions(deleteSource, inlineAll);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "inlineMethod options", json);
- }
- }
-
- factory InlineMethodOptions.fromRefactoringParams(
- EditGetRefactoringParams refactoringParams, Request request) {
- return new InlineMethodOptions.fromJson(
- new RequestDecoder(request), "options", refactoringParams.options);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["deleteSource"] = deleteSource;
- result["inlineAll"] = inlineAll;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is InlineMethodOptions) {
- return deleteSource == other.deleteSource && inlineAll == other.inlineAll;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, deleteSource.hashCode);
- hash = JenkinsSmiHash.combine(hash, inlineAll.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * LinkedEditGroup
- *
- * {
- * "positions": List<Position>
- * "length": int
- * "suggestions": List<LinkedEditSuggestion>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class LinkedEditGroup implements HasToJson {
- List<Position> _positions;
-
- int _length;
-
- List<LinkedEditSuggestion> _suggestions;
-
- /**
- * The positions of the regions that should be edited simultaneously.
- */
- List<Position> get positions => _positions;
-
- /**
- * The positions of the regions that should be edited simultaneously.
- */
- void set positions(List<Position> value) {
- assert(value != null);
- this._positions = value;
- }
-
- /**
- * The length of the regions that should be edited simultaneously.
- */
- int get length => _length;
-
- /**
- * The length of the regions that should be edited simultaneously.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * Pre-computed suggestions for what every region might want to be changed
- * to.
- */
- List<LinkedEditSuggestion> get suggestions => _suggestions;
-
- /**
- * Pre-computed suggestions for what every region might want to be changed
- * to.
- */
- void set suggestions(List<LinkedEditSuggestion> value) {
- assert(value != null);
- this._suggestions = value;
- }
-
- LinkedEditGroup(List<Position> positions, int length,
- List<LinkedEditSuggestion> suggestions) {
- this.positions = positions;
- this.length = length;
- this.suggestions = suggestions;
- }
-
- factory LinkedEditGroup.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- List<Position> positions;
- if (json.containsKey("positions")) {
- positions = jsonDecoder.decodeList(
- jsonPath + ".positions",
- json["positions"],
- (String jsonPath, Object json) =>
- new Position.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "positions");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- List<LinkedEditSuggestion> suggestions;
- if (json.containsKey("suggestions")) {
- suggestions = jsonDecoder.decodeList(
- jsonPath + ".suggestions",
- json["suggestions"],
- (String jsonPath, Object json) =>
- new LinkedEditSuggestion.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "suggestions");
- }
- return new LinkedEditGroup(positions, length, suggestions);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "LinkedEditGroup", json);
- }
- }
-
- /**
- * Construct an empty LinkedEditGroup.
- */
- LinkedEditGroup.empty() : this(<Position>[], 0, <LinkedEditSuggestion>[]);
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["positions"] =
- positions.map((Position value) => value.toJson()).toList();
- result["length"] = length;
- result["suggestions"] = suggestions
- .map((LinkedEditSuggestion value) => value.toJson())
- .toList();
- return result;
- }
-
- /**
- * Add a new position and change the length.
- */
- void addPosition(Position position, int length) {
- positions.add(position);
- this.length = length;
- }
-
- /**
- * Add a new suggestion.
- */
- void addSuggestion(LinkedEditSuggestion suggestion) {
- suggestions.add(suggestion);
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is LinkedEditGroup) {
- return listEqual(
- positions, other.positions, (Position a, Position b) => a == b) &&
- length == other.length &&
- listEqual(suggestions, other.suggestions,
- (LinkedEditSuggestion a, LinkedEditSuggestion b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, positions.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, suggestions.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * LinkedEditSuggestion
- *
- * {
- * "value": String
- * "kind": LinkedEditSuggestionKind
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class LinkedEditSuggestion implements HasToJson {
- String _value;
-
- LinkedEditSuggestionKind _kind;
-
- /**
- * The value that could be used to replace all of the linked edit regions.
- */
- String get value => _value;
-
- /**
- * The value that could be used to replace all of the linked edit regions.
- */
- void set value(String value) {
- assert(value != null);
- this._value = value;
- }
-
- /**
- * The kind of value being proposed.
- */
- LinkedEditSuggestionKind get kind => _kind;
-
- /**
- * The kind of value being proposed.
- */
- void set kind(LinkedEditSuggestionKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- LinkedEditSuggestion(String value, LinkedEditSuggestionKind kind) {
- this.value = value;
- this.kind = kind;
- }
-
- factory LinkedEditSuggestion.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String value;
- if (json.containsKey("value")) {
- value = jsonDecoder.decodeString(jsonPath + ".value", json["value"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "value");
- }
- LinkedEditSuggestionKind kind;
- if (json.containsKey("kind")) {
- kind = new LinkedEditSuggestionKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- return new LinkedEditSuggestion(value, kind);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "LinkedEditSuggestion", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["value"] = value;
- result["kind"] = kind.toJson();
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is LinkedEditSuggestion) {
- return value == other.value && kind == other.kind;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, value.hashCode);
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * LinkedEditSuggestionKind
- *
- * enum {
- * METHOD
- * PARAMETER
- * TYPE
- * VARIABLE
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class LinkedEditSuggestionKind implements Enum {
- static const LinkedEditSuggestionKind METHOD =
- const LinkedEditSuggestionKind._("METHOD");
-
- static const LinkedEditSuggestionKind PARAMETER =
- const LinkedEditSuggestionKind._("PARAMETER");
-
- static const LinkedEditSuggestionKind TYPE =
- const LinkedEditSuggestionKind._("TYPE");
-
- static const LinkedEditSuggestionKind VARIABLE =
- const LinkedEditSuggestionKind._("VARIABLE");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<LinkedEditSuggestionKind> VALUES =
- const <LinkedEditSuggestionKind>[METHOD, PARAMETER, TYPE, VARIABLE];
-
- @override
- final String name;
-
- const LinkedEditSuggestionKind._(this.name);
-
- factory LinkedEditSuggestionKind(String name) {
- switch (name) {
- case "METHOD":
- return METHOD;
- case "PARAMETER":
- return PARAMETER;
- case "TYPE":
- return TYPE;
- case "VARIABLE":
- return VARIABLE;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory LinkedEditSuggestionKind.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new LinkedEditSuggestionKind(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "LinkedEditSuggestionKind", json);
- }
-
- @override
- String toString() => "LinkedEditSuggestionKind.$name";
-
- String toJson() => name;
-}
-
-/**
- * Location
- *
- * {
- * "file": FilePath
- * "offset": int
- * "length": int
- * "startLine": int
- * "startColumn": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class Location implements HasToJson {
- String _file;
-
- int _offset;
-
- int _length;
-
- int _startLine;
-
- int _startColumn;
-
- /**
- * The file containing the range.
- */
- String get file => _file;
-
- /**
- * The file containing the range.
- */
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
-
- /**
- * The offset of the range.
- */
- int get offset => _offset;
-
- /**
- * The offset of the range.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the range.
- */
- int get length => _length;
-
- /**
- * The length of the range.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * The one-based index of the line containing the first character of the
- * range.
- */
- int get startLine => _startLine;
-
- /**
- * The one-based index of the line containing the first character of the
- * range.
- */
- void set startLine(int value) {
- assert(value != null);
- this._startLine = value;
- }
-
- /**
- * The one-based index of the column containing the first character of the
- * range.
- */
- int get startColumn => _startColumn;
-
- /**
- * The one-based index of the column containing the first character of the
- * range.
- */
- void set startColumn(int value) {
- assert(value != null);
- this._startColumn = value;
- }
-
- Location(
- String file, int offset, int length, int startLine, int startColumn) {
- this.file = file;
- this.offset = offset;
- this.length = length;
- this.startLine = startLine;
- this.startColumn = startColumn;
- }
-
- factory Location.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- int startLine;
- if (json.containsKey("startLine")) {
- startLine =
- jsonDecoder.decodeInt(jsonPath + ".startLine", json["startLine"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "startLine");
- }
- int startColumn;
- if (json.containsKey("startColumn")) {
- startColumn = jsonDecoder.decodeInt(
- jsonPath + ".startColumn", json["startColumn"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "startColumn");
- }
- return new Location(file, offset, length, startLine, startColumn);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "Location", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["file"] = file;
- result["offset"] = offset;
- result["length"] = length;
- result["startLine"] = startLine;
- result["startColumn"] = startColumn;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is Location) {
- return file == other.file &&
- offset == other.offset &&
- length == other.length &&
- startLine == other.startLine &&
- startColumn == other.startColumn;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, startLine.hashCode);
- hash = JenkinsSmiHash.combine(hash, startColumn.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * moveFile feedback
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class MoveFileFeedback extends RefactoringFeedback implements HasToJson {
- @override
- bool operator ==(other) {
- if (other is MoveFileFeedback) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 438975893;
- }
-}
-
-/**
- * moveFile options
- *
- * {
- * "newFile": FilePath
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class MoveFileOptions extends RefactoringOptions {
- String _newFile;
-
- /**
- * The new file path to which the given file is being moved.
- */
- String get newFile => _newFile;
-
- /**
- * The new file path to which the given file is being moved.
- */
- void set newFile(String value) {
- assert(value != null);
- this._newFile = value;
- }
-
- MoveFileOptions(String newFile) {
- this.newFile = newFile;
- }
-
- factory MoveFileOptions.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String newFile;
- if (json.containsKey("newFile")) {
- newFile =
- jsonDecoder.decodeString(jsonPath + ".newFile", json["newFile"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "newFile");
- }
- return new MoveFileOptions(newFile);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "moveFile options", json);
- }
- }
-
- factory MoveFileOptions.fromRefactoringParams(
- EditGetRefactoringParams refactoringParams, Request request) {
- return new MoveFileOptions.fromJson(
- new RequestDecoder(request), "options", refactoringParams.options);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["newFile"] = newFile;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is MoveFileOptions) {
- return newFile == other.newFile;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, newFile.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * NavigationRegion
- *
- * {
- * "offset": int
- * "length": int
- * "targets": List<int>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class NavigationRegion implements HasToJson {
- int _offset;
-
- int _length;
-
- List<int> _targets;
-
- /**
- * The offset of the region from which the user can navigate.
- */
- int get offset => _offset;
-
- /**
- * The offset of the region from which the user can navigate.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the region from which the user can navigate.
- */
- int get length => _length;
-
- /**
- * The length of the region from which the user can navigate.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * The indexes of the targets (in the enclosing navigation response) to which
- * the given region is bound. By opening the target, clients can implement
- * one form of navigation. This list cannot be empty.
- */
- List<int> get targets => _targets;
-
- /**
- * The indexes of the targets (in the enclosing navigation response) to which
- * the given region is bound. By opening the target, clients can implement
- * one form of navigation. This list cannot be empty.
- */
- void set targets(List<int> value) {
- assert(value != null);
- this._targets = value;
- }
-
- NavigationRegion(int offset, int length, List<int> targets) {
- this.offset = offset;
- this.length = length;
- this.targets = targets;
- }
-
- factory NavigationRegion.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- List<int> targets;
- if (json.containsKey("targets")) {
- targets = jsonDecoder.decodeList(
- jsonPath + ".targets", json["targets"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "targets");
- }
- return new NavigationRegion(offset, length, targets);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "NavigationRegion", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["offset"] = offset;
- result["length"] = length;
- result["targets"] = targets;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is NavigationRegion) {
- return offset == other.offset &&
- length == other.length &&
- listEqual(targets, other.targets, (int a, int b) => a == b);
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, targets.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * NavigationTarget
- *
- * {
- * "kind": ElementKind
- * "fileIndex": int
- * "offset": int
- * "length": int
- * "startLine": int
- * "startColumn": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class NavigationTarget implements HasToJson {
- ElementKind _kind;
-
- int _fileIndex;
-
- int _offset;
-
- int _length;
-
- int _startLine;
-
- int _startColumn;
-
- /**
- * The kind of the element.
- */
- ElementKind get kind => _kind;
-
- /**
- * The kind of the element.
- */
- void set kind(ElementKind value) {
- assert(value != null);
- this._kind = value;
- }
-
- /**
- * The index of the file (in the enclosing navigation response) to navigate
- * to.
- */
- int get fileIndex => _fileIndex;
-
- /**
- * The index of the file (in the enclosing navigation response) to navigate
- * to.
- */
- void set fileIndex(int value) {
- assert(value != null);
- this._fileIndex = value;
- }
-
- /**
- * The offset of the region to which the user can navigate.
- */
- int get offset => _offset;
-
- /**
- * The offset of the region to which the user can navigate.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
-
- /**
- * The length of the region to which the user can navigate.
- */
- int get length => _length;
-
- /**
- * The length of the region to which the user can navigate.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
-
- /**
- * The one-based index of the line containing the first character of the
- * region.
- */
- int get startLine => _startLine;
-
- /**
- * The one-based index of the line containing the first character of the
- * region.
- */
- void set startLine(int value) {
- assert(value != null);
- this._startLine = value;
- }
-
- /**
- * The one-based index of the column containing the first character of the
- * region.
- */
- int get startColumn => _startColumn;
-
- /**
- * The one-based index of the column containing the first character of the
- * region.
- */
- void set startColumn(int value) {
- assert(value != null);
- this._startColumn = value;
- }
-
- NavigationTarget(ElementKind kind, int fileIndex, int offset, int length,
- int startLine, int startColumn) {
- this.kind = kind;
- this.fileIndex = fileIndex;
- this.offset = offset;
- this.length = length;
- this.startLine = startLine;
- this.startColumn = startColumn;
- }
-
- factory NavigationTarget.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- ElementKind kind;
- if (json.containsKey("kind")) {
- kind = new ElementKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- int fileIndex;
- if (json.containsKey("fileIndex")) {
- fileIndex =
- jsonDecoder.decodeInt(jsonPath + ".fileIndex", json["fileIndex"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "fileIndex");
- }
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- int startLine;
- if (json.containsKey("startLine")) {
- startLine =
- jsonDecoder.decodeInt(jsonPath + ".startLine", json["startLine"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "startLine");
- }
- int startColumn;
- if (json.containsKey("startColumn")) {
- startColumn = jsonDecoder.decodeInt(
- jsonPath + ".startColumn", json["startColumn"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "startColumn");
- }
- return new NavigationTarget(
- kind, fileIndex, offset, length, startLine, startColumn);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "NavigationTarget", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["kind"] = kind.toJson();
- result["fileIndex"] = fileIndex;
- result["offset"] = offset;
- result["length"] = length;
- result["startLine"] = startLine;
- result["startColumn"] = startColumn;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is NavigationTarget) {
- return kind == other.kind &&
- fileIndex == other.fileIndex &&
- offset == other.offset &&
- length == other.length &&
- startLine == other.startLine &&
- startColumn == other.startColumn;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, fileIndex.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, startLine.hashCode);
- hash = JenkinsSmiHash.combine(hash, startColumn.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
-}
-
-/**
- * Occurrences
- *
- * {
- * "element": Element
- * "offsets": List<int>
- * "length": int
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class Occurrences implements HasToJson {
- Element _element;
+ List<RefactoringProblem> _optionsProblems;
- List<int> _offsets;
+ List<RefactoringProblem> _finalProblems;
- int _length;
+ RefactoringFeedback _feedback;
- /**
- * The element that was referenced.
- */
- Element get element => _element;
+ SourceChange _change;
- /**
- * The element that was referenced.
- */
- void set element(Element value) {
- assert(value != null);
- this._element = value;
- }
+ List<String> _potentialEdits;
/**
- * The offsets of the name of the referenced element within the file.
+ * The initial status of the refactoring, that is, problems related to the
+ * context in which the refactoring is requested. The list should be empty if
+ * there are no known problems.
*/
- List<int> get offsets => _offsets;
+ List<RefactoringProblem> get initialProblems => _initialProblems;
/**
- * The offsets of the name of the referenced element within the file.
+ * The initial status of the refactoring, that is, problems related to the
+ * context in which the refactoring is requested. The list should be empty if
+ * there are no known problems.
*/
- void set offsets(List<int> value) {
+ void set initialProblems(List<RefactoringProblem> value) {
assert(value != null);
- this._offsets = value;
+ this._initialProblems = value;
}
/**
- * The length of the name of the referenced element.
+ * The options validation status, that is, problems in the given options,
+ * such as light-weight validation of a new name, flags compatibility, etc.
+ * The list should be empty if there are no known problems.
*/
- int get length => _length;
+ List<RefactoringProblem> get optionsProblems => _optionsProblems;
/**
- * The length of the name of the referenced element.
+ * The options validation status, that is, problems in the given options,
+ * such as light-weight validation of a new name, flags compatibility, etc.
+ * The list should be empty if there are no known problems.
*/
- void set length(int value) {
+ void set optionsProblems(List<RefactoringProblem> value) {
assert(value != null);
- this._length = value;
- }
-
- Occurrences(Element element, List<int> offsets, int length) {
- this.element = element;
- this.offsets = offsets;
- this.length = length;
- }
-
- factory Occurrences.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- Element element;
- if (json.containsKey("element")) {
- element = new Element.fromJson(
- jsonDecoder, jsonPath + ".element", json["element"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "element");
- }
- List<int> offsets;
- if (json.containsKey("offsets")) {
- offsets = jsonDecoder.decodeList(
- jsonPath + ".offsets", json["offsets"], jsonDecoder.decodeInt);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offsets");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- return new Occurrences(element, offsets, length);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "Occurrences", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["element"] = element.toJson();
- result["offsets"] = offsets;
- result["length"] = length;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is Occurrences) {
- return element == other.element &&
- listEqual(offsets, other.offsets, (int a, int b) => a == b) &&
- length == other.length;
- }
- return false;
- }
-
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, element.hashCode);
- hash = JenkinsSmiHash.combine(hash, offsets.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- return JenkinsSmiHash.finish(hash);
+ this._optionsProblems = value;
}
-}
-
-/**
- * Outline
- *
- * {
- * "element": Element
- * "offset": int
- * "length": int
- * "children": optional List<Outline>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class Outline implements HasToJson {
- Element _element;
-
- int _offset;
-
- int _length;
-
- List<Outline> _children;
/**
- * A description of the element represented by this node.
+ * The final status of the refactoring, that is, problems identified in the
+ * result of a full, potentially expensive validation and / or change
+ * creation. The list should be empty if there are no known problems.
*/
- Element get element => _element;
+ List<RefactoringProblem> get finalProblems => _finalProblems;
/**
- * A description of the element represented by this node.
+ * The final status of the refactoring, that is, problems identified in the
+ * result of a full, potentially expensive validation and / or change
+ * creation. The list should be empty if there are no known problems.
*/
- void set element(Element value) {
+ void set finalProblems(List<RefactoringProblem> value) {
assert(value != null);
- this._element = value;
+ this._finalProblems = value;
}
/**
- * The offset of the first character of the element. This is different than
- * the offset in the Element, which is the offset of the name of the element.
- * It can be used, for example, to map locations in the file back to an
- * outline.
+ * Data used to provide feedback to the user. The structure of the data is
+ * dependent on the kind of refactoring being created. The data that is
+ * returned is documented in the section titled Refactorings, labeled as
+ * "Feedback".
*/
- int get offset => _offset;
+ RefactoringFeedback get feedback => _feedback;
/**
- * The offset of the first character of the element. This is different than
- * the offset in the Element, which is the offset of the name of the element.
- * It can be used, for example, to map locations in the file back to an
- * outline.
+ * Data used to provide feedback to the user. The structure of the data is
+ * dependent on the kind of refactoring being created. The data that is
+ * returned is documented in the section titled Refactorings, labeled as
+ * "Feedback".
*/
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
+ void set feedback(RefactoringFeedback value) {
+ this._feedback = value;
}
/**
- * The length of the element.
+ * The changes that are to be applied to affect the refactoring. This field
+ * can be omitted if there are problems that prevent a set of changes from
+ * being computed, such as having no options specified for a refactoring that
+ * requires them, or if only validation was requested.
*/
- int get length => _length;
+ SourceChange get change => _change;
/**
- * The length of the element.
+ * The changes that are to be applied to affect the refactoring. This field
+ * can be omitted if there are problems that prevent a set of changes from
+ * being computed, such as having no options specified for a refactoring that
+ * requires them, or if only validation was requested.
*/
- void set length(int value) {
- assert(value != null);
- this._length = value;
+ void set change(SourceChange value) {
+ this._change = value;
}
/**
- * The children of the node. The field will be omitted if the node has no
- * children.
+ * The ids of source edits that are not known to be valid. An edit is not
+ * known to be valid if there was insufficient type information for the
+ * plugin to be able to determine whether or not the code needs to be
+ * modified, such as when a member is being renamed and there is a reference
+ * to a member from an unknown type. This field can be omitted if the change
+ * field is omitted or if there are no potential edits for the refactoring.
*/
- List<Outline> get children => _children;
+ List<String> get potentialEdits => _potentialEdits;
/**
- * The children of the node. The field will be omitted if the node has no
- * children.
+ * The ids of source edits that are not known to be valid. An edit is not
+ * known to be valid if there was insufficient type information for the
+ * plugin to be able to determine whether or not the code needs to be
+ * modified, such as when a member is being renamed and there is a reference
+ * to a member from an unknown type. This field can be omitted if the change
+ * field is omitted or if there are no potential edits for the refactoring.
*/
- void set children(List<Outline> value) {
- this._children = value;
+ void set potentialEdits(List<String> value) {
+ this._potentialEdits = value;
}
- Outline(Element element, int offset, int length, {List<Outline> children}) {
- this.element = element;
- this.offset = offset;
- this.length = length;
- this.children = children;
+ EditGetRefactoringResult(
+ List<RefactoringProblem> initialProblems,
+ List<RefactoringProblem> optionsProblems,
+ List<RefactoringProblem> finalProblems,
+ {RefactoringFeedback feedback,
+ SourceChange change,
+ List<String> potentialEdits}) {
+ this.initialProblems = initialProblems;
+ this.optionsProblems = optionsProblems;
+ this.finalProblems = finalProblems;
+ this.feedback = feedback;
+ this.change = change;
+ this.potentialEdits = potentialEdits;
}
- factory Outline.fromJson(
+ factory EditGetRefactoringResult.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- Element element;
- if (json.containsKey("element")) {
- element = new Element.fromJson(
- jsonDecoder, jsonPath + ".element", json["element"]);
+ List<RefactoringProblem> initialProblems;
+ if (json.containsKey("initialProblems")) {
+ initialProblems = jsonDecoder.decodeList(
+ jsonPath + ".initialProblems",
+ json["initialProblems"],
+ (String jsonPath, Object json) =>
+ new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "element");
+ throw jsonDecoder.mismatch(jsonPath, "initialProblems");
}
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ List<RefactoringProblem> optionsProblems;
+ if (json.containsKey("optionsProblems")) {
+ optionsProblems = jsonDecoder.decodeList(
+ jsonPath + ".optionsProblems",
+ json["optionsProblems"],
+ (String jsonPath, Object json) =>
+ new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
+ throw jsonDecoder.mismatch(jsonPath, "optionsProblems");
}
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
+ List<RefactoringProblem> finalProblems;
+ if (json.containsKey("finalProblems")) {
+ finalProblems = jsonDecoder.decodeList(
+ jsonPath + ".finalProblems",
+ json["finalProblems"],
+ (String jsonPath, Object json) =>
+ new RefactoringProblem.fromJson(jsonDecoder, jsonPath, json));
} else {
- throw jsonDecoder.mismatch(jsonPath, "length");
+ throw jsonDecoder.mismatch(jsonPath, "finalProblems");
}
- List<Outline> children;
- if (json.containsKey("children")) {
- children = jsonDecoder.decodeList(
- jsonPath + ".children",
- json["children"],
- (String jsonPath, Object json) =>
- new Outline.fromJson(jsonDecoder, jsonPath, json));
+ RefactoringFeedback feedback;
+ if (json.containsKey("feedback")) {
+ feedback = new RefactoringFeedback.fromJson(
+ jsonDecoder, jsonPath + ".feedback", json["feedback"], json);
+ }
+ SourceChange change;
+ if (json.containsKey("change")) {
+ change = new SourceChange.fromJson(
+ jsonDecoder, jsonPath + ".change", json["change"]);
+ }
+ List<String> potentialEdits;
+ if (json.containsKey("potentialEdits")) {
+ potentialEdits = jsonDecoder.decodeList(jsonPath + ".potentialEdits",
+ json["potentialEdits"], jsonDecoder.decodeString);
}
- return new Outline(element, offset, length, children: children);
+ return new EditGetRefactoringResult(
+ initialProblems, optionsProblems, finalProblems,
+ feedback: feedback, change: change, potentialEdits: potentialEdits);
} else {
- throw jsonDecoder.mismatch(jsonPath, "Outline", json);
+ throw jsonDecoder.mismatch(jsonPath, "edit.getRefactoring result", json);
}
}
+ factory EditGetRefactoringResult.fromResponse(Response response) {
+ return new EditGetRefactoringResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["element"] = element.toJson();
- result["offset"] = offset;
- result["length"] = length;
- if (children != null) {
- result["children"] =
- children.map((Outline value) => value.toJson()).toList();
+ result["initialProblems"] = initialProblems
+ .map((RefactoringProblem value) => value.toJson())
+ .toList();
+ result["optionsProblems"] = optionsProblems
+ .map((RefactoringProblem value) => value.toJson())
+ .toList();
+ result["finalProblems"] = finalProblems
+ .map((RefactoringProblem value) => value.toJson())
+ .toList();
+ if (feedback != null) {
+ result["feedback"] = feedback.toJson();
+ }
+ if (change != null) {
+ result["change"] = change.toJson();
+ }
+ if (potentialEdits != null) {
+ result["potentialEdits"] = potentialEdits;
}
return result;
}
@override
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
+ }
+
+ @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is Outline) {
- return element == other.element &&
- offset == other.offset &&
- length == other.length &&
- listEqual(children, other.children, (Outline a, Outline b) => a == b);
+ if (other is EditGetRefactoringResult) {
+ return listEqual(initialProblems, other.initialProblems,
+ (RefactoringProblem a, RefactoringProblem b) => a == b) &&
+ listEqual(optionsProblems, other.optionsProblems,
+ (RefactoringProblem a, RefactoringProblem b) => a == b) &&
+ listEqual(finalProblems, other.finalProblems,
+ (RefactoringProblem a, RefactoringProblem b) => a == b) &&
+ feedback == other.feedback &&
+ change == other.change &&
+ listEqual(potentialEdits, other.potentialEdits,
+ (String a, String b) => a == b);
}
return false;
}
@@ -9000,145 +3631,204 @@ class Outline implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, element.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, children.hashCode);
+ hash = JenkinsSmiHash.combine(hash, initialProblems.hashCode);
+ hash = JenkinsSmiHash.combine(hash, optionsProblems.hashCode);
+ hash = JenkinsSmiHash.combine(hash, finalProblems.hashCode);
+ hash = JenkinsSmiHash.combine(hash, feedback.hashCode);
+ hash = JenkinsSmiHash.combine(hash, change.hashCode);
+ hash = JenkinsSmiHash.combine(hash, potentialEdits.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * plugin.error params
+ * extractLocalVariable feedback
*
* {
- * "isFatal": bool
- * "message": String
- * "stackTrace": String
+ * "coveringExpressionOffsets": optional List<int>
+ * "coveringExpressionLengths": optional List<int>
+ * "names": List<String>
+ * "offsets": List<int>
+ * "lengths": List<int>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class PluginErrorParams implements HasToJson {
- bool _isFatal;
+class ExtractLocalVariableFeedback extends RefactoringFeedback {
+ List<int> _coveringExpressionOffsets;
- String _message;
+ List<int> _coveringExpressionLengths;
- String _stackTrace;
+ List<String> _names;
+
+ List<int> _offsets;
+
+ List<int> _lengths;
/**
- * A flag indicating whether the error is a fatal error, meaning that the
- * plugin will shutdown automatically after sending this notification. If
- * true, the server will not expect any other responses or notifications from
- * the plugin.
+ * The offsets of the expressions that cover the specified selection, from
+ * the down most to the up most.
*/
- bool get isFatal => _isFatal;
+ List<int> get coveringExpressionOffsets => _coveringExpressionOffsets;
/**
- * A flag indicating whether the error is a fatal error, meaning that the
- * plugin will shutdown automatically after sending this notification. If
- * true, the server will not expect any other responses or notifications from
- * the plugin.
+ * The offsets of the expressions that cover the specified selection, from
+ * the down most to the up most.
*/
- void set isFatal(bool value) {
+ void set coveringExpressionOffsets(List<int> value) {
+ this._coveringExpressionOffsets = value;
+ }
+
+ /**
+ * The lengths of the expressions that cover the specified selection, from
+ * the down most to the up most.
+ */
+ List<int> get coveringExpressionLengths => _coveringExpressionLengths;
+
+ /**
+ * The lengths of the expressions that cover the specified selection, from
+ * the down most to the up most.
+ */
+ void set coveringExpressionLengths(List<int> value) {
+ this._coveringExpressionLengths = value;
+ }
+
+ /**
+ * The proposed names for the local variable.
+ */
+ List<String> get names => _names;
+
+ /**
+ * The proposed names for the local variable.
+ */
+ void set names(List<String> value) {
assert(value != null);
- this._isFatal = value;
+ this._names = value;
}
/**
- * The error message indicating what kind of error was encountered.
+ * The offsets of the expressions that would be replaced by a reference to
+ * the variable.
*/
- String get message => _message;
+ List<int> get offsets => _offsets;
/**
- * The error message indicating what kind of error was encountered.
+ * The offsets of the expressions that would be replaced by a reference to
+ * the variable.
*/
- void set message(String value) {
+ void set offsets(List<int> value) {
assert(value != null);
- this._message = value;
+ this._offsets = value;
}
/**
- * The stack trace associated with the generation of the error, used for
- * debugging the plugin.
+ * The lengths of the expressions that would be replaced by a reference to
+ * the variable. The lengths correspond to the offsets. In other words, for a
+ * given expression, if the offset of that expression is offsets[i], then the
+ * length of that expression is lengths[i].
*/
- String get stackTrace => _stackTrace;
+ List<int> get lengths => _lengths;
/**
- * The stack trace associated with the generation of the error, used for
- * debugging the plugin.
+ * The lengths of the expressions that would be replaced by a reference to
+ * the variable. The lengths correspond to the offsets. In other words, for a
+ * given expression, if the offset of that expression is offsets[i], then the
+ * length of that expression is lengths[i].
*/
- void set stackTrace(String value) {
+ void set lengths(List<int> value) {
assert(value != null);
- this._stackTrace = value;
+ this._lengths = value;
}
- PluginErrorParams(bool isFatal, String message, String stackTrace) {
- this.isFatal = isFatal;
- this.message = message;
- this.stackTrace = stackTrace;
+ ExtractLocalVariableFeedback(
+ List<String> names, List<int> offsets, List<int> lengths,
+ {List<int> coveringExpressionOffsets,
+ List<int> coveringExpressionLengths}) {
+ this.coveringExpressionOffsets = coveringExpressionOffsets;
+ this.coveringExpressionLengths = coveringExpressionLengths;
+ this.names = names;
+ this.offsets = offsets;
+ this.lengths = lengths;
}
- factory PluginErrorParams.fromJson(
+ factory ExtractLocalVariableFeedback.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- bool isFatal;
- if (json.containsKey("isFatal")) {
- isFatal =
- jsonDecoder.decodeBool(jsonPath + ".isFatal", json["isFatal"]);
+ List<int> coveringExpressionOffsets;
+ if (json.containsKey("coveringExpressionOffsets")) {
+ coveringExpressionOffsets = jsonDecoder.decodeList(
+ jsonPath + ".coveringExpressionOffsets",
+ json["coveringExpressionOffsets"],
+ jsonDecoder.decodeInt);
+ }
+ List<int> coveringExpressionLengths;
+ if (json.containsKey("coveringExpressionLengths")) {
+ coveringExpressionLengths = jsonDecoder.decodeList(
+ jsonPath + ".coveringExpressionLengths",
+ json["coveringExpressionLengths"],
+ jsonDecoder.decodeInt);
+ }
+ List<String> names;
+ if (json.containsKey("names")) {
+ names = jsonDecoder.decodeList(
+ jsonPath + ".names", json["names"], jsonDecoder.decodeString);
} else {
- throw jsonDecoder.mismatch(jsonPath, "isFatal");
+ throw jsonDecoder.mismatch(jsonPath, "names");
}
- String message;
- if (json.containsKey("message")) {
- message =
- jsonDecoder.decodeString(jsonPath + ".message", json["message"]);
+ List<int> offsets;
+ if (json.containsKey("offsets")) {
+ offsets = jsonDecoder.decodeList(
+ jsonPath + ".offsets", json["offsets"], jsonDecoder.decodeInt);
} else {
- throw jsonDecoder.mismatch(jsonPath, "message");
+ throw jsonDecoder.mismatch(jsonPath, "offsets");
}
- String stackTrace;
- if (json.containsKey("stackTrace")) {
- stackTrace = jsonDecoder.decodeString(
- jsonPath + ".stackTrace", json["stackTrace"]);
+ List<int> lengths;
+ if (json.containsKey("lengths")) {
+ lengths = jsonDecoder.decodeList(
+ jsonPath + ".lengths", json["lengths"], jsonDecoder.decodeInt);
} else {
- throw jsonDecoder.mismatch(jsonPath, "stackTrace");
+ throw jsonDecoder.mismatch(jsonPath, "lengths");
}
- return new PluginErrorParams(isFatal, message, stackTrace);
+ return new ExtractLocalVariableFeedback(names, offsets, lengths,
+ coveringExpressionOffsets: coveringExpressionOffsets,
+ coveringExpressionLengths: coveringExpressionLengths);
} else {
- throw jsonDecoder.mismatch(jsonPath, "plugin.error params", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "extractLocalVariable feedback", json);
}
}
- factory PluginErrorParams.fromNotification(Notification notification) {
- return new PluginErrorParams.fromJson(
- new ResponseDecoder(null), "params", notification.params);
- }
-
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["isFatal"] = isFatal;
- result["message"] = message;
- result["stackTrace"] = stackTrace;
+ if (coveringExpressionOffsets != null) {
+ result["coveringExpressionOffsets"] = coveringExpressionOffsets;
+ }
+ if (coveringExpressionLengths != null) {
+ result["coveringExpressionLengths"] = coveringExpressionLengths;
+ }
+ result["names"] = names;
+ result["offsets"] = offsets;
+ result["lengths"] = lengths;
return result;
}
- Notification toNotification() {
- return new Notification("plugin.error", toJson());
- }
-
@override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is PluginErrorParams) {
- return isFatal == other.isFatal &&
- message == other.message &&
- stackTrace == other.stackTrace;
+ if (other is ExtractLocalVariableFeedback) {
+ return listEqual(coveringExpressionOffsets,
+ other.coveringExpressionOffsets, (int a, int b) => a == b) &&
+ listEqual(coveringExpressionLengths, other.coveringExpressionLengths,
+ (int a, int b) => a == b) &&
+ listEqual(names, other.names, (String a, String b) => a == b) &&
+ listEqual(offsets, other.offsets, (int a, int b) => a == b) &&
+ listEqual(lengths, other.lengths, (int a, int b) => a == b);
}
return false;
}
@@ -9146,170 +3836,114 @@ class PluginErrorParams implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, isFatal.hashCode);
- hash = JenkinsSmiHash.combine(hash, message.hashCode);
- hash = JenkinsSmiHash.combine(hash, stackTrace.hashCode);
+ hash = JenkinsSmiHash.combine(hash, coveringExpressionOffsets.hashCode);
+ hash = JenkinsSmiHash.combine(hash, coveringExpressionLengths.hashCode);
+ hash = JenkinsSmiHash.combine(hash, names.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offsets.hashCode);
+ hash = JenkinsSmiHash.combine(hash, lengths.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * plugin.shutdown params
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class PluginShutdownParams implements RequestParams {
- @override
- Map<String, dynamic> toJson() => <String, dynamic>{};
-
- @override
- Request toRequest(String id) {
- return new Request(id, "plugin.shutdown", null);
- }
-
- @override
- bool operator ==(other) {
- if (other is PluginShutdownParams) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 478064585;
- }
-}
-
-/**
- * plugin.shutdown result
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class PluginShutdownResult implements ResponseResult {
- @override
- Map<String, dynamic> toJson() => <String, dynamic>{};
-
- @override
- Response toResponse(String id) {
- return new Response(id, result: null);
- }
-
- @override
- bool operator ==(other) {
- if (other is PluginShutdownResult) {
- return true;
- }
- return false;
- }
-
- @override
- int get hashCode {
- return 9389109;
- }
-}
-
-/**
- * plugin.versionCheck params
+ * extractLocalVariable options
*
* {
- * "byteStorePath": String
- * "version": String
+ * "name": String
+ * "extractAll": bool
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class PluginVersionCheckParams implements RequestParams {
- String _byteStorePath;
+class ExtractLocalVariableOptions extends RefactoringOptions {
+ String _name;
- String _version;
+ bool _extractAll;
/**
- * The path to the directory containing the on-disk byte store that is to be
- * used by any analysis drivers that are created.
+ * The name that the local variable should be given.
*/
- String get byteStorePath => _byteStorePath;
+ String get name => _name;
/**
- * The path to the directory containing the on-disk byte store that is to be
- * used by any analysis drivers that are created.
+ * The name that the local variable should be given.
*/
- void set byteStorePath(String value) {
+ void set name(String value) {
assert(value != null);
- this._byteStorePath = value;
+ this._name = value;
}
/**
- * The version number of the plugin spec supported by the analysis server
- * that is executing the plugin.
+ * True if all occurrences of the expression within the scope in which the
+ * variable will be defined should be replaced by a reference to the local
+ * variable. The expression used to initiate the refactoring will always be
+ * replaced.
*/
- String get version => _version;
+ bool get extractAll => _extractAll;
/**
- * The version number of the plugin spec supported by the analysis server
- * that is executing the plugin.
+ * True if all occurrences of the expression within the scope in which the
+ * variable will be defined should be replaced by a reference to the local
+ * variable. The expression used to initiate the refactoring will always be
+ * replaced.
*/
- void set version(String value) {
+ void set extractAll(bool value) {
assert(value != null);
- this._version = value;
+ this._extractAll = value;
}
- PluginVersionCheckParams(String byteStorePath, String version) {
- this.byteStorePath = byteStorePath;
- this.version = version;
+ ExtractLocalVariableOptions(String name, bool extractAll) {
+ this.name = name;
+ this.extractAll = extractAll;
}
- factory PluginVersionCheckParams.fromJson(
+ factory ExtractLocalVariableOptions.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String byteStorePath;
- if (json.containsKey("byteStorePath")) {
- byteStorePath = jsonDecoder.decodeString(
- jsonPath + ".byteStorePath", json["byteStorePath"]);
+ String name;
+ if (json.containsKey("name")) {
+ name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "byteStorePath");
+ throw jsonDecoder.mismatch(jsonPath, "name");
}
- String version;
- if (json.containsKey("version")) {
- version =
- jsonDecoder.decodeString(jsonPath + ".version", json["version"]);
+ bool extractAll;
+ if (json.containsKey("extractAll")) {
+ extractAll = jsonDecoder.decodeBool(
+ jsonPath + ".extractAll", json["extractAll"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "version");
+ throw jsonDecoder.mismatch(jsonPath, "extractAll");
}
- return new PluginVersionCheckParams(byteStorePath, version);
+ return new ExtractLocalVariableOptions(name, extractAll);
} else {
- throw jsonDecoder.mismatch(jsonPath, "plugin.versionCheck params", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "extractLocalVariable options", json);
}
}
- factory PluginVersionCheckParams.fromRequest(Request request) {
- return new PluginVersionCheckParams.fromJson(
- new RequestDecoder(request), "params", request.params);
+ factory ExtractLocalVariableOptions.fromRefactoringParams(
+ EditGetRefactoringParams refactoringParams, Request request) {
+ return new ExtractLocalVariableOptions.fromJson(
+ new RequestDecoder(request), "options", refactoringParams.options);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["byteStorePath"] = byteStorePath;
- result["version"] = version;
+ result["name"] = name;
+ result["extractAll"] = extractAll;
return result;
}
@override
- Request toRequest(String id) {
- return new Request(id, "plugin.versionCheck", toJson());
- }
-
- @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is PluginVersionCheckParams) {
- return byteStorePath == other.byteStorePath && version == other.version;
+ if (other is ExtractLocalVariableOptions) {
+ return name == other.name && extractAll == other.extractAll;
}
return false;
}
@@ -9317,211 +3951,287 @@ class PluginVersionCheckParams implements RequestParams {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, byteStorePath.hashCode);
- hash = JenkinsSmiHash.combine(hash, version.hashCode);
+ hash = JenkinsSmiHash.combine(hash, name.hashCode);
+ hash = JenkinsSmiHash.combine(hash, extractAll.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
-/**
- * plugin.versionCheck result
- *
- * {
- * "isCompatible": bool
- * "name": String
- * "version": String
- * "contactInfo": optional String
- * "interestingFiles": List<String>
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class PluginVersionCheckResult implements ResponseResult {
- bool _isCompatible;
+/**
+ * extractMethod feedback
+ *
+ * {
+ * "offset": int
+ * "length": int
+ * "returnType": String
+ * "names": List<String>
+ * "canCreateGetter": bool
+ * "parameters": List<RefactoringMethodParameter>
+ * "offsets": List<int>
+ * "lengths": List<int>
+ * }
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class ExtractMethodFeedback extends RefactoringFeedback {
+ int _offset;
+
+ int _length;
+
+ String _returnType;
+
+ List<String> _names;
+
+ bool _canCreateGetter;
+
+ List<RefactoringMethodParameter> _parameters;
+
+ List<int> _offsets;
+
+ List<int> _lengths;
+
+ /**
+ * The offset to the beginning of the expression or statements that will be
+ * extracted.
+ */
+ int get offset => _offset;
+
+ /**
+ * The offset to the beginning of the expression or statements that will be
+ * extracted.
+ */
+ void set offset(int value) {
+ assert(value != null);
+ this._offset = value;
+ }
- String _name;
+ /**
+ * The length of the expression or statements that will be extracted.
+ */
+ int get length => _length;
- String _version;
+ /**
+ * The length of the expression or statements that will be extracted.
+ */
+ void set length(int value) {
+ assert(value != null);
+ this._length = value;
+ }
- String _contactInfo;
+ /**
+ * The proposed return type for the method. If the returned element does not
+ * have a declared return type, this field will contain an empty string.
+ */
+ String get returnType => _returnType;
- List<String> _interestingFiles;
+ /**
+ * The proposed return type for the method. If the returned element does not
+ * have a declared return type, this field will contain an empty string.
+ */
+ void set returnType(String value) {
+ assert(value != null);
+ this._returnType = value;
+ }
/**
- * A flag indicating whether the plugin supports the same version of the
- * plugin spec as the analysis server. If the value is false, then the plugin
- * is expected to shutdown after returning the response.
+ * The proposed names for the method.
*/
- bool get isCompatible => _isCompatible;
+ List<String> get names => _names;
/**
- * A flag indicating whether the plugin supports the same version of the
- * plugin spec as the analysis server. If the value is false, then the plugin
- * is expected to shutdown after returning the response.
+ * The proposed names for the method.
*/
- void set isCompatible(bool value) {
+ void set names(List<String> value) {
assert(value != null);
- this._isCompatible = value;
+ this._names = value;
}
/**
- * The name of the plugin. This value is only used when the server needs to
- * identify the plugin, either to the user or for debugging purposes.
+ * True if a getter could be created rather than a method.
*/
- String get name => _name;
+ bool get canCreateGetter => _canCreateGetter;
/**
- * The name of the plugin. This value is only used when the server needs to
- * identify the plugin, either to the user or for debugging purposes.
+ * True if a getter could be created rather than a method.
*/
- void set name(String value) {
+ void set canCreateGetter(bool value) {
assert(value != null);
- this._name = value;
+ this._canCreateGetter = value;
}
/**
- * The version of the plugin. This value is only used when the server needs
- * to identify the plugin, either to the user or for debugging purposes.
+ * The proposed parameters for the method.
*/
- String get version => _version;
+ List<RefactoringMethodParameter> get parameters => _parameters;
/**
- * The version of the plugin. This value is only used when the server needs
- * to identify the plugin, either to the user or for debugging purposes.
+ * The proposed parameters for the method.
*/
- void set version(String value) {
+ void set parameters(List<RefactoringMethodParameter> value) {
assert(value != null);
- this._version = value;
+ this._parameters = value;
}
/**
- * Information that the user can use to use to contact the maintainers of the
- * plugin when there is a problem.
+ * The offsets of the expressions or statements that would be replaced by an
+ * invocation of the method.
*/
- String get contactInfo => _contactInfo;
+ List<int> get offsets => _offsets;
/**
- * Information that the user can use to use to contact the maintainers of the
- * plugin when there is a problem.
+ * The offsets of the expressions or statements that would be replaced by an
+ * invocation of the method.
*/
- void set contactInfo(String value) {
- this._contactInfo = value;
+ void set offsets(List<int> value) {
+ assert(value != null);
+ this._offsets = value;
}
/**
- * The glob patterns of the files for which the plugin will provide
- * information. This value is ignored if the isCompatible field is false.
- * Otherwise, it will be used to identify the files for which the plugin
- * should be notified of changes.
+ * The lengths of the expressions or statements that would be replaced by an
+ * invocation of the method. The lengths correspond to the offsets. In other
+ * words, for a given expression (or block of statements), if the offset of
+ * that expression is offsets[i], then the length of that expression is
+ * lengths[i].
*/
- List<String> get interestingFiles => _interestingFiles;
+ List<int> get lengths => _lengths;
/**
- * The glob patterns of the files for which the plugin will provide
- * information. This value is ignored if the isCompatible field is false.
- * Otherwise, it will be used to identify the files for which the plugin
- * should be notified of changes.
+ * The lengths of the expressions or statements that would be replaced by an
+ * invocation of the method. The lengths correspond to the offsets. In other
+ * words, for a given expression (or block of statements), if the offset of
+ * that expression is offsets[i], then the length of that expression is
+ * lengths[i].
*/
- void set interestingFiles(List<String> value) {
+ void set lengths(List<int> value) {
assert(value != null);
- this._interestingFiles = value;
+ this._lengths = value;
}
- PluginVersionCheckResult(bool isCompatible, String name, String version,
- List<String> interestingFiles,
- {String contactInfo}) {
- this.isCompatible = isCompatible;
- this.name = name;
- this.version = version;
- this.contactInfo = contactInfo;
- this.interestingFiles = interestingFiles;
+ ExtractMethodFeedback(
+ int offset,
+ int length,
+ String returnType,
+ List<String> names,
+ bool canCreateGetter,
+ List<RefactoringMethodParameter> parameters,
+ List<int> offsets,
+ List<int> lengths) {
+ this.offset = offset;
+ this.length = length;
+ this.returnType = returnType;
+ this.names = names;
+ this.canCreateGetter = canCreateGetter;
+ this.parameters = parameters;
+ this.offsets = offsets;
+ this.lengths = lengths;
}
- factory PluginVersionCheckResult.fromJson(
+ factory ExtractMethodFeedback.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- bool isCompatible;
- if (json.containsKey("isCompatible")) {
- isCompatible = jsonDecoder.decodeBool(
- jsonPath + ".isCompatible", json["isCompatible"]);
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "isCompatible");
+ throw jsonDecoder.mismatch(jsonPath, "offset");
}
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
+ int length;
+ if (json.containsKey("length")) {
+ length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "name");
+ throw jsonDecoder.mismatch(jsonPath, "length");
}
- String version;
- if (json.containsKey("version")) {
- version =
- jsonDecoder.decodeString(jsonPath + ".version", json["version"]);
+ String returnType;
+ if (json.containsKey("returnType")) {
+ returnType = jsonDecoder.decodeString(
+ jsonPath + ".returnType", json["returnType"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "version");
+ throw jsonDecoder.mismatch(jsonPath, "returnType");
}
- String contactInfo;
- if (json.containsKey("contactInfo")) {
- contactInfo = jsonDecoder.decodeString(
- jsonPath + ".contactInfo", json["contactInfo"]);
+ List<String> names;
+ if (json.containsKey("names")) {
+ names = jsonDecoder.decodeList(
+ jsonPath + ".names", json["names"], jsonDecoder.decodeString);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "names");
}
- List<String> interestingFiles;
- if (json.containsKey("interestingFiles")) {
- interestingFiles = jsonDecoder.decodeList(
- jsonPath + ".interestingFiles",
- json["interestingFiles"],
- jsonDecoder.decodeString);
+ bool canCreateGetter;
+ if (json.containsKey("canCreateGetter")) {
+ canCreateGetter = jsonDecoder.decodeBool(
+ jsonPath + ".canCreateGetter", json["canCreateGetter"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "interestingFiles");
+ throw jsonDecoder.mismatch(jsonPath, "canCreateGetter");
}
- return new PluginVersionCheckResult(
- isCompatible, name, version, interestingFiles,
- contactInfo: contactInfo);
+ List<RefactoringMethodParameter> parameters;
+ if (json.containsKey("parameters")) {
+ parameters = jsonDecoder.decodeList(
+ jsonPath + ".parameters",
+ json["parameters"],
+ (String jsonPath, Object json) =>
+ new RefactoringMethodParameter.fromJson(
+ jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "parameters");
+ }
+ List<int> offsets;
+ if (json.containsKey("offsets")) {
+ offsets = jsonDecoder.decodeList(
+ jsonPath + ".offsets", json["offsets"], jsonDecoder.decodeInt);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "offsets");
+ }
+ List<int> lengths;
+ if (json.containsKey("lengths")) {
+ lengths = jsonDecoder.decodeList(
+ jsonPath + ".lengths", json["lengths"], jsonDecoder.decodeInt);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "lengths");
+ }
+ return new ExtractMethodFeedback(offset, length, returnType, names,
+ canCreateGetter, parameters, offsets, lengths);
} else {
- throw jsonDecoder.mismatch(jsonPath, "plugin.versionCheck result", json);
+ throw jsonDecoder.mismatch(jsonPath, "extractMethod feedback", json);
}
}
- factory PluginVersionCheckResult.fromResponse(Response response) {
- return new PluginVersionCheckResult.fromJson(
- new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
- "result",
- response.result);
- }
-
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["isCompatible"] = isCompatible;
- result["name"] = name;
- result["version"] = version;
- if (contactInfo != null) {
- result["contactInfo"] = contactInfo;
- }
- result["interestingFiles"] = interestingFiles;
+ result["offset"] = offset;
+ result["length"] = length;
+ result["returnType"] = returnType;
+ result["names"] = names;
+ result["canCreateGetter"] = canCreateGetter;
+ result["parameters"] = parameters
+ .map((RefactoringMethodParameter value) => value.toJson())
+ .toList();
+ result["offsets"] = offsets;
+ result["lengths"] = lengths;
return result;
}
@override
- Response toResponse(String id) {
- return new Response(id, result: toJson());
- }
-
- @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is PluginVersionCheckResult) {
- return isCompatible == other.isCompatible &&
- name == other.name &&
- version == other.version &&
- contactInfo == other.contactInfo &&
- listEqual(interestingFiles, other.interestingFiles,
- (String a, String b) => a == b);
+ if (other is ExtractMethodFeedback) {
+ return offset == other.offset &&
+ length == other.length &&
+ returnType == other.returnType &&
+ listEqual(names, other.names, (String a, String b) => a == b) &&
+ canCreateGetter == other.canCreateGetter &&
+ listEqual(
+ parameters,
+ other.parameters,
+ (RefactoringMethodParameter a, RefactoringMethodParameter b) =>
+ a == b) &&
+ listEqual(offsets, other.offsets, (int a, int b) => a == b) &&
+ listEqual(lengths, other.lengths, (int a, int b) => a == b);
}
return false;
}
@@ -9529,90 +4239,207 @@ class PluginVersionCheckResult implements ResponseResult {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, isCompatible.hashCode);
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, version.hashCode);
- hash = JenkinsSmiHash.combine(hash, contactInfo.hashCode);
- hash = JenkinsSmiHash.combine(hash, interestingFiles.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, length.hashCode);
+ hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
+ hash = JenkinsSmiHash.combine(hash, names.hashCode);
+ hash = JenkinsSmiHash.combine(hash, canCreateGetter.hashCode);
+ hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
+ hash = JenkinsSmiHash.combine(hash, offsets.hashCode);
+ hash = JenkinsSmiHash.combine(hash, lengths.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * Position
+ * extractMethod options
*
* {
- * "file": FilePath
- * "offset": int
+ * "returnType": String
+ * "createGetter": bool
+ * "name": String
+ * "parameters": List<RefactoringMethodParameter>
+ * "extractAll": bool
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class Position implements HasToJson {
- String _file;
+class ExtractMethodOptions extends RefactoringOptions {
+ String _returnType;
- int _offset;
+ bool _createGetter;
+
+ String _name;
+
+ List<RefactoringMethodParameter> _parameters;
+
+ bool _extractAll;
/**
- * The file containing the position.
+ * The return type that should be defined for the method.
*/
- String get file => _file;
+ String get returnType => _returnType;
/**
- * The file containing the position.
+ * The return type that should be defined for the method.
*/
- void set file(String value) {
+ void set returnType(String value) {
assert(value != null);
- this._file = value;
+ this._returnType = value;
}
/**
- * The offset of the position.
+ * True if a getter should be created rather than a method. It is an error if
+ * this field is true and the list of parameters is non-empty.
*/
- int get offset => _offset;
+ bool get createGetter => _createGetter;
/**
- * The offset of the position.
+ * True if a getter should be created rather than a method. It is an error if
+ * this field is true and the list of parameters is non-empty.
*/
- void set offset(int value) {
+ void set createGetter(bool value) {
assert(value != null);
- this._offset = value;
+ this._createGetter = value;
}
- Position(String file, int offset) {
- this.file = file;
- this.offset = offset;
+ /**
+ * The name that the method should be given.
+ */
+ String get name => _name;
+
+ /**
+ * The name that the method should be given.
+ */
+ void set name(String value) {
+ assert(value != null);
+ this._name = value;
+ }
+
+ /**
+ * The parameters that should be defined for the method.
+ *
+ * It is an error if a REQUIRED or NAMED parameter follows a POSITIONAL
+ * parameter. It is an error if a REQUIRED or POSITIONAL parameter follows a
+ * NAMED parameter.
+ *
+ * - To change the order and/or update proposed parameters, add parameters
+ * with the same identifiers as proposed.
+ * - To add new parameters, omit their identifier.
+ * - To remove some parameters, omit them in this list.
+ */
+ List<RefactoringMethodParameter> get parameters => _parameters;
+
+ /**
+ * The parameters that should be defined for the method.
+ *
+ * It is an error if a REQUIRED or NAMED parameter follows a POSITIONAL
+ * parameter. It is an error if a REQUIRED or POSITIONAL parameter follows a
+ * NAMED parameter.
+ *
+ * - To change the order and/or update proposed parameters, add parameters
+ * with the same identifiers as proposed.
+ * - To add new parameters, omit their identifier.
+ * - To remove some parameters, omit them in this list.
+ */
+ void set parameters(List<RefactoringMethodParameter> value) {
+ assert(value != null);
+ this._parameters = value;
}
- factory Position.fromJson(
+ /**
+ * True if all occurrences of the expression or statements should be replaced
+ * by an invocation of the method. The expression or statements used to
+ * initiate the refactoring will always be replaced.
+ */
+ bool get extractAll => _extractAll;
+
+ /**
+ * True if all occurrences of the expression or statements should be replaced
+ * by an invocation of the method. The expression or statements used to
+ * initiate the refactoring will always be replaced.
+ */
+ void set extractAll(bool value) {
+ assert(value != null);
+ this._extractAll = value;
+ }
+
+ ExtractMethodOptions(String returnType, bool createGetter, String name,
+ List<RefactoringMethodParameter> parameters, bool extractAll) {
+ this.returnType = returnType;
+ this.createGetter = createGetter;
+ this.name = name;
+ this.parameters = parameters;
+ this.extractAll = extractAll;
+ }
+
+ factory ExtractMethodOptions.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
+ String returnType;
+ if (json.containsKey("returnType")) {
+ returnType = jsonDecoder.decodeString(
+ jsonPath + ".returnType", json["returnType"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "file");
+ throw jsonDecoder.mismatch(jsonPath, "returnType");
}
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ bool createGetter;
+ if (json.containsKey("createGetter")) {
+ createGetter = jsonDecoder.decodeBool(
+ jsonPath + ".createGetter", json["createGetter"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
+ throw jsonDecoder.mismatch(jsonPath, "createGetter");
+ }
+ String name;
+ if (json.containsKey("name")) {
+ name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "name");
+ }
+ List<RefactoringMethodParameter> parameters;
+ if (json.containsKey("parameters")) {
+ parameters = jsonDecoder.decodeList(
+ jsonPath + ".parameters",
+ json["parameters"],
+ (String jsonPath, Object json) =>
+ new RefactoringMethodParameter.fromJson(
+ jsonDecoder, jsonPath, json));
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "parameters");
+ }
+ bool extractAll;
+ if (json.containsKey("extractAll")) {
+ extractAll = jsonDecoder.decodeBool(
+ jsonPath + ".extractAll", json["extractAll"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "extractAll");
}
- return new Position(file, offset);
+ return new ExtractMethodOptions(
+ returnType, createGetter, name, parameters, extractAll);
} else {
- throw jsonDecoder.mismatch(jsonPath, "Position", json);
+ throw jsonDecoder.mismatch(jsonPath, "extractMethod options", json);
}
}
+ factory ExtractMethodOptions.fromRefactoringParams(
+ EditGetRefactoringParams refactoringParams, Request request) {
+ return new ExtractMethodOptions.fromJson(
+ new RequestDecoder(request), "options", refactoringParams.options);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["file"] = file;
- result["offset"] = offset;
+ result["returnType"] = returnType;
+ result["createGetter"] = createGetter;
+ result["name"] = name;
+ result["parameters"] = parameters
+ .map((RefactoringMethodParameter value) => value.toJson())
+ .toList();
+ result["extractAll"] = extractAll;
return result;
}
@@ -9621,8 +4448,16 @@ class Position implements HasToJson {
@override
bool operator ==(other) {
- if (other is Position) {
- return file == other.file && offset == other.offset;
+ if (other is ExtractMethodOptions) {
+ return returnType == other.returnType &&
+ createGetter == other.createGetter &&
+ name == other.name &&
+ listEqual(
+ parameters,
+ other.parameters,
+ (RefactoringMethodParameter a, RefactoringMethodParameter b) =>
+ a == b) &&
+ extractAll == other.extractAll;
}
return false;
}
@@ -9630,91 +4465,92 @@ class Position implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, returnType.hashCode);
+ hash = JenkinsSmiHash.combine(hash, createGetter.hashCode);
+ hash = JenkinsSmiHash.combine(hash, name.hashCode);
+ hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
+ hash = JenkinsSmiHash.combine(hash, extractAll.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * PrioritizedSourceChange
+ * inlineLocalVariable feedback
*
* {
- * "priority": int
- * "change": SourceChange
+ * "name": String
+ * "occurrences": int
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class PrioritizedSourceChange implements HasToJson {
- int _priority;
+class InlineLocalVariableFeedback extends RefactoringFeedback {
+ String _name;
- SourceChange _change;
+ int _occurrences;
/**
- * The priority of the change. The value is expected to be non-negative, and
- * zero (0) is the lowest priority.
+ * The name of the variable being inlined.
*/
- int get priority => _priority;
+ String get name => _name;
/**
- * The priority of the change. The value is expected to be non-negative, and
- * zero (0) is the lowest priority.
+ * The name of the variable being inlined.
*/
- void set priority(int value) {
+ void set name(String value) {
assert(value != null);
- this._priority = value;
+ this._name = value;
}
/**
- * The change with which the relevance is associated.
+ * The number of times the variable occurs.
*/
- SourceChange get change => _change;
+ int get occurrences => _occurrences;
/**
- * The change with which the relevance is associated.
+ * The number of times the variable occurs.
*/
- void set change(SourceChange value) {
+ void set occurrences(int value) {
assert(value != null);
- this._change = value;
+ this._occurrences = value;
}
- PrioritizedSourceChange(int priority, SourceChange change) {
- this.priority = priority;
- this.change = change;
+ InlineLocalVariableFeedback(String name, int occurrences) {
+ this.name = name;
+ this.occurrences = occurrences;
}
- factory PrioritizedSourceChange.fromJson(
+ factory InlineLocalVariableFeedback.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- int priority;
- if (json.containsKey("priority")) {
- priority =
- jsonDecoder.decodeInt(jsonPath + ".priority", json["priority"]);
+ String name;
+ if (json.containsKey("name")) {
+ name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "priority");
+ throw jsonDecoder.mismatch(jsonPath, "name");
}
- SourceChange change;
- if (json.containsKey("change")) {
- change = new SourceChange.fromJson(
- jsonDecoder, jsonPath + ".change", json["change"]);
+ int occurrences;
+ if (json.containsKey("occurrences")) {
+ occurrences = jsonDecoder.decodeInt(
+ jsonPath + ".occurrences", json["occurrences"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "change");
+ throw jsonDecoder.mismatch(jsonPath, "occurrences");
}
- return new PrioritizedSourceChange(priority, change);
+ return new InlineLocalVariableFeedback(name, occurrences);
} else {
- throw jsonDecoder.mismatch(jsonPath, "PrioritizedSourceChange", json);
+ throw jsonDecoder.mismatch(
+ jsonPath, "inlineLocalVariable feedback", json);
}
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["priority"] = priority;
- result["change"] = change.toJson();
+ result["name"] = name;
+ result["occurrences"] = occurrences;
return result;
}
@@ -9723,8 +4559,8 @@ class PrioritizedSourceChange implements HasToJson {
@override
bool operator ==(other) {
- if (other is PrioritizedSourceChange) {
- return priority == other.priority && change == other.change;
+ if (other is InlineLocalVariableFeedback) {
+ return name == other.name && occurrences == other.occurrences;
}
return false;
}
@@ -9732,41 +4568,22 @@ class PrioritizedSourceChange implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, priority.hashCode);
- hash = JenkinsSmiHash.combine(hash, change.hashCode);
+ hash = JenkinsSmiHash.combine(hash, name.hashCode);
+ hash = JenkinsSmiHash.combine(hash, occurrences.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * RefactoringFeedback
- *
- * {
- * }
+ * inlineLocalVariable options
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringFeedback implements HasToJson {
- RefactoringFeedback();
-
- factory RefactoringFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json, Map responseJson) {
- return refactoringFeedbackFromJson(
- jsonDecoder, jsonPath, json, responseJson);
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
+class InlineLocalVariableOptions extends RefactoringOptions
+ implements HasToJson {
@override
bool operator ==(other) {
- if (other is RefactoringFeedback) {
+ if (other is InlineLocalVariableOptions) {
return true;
}
return false;
@@ -9774,274 +4591,230 @@ class RefactoringFeedback implements HasToJson {
@override
int get hashCode {
- int hash = 0;
- return JenkinsSmiHash.finish(hash);
+ return 540364977;
}
}
/**
- * RefactoringKind
+ * inlineMethod feedback
*
- * enum {
- * CONVERT_GETTER_TO_METHOD
- * CONVERT_METHOD_TO_GETTER
- * EXTRACT_LOCAL_VARIABLE
- * EXTRACT_METHOD
- * INLINE_LOCAL_VARIABLE
- * INLINE_METHOD
- * MOVE_FILE
- * RENAME
- * SORT_MEMBERS
+ * {
+ * "className": optional String
+ * "methodName": String
+ * "isDeclaration": bool
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringKind implements Enum {
- static const RefactoringKind CONVERT_GETTER_TO_METHOD =
- const RefactoringKind._("CONVERT_GETTER_TO_METHOD");
-
- static const RefactoringKind CONVERT_METHOD_TO_GETTER =
- const RefactoringKind._("CONVERT_METHOD_TO_GETTER");
-
- static const RefactoringKind EXTRACT_LOCAL_VARIABLE =
- const RefactoringKind._("EXTRACT_LOCAL_VARIABLE");
-
- static const RefactoringKind EXTRACT_METHOD =
- const RefactoringKind._("EXTRACT_METHOD");
+class InlineMethodFeedback extends RefactoringFeedback {
+ String _className;
- static const RefactoringKind INLINE_LOCAL_VARIABLE =
- const RefactoringKind._("INLINE_LOCAL_VARIABLE");
+ String _methodName;
- static const RefactoringKind INLINE_METHOD =
- const RefactoringKind._("INLINE_METHOD");
+ bool _isDeclaration;
- static const RefactoringKind MOVE_FILE = const RefactoringKind._("MOVE_FILE");
+ /**
+ * The name of the class enclosing the method being inlined. If not a class
+ * member is being inlined, this field will be absent.
+ */
+ String get className => _className;
- static const RefactoringKind RENAME = const RefactoringKind._("RENAME");
+ /**
+ * The name of the class enclosing the method being inlined. If not a class
+ * member is being inlined, this field will be absent.
+ */
+ void set className(String value) {
+ this._className = value;
+ }
- static const RefactoringKind SORT_MEMBERS =
- const RefactoringKind._("SORT_MEMBERS");
+ /**
+ * The name of the method (or function) being inlined.
+ */
+ String get methodName => _methodName;
/**
- * A list containing all of the enum values that are defined.
+ * The name of the method (or function) being inlined.
*/
- static const List<RefactoringKind> VALUES = const <RefactoringKind>[
- CONVERT_GETTER_TO_METHOD,
- CONVERT_METHOD_TO_GETTER,
- EXTRACT_LOCAL_VARIABLE,
- EXTRACT_METHOD,
- INLINE_LOCAL_VARIABLE,
- INLINE_METHOD,
- MOVE_FILE,
- RENAME,
- SORT_MEMBERS
- ];
+ void set methodName(String value) {
+ assert(value != null);
+ this._methodName = value;
+ }
- @override
- final String name;
+ /**
+ * True if the declaration of the method is selected and all references
+ * should be inlined.
+ */
+ bool get isDeclaration => _isDeclaration;
- const RefactoringKind._(this.name);
+ /**
+ * True if the declaration of the method is selected and all references
+ * should be inlined.
+ */
+ void set isDeclaration(bool value) {
+ assert(value != null);
+ this._isDeclaration = value;
+ }
- factory RefactoringKind(String name) {
- switch (name) {
- case "CONVERT_GETTER_TO_METHOD":
- return CONVERT_GETTER_TO_METHOD;
- case "CONVERT_METHOD_TO_GETTER":
- return CONVERT_METHOD_TO_GETTER;
- case "EXTRACT_LOCAL_VARIABLE":
- return EXTRACT_LOCAL_VARIABLE;
- case "EXTRACT_METHOD":
- return EXTRACT_METHOD;
- case "INLINE_LOCAL_VARIABLE":
- return INLINE_LOCAL_VARIABLE;
- case "INLINE_METHOD":
- return INLINE_METHOD;
- case "MOVE_FILE":
- return MOVE_FILE;
- case "RENAME":
- return RENAME;
- case "SORT_MEMBERS":
- return SORT_MEMBERS;
- }
- throw new Exception('Illegal enum value: $name');
+ InlineMethodFeedback(String methodName, bool isDeclaration,
+ {String className}) {
+ this.className = className;
+ this.methodName = methodName;
+ this.isDeclaration = isDeclaration;
}
- factory RefactoringKind.fromJson(
+ factory InlineMethodFeedback.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new RefactoringKind(json);
- } catch (_) {
- // Fall through
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ String className;
+ if (json.containsKey("className")) {
+ className = jsonDecoder.decodeString(
+ jsonPath + ".className", json["className"]);
+ }
+ String methodName;
+ if (json.containsKey("methodName")) {
+ methodName = jsonDecoder.decodeString(
+ jsonPath + ".methodName", json["methodName"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "methodName");
+ }
+ bool isDeclaration;
+ if (json.containsKey("isDeclaration")) {
+ isDeclaration = jsonDecoder.decodeBool(
+ jsonPath + ".isDeclaration", json["isDeclaration"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "isDeclaration");
}
+ return new InlineMethodFeedback(methodName, isDeclaration,
+ className: className);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "inlineMethod feedback", json);
+ }
+ }
+
+ @override
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ if (className != null) {
+ result["className"] = className;
}
- throw jsonDecoder.mismatch(jsonPath, "RefactoringKind", json);
+ result["methodName"] = methodName;
+ result["isDeclaration"] = isDeclaration;
+ return result;
}
@override
- String toString() => "RefactoringKind.$name";
+ String toString() => JSON.encode(toJson());
- String toJson() => name;
+ @override
+ bool operator ==(other) {
+ if (other is InlineMethodFeedback) {
+ return className == other.className &&
+ methodName == other.methodName &&
+ isDeclaration == other.isDeclaration;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, className.hashCode);
+ hash = JenkinsSmiHash.combine(hash, methodName.hashCode);
+ hash = JenkinsSmiHash.combine(hash, isDeclaration.hashCode);
+ return JenkinsSmiHash.finish(hash);
+ }
}
/**
- * RefactoringMethodParameter
+ * inlineMethod options
*
* {
- * "id": optional String
- * "kind": RefactoringMethodParameterKind
- * "type": String
- * "name": String
- * "parameters": optional String
+ * "deleteSource": bool
+ * "inlineAll": bool
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringMethodParameter implements HasToJson {
- String _id;
-
- RefactoringMethodParameterKind _kind;
-
- String _type;
-
- String _name;
-
- String _parameters;
-
- /**
- * The unique identifier of the parameter. Clients may omit this field for
- * the parameters they want to add.
- */
- String get id => _id;
-
- /**
- * The unique identifier of the parameter. Clients may omit this field for
- * the parameters they want to add.
- */
- void set id(String value) {
- this._id = value;
- }
-
- /**
- * The kind of the parameter.
- */
- RefactoringMethodParameterKind get kind => _kind;
+class InlineMethodOptions extends RefactoringOptions {
+ bool _deleteSource;
- /**
- * The kind of the parameter.
- */
- void set kind(RefactoringMethodParameterKind value) {
- assert(value != null);
- this._kind = value;
- }
+ bool _inlineAll;
/**
- * The type that should be given to the parameter, or the return type of the
- * parameter's function type.
+ * True if the method being inlined should be removed. It is an error if this
+ * field is true and inlineAll is false.
*/
- String get type => _type;
+ bool get deleteSource => _deleteSource;
/**
- * The type that should be given to the parameter, or the return type of the
- * parameter's function type.
+ * True if the method being inlined should be removed. It is an error if this
+ * field is true and inlineAll is false.
*/
- void set type(String value) {
+ void set deleteSource(bool value) {
assert(value != null);
- this._type = value;
+ this._deleteSource = value;
}
/**
- * The name that should be given to the parameter.
+ * True if all invocations of the method should be inlined, or false if only
+ * the invocation site used to create this refactoring should be inlined.
*/
- String get name => _name;
+ bool get inlineAll => _inlineAll;
/**
- * The name that should be given to the parameter.
+ * True if all invocations of the method should be inlined, or false if only
+ * the invocation site used to create this refactoring should be inlined.
*/
- void set name(String value) {
+ void set inlineAll(bool value) {
assert(value != null);
- this._name = value;
- }
-
- /**
- * The parameter list of the parameter's function type. If the parameter is
- * not of a function type, this field will not be defined. If the function
- * type has zero parameters, this field will have a value of '()'.
- */
- String get parameters => _parameters;
-
- /**
- * The parameter list of the parameter's function type. If the parameter is
- * not of a function type, this field will not be defined. If the function
- * type has zero parameters, this field will have a value of '()'.
- */
- void set parameters(String value) {
- this._parameters = value;
+ this._inlineAll = value;
}
- RefactoringMethodParameter(
- RefactoringMethodParameterKind kind, String type, String name,
- {String id, String parameters}) {
- this.id = id;
- this.kind = kind;
- this.type = type;
- this.name = name;
- this.parameters = parameters;
+ InlineMethodOptions(bool deleteSource, bool inlineAll) {
+ this.deleteSource = deleteSource;
+ this.inlineAll = inlineAll;
}
- factory RefactoringMethodParameter.fromJson(
+ factory InlineMethodOptions.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String id;
- if (json.containsKey("id")) {
- id = jsonDecoder.decodeString(jsonPath + ".id", json["id"]);
- }
- RefactoringMethodParameterKind kind;
- if (json.containsKey("kind")) {
- kind = new RefactoringMethodParameterKind.fromJson(
- jsonDecoder, jsonPath + ".kind", json["kind"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "kind");
- }
- String type;
- if (json.containsKey("type")) {
- type = jsonDecoder.decodeString(jsonPath + ".type", json["type"]);
+ bool deleteSource;
+ if (json.containsKey("deleteSource")) {
+ deleteSource = jsonDecoder.decodeBool(
+ jsonPath + ".deleteSource", json["deleteSource"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "type");
+ throw jsonDecoder.mismatch(jsonPath, "deleteSource");
}
- String name;
- if (json.containsKey("name")) {
- name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
+ bool inlineAll;
+ if (json.containsKey("inlineAll")) {
+ inlineAll =
+ jsonDecoder.decodeBool(jsonPath + ".inlineAll", json["inlineAll"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "name");
- }
- String parameters;
- if (json.containsKey("parameters")) {
- parameters = jsonDecoder.decodeString(
- jsonPath + ".parameters", json["parameters"]);
+ throw jsonDecoder.mismatch(jsonPath, "inlineAll");
}
- return new RefactoringMethodParameter(kind, type, name,
- id: id, parameters: parameters);
+ return new InlineMethodOptions(deleteSource, inlineAll);
} else {
- throw jsonDecoder.mismatch(jsonPath, "RefactoringMethodParameter", json);
+ throw jsonDecoder.mismatch(jsonPath, "inlineMethod options", json);
}
}
+ factory InlineMethodOptions.fromRefactoringParams(
+ EditGetRefactoringParams refactoringParams, Request request) {
+ return new InlineMethodOptions.fromJson(
+ new RequestDecoder(request), "options", refactoringParams.options);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- if (id != null) {
- result["id"] = id;
- }
- result["kind"] = kind.toJson();
- result["type"] = type;
- result["name"] = name;
- if (parameters != null) {
- result["parameters"] = parameters;
- }
+ result["deleteSource"] = deleteSource;
+ result["inlineAll"] = inlineAll;
return result;
}
@@ -10050,12 +4823,8 @@ class RefactoringMethodParameter implements HasToJson {
@override
bool operator ==(other) {
- if (other is RefactoringMethodParameter) {
- return id == other.id &&
- kind == other.kind &&
- type == other.type &&
- name == other.name &&
- parameters == other.parameters;
+ if (other is InlineMethodOptions) {
+ return deleteSource == other.deleteSource && inlineAll == other.inlineAll;
}
return false;
}
@@ -10063,97 +4832,90 @@ class RefactoringMethodParameter implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, id.hashCode);
- hash = JenkinsSmiHash.combine(hash, kind.hashCode);
- hash = JenkinsSmiHash.combine(hash, type.hashCode);
- hash = JenkinsSmiHash.combine(hash, name.hashCode);
- hash = JenkinsSmiHash.combine(hash, parameters.hashCode);
+ hash = JenkinsSmiHash.combine(hash, deleteSource.hashCode);
+ hash = JenkinsSmiHash.combine(hash, inlineAll.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * RefactoringMethodParameterKind
- *
- * enum {
- * REQUIRED
- * POSITIONAL
- * NAMED
- * }
+ * moveFile feedback
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringMethodParameterKind implements Enum {
- static const RefactoringMethodParameterKind REQUIRED =
- const RefactoringMethodParameterKind._("REQUIRED");
-
- static const RefactoringMethodParameterKind POSITIONAL =
- const RefactoringMethodParameterKind._("POSITIONAL");
-
- static const RefactoringMethodParameterKind NAMED =
- const RefactoringMethodParameterKind._("NAMED");
-
- /**
- * A list containing all of the enum values that are defined.
- */
- static const List<RefactoringMethodParameterKind> VALUES =
- const <RefactoringMethodParameterKind>[REQUIRED, POSITIONAL, NAMED];
-
+class MoveFileFeedback extends RefactoringFeedback implements HasToJson {
@override
- final String name;
-
- const RefactoringMethodParameterKind._(this.name);
-
- factory RefactoringMethodParameterKind(String name) {
- switch (name) {
- case "REQUIRED":
- return REQUIRED;
- case "POSITIONAL":
- return POSITIONAL;
- case "NAMED":
- return NAMED;
- }
- throw new Exception('Illegal enum value: $name');
- }
-
- factory RefactoringMethodParameterKind.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new RefactoringMethodParameterKind(json);
- } catch (_) {
- // Fall through
- }
+ bool operator ==(other) {
+ if (other is MoveFileFeedback) {
+ return true;
}
- throw jsonDecoder.mismatch(
- jsonPath, "RefactoringMethodParameterKind", json);
+ return false;
}
@override
- String toString() => "RefactoringMethodParameterKind.$name";
-
- String toJson() => name;
+ int get hashCode {
+ return 438975893;
+ }
}
/**
- * RefactoringOptions
+ * moveFile options
*
* {
+ * "newFile": FilePath
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringOptions implements HasToJson {
- RefactoringOptions();
+class MoveFileOptions extends RefactoringOptions {
+ String _newFile;
+
+ /**
+ * The new file path to which the given file is being moved.
+ */
+ String get newFile => _newFile;
+
+ /**
+ * The new file path to which the given file is being moved.
+ */
+ void set newFile(String value) {
+ assert(value != null);
+ this._newFile = value;
+ }
+
+ MoveFileOptions(String newFile) {
+ this.newFile = newFile;
+ }
+
+ factory MoveFileOptions.fromJson(
+ JsonDecoder jsonDecoder, String jsonPath, Object json) {
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ String newFile;
+ if (json.containsKey("newFile")) {
+ newFile =
+ jsonDecoder.decodeString(jsonPath + ".newFile", json["newFile"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "newFile");
+ }
+ return new MoveFileOptions(newFile);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "moveFile options", json);
+ }
+ }
- factory RefactoringOptions.fromJson(JsonDecoder jsonDecoder, String jsonPath,
- Object json, RefactoringKind kind) {
- return refactoringOptionsFromJson(jsonDecoder, jsonPath, json, kind);
+ factory MoveFileOptions.fromRefactoringParams(
+ EditGetRefactoringParams refactoringParams, Request request) {
+ return new MoveFileOptions.fromJson(
+ new RequestDecoder(request), "options", refactoringParams.options);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
+ result["newFile"] = newFile;
return result;
}
@@ -10162,8 +4924,8 @@ class RefactoringOptions implements HasToJson {
@override
bool operator ==(other) {
- if (other is RefactoringOptions) {
- return true;
+ if (other is MoveFileOptions) {
+ return newFile == other.newFile;
}
return false;
}
@@ -10171,48 +4933,55 @@ class RefactoringOptions implements HasToJson {
@override
int get hashCode {
int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, newFile.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * RefactoringProblem
+ * plugin.error params
*
* {
- * "severity": RefactoringProblemSeverity
+ * "isFatal": bool
* "message": String
- * "location": optional Location
+ * "stackTrace": String
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringProblem implements HasToJson {
- RefactoringProblemSeverity _severity;
+class PluginErrorParams implements HasToJson {
+ bool _isFatal;
String _message;
- Location _location;
+ String _stackTrace;
/**
- * The severity of the problem being represented.
+ * A flag indicating whether the error is a fatal error, meaning that the
+ * plugin will shutdown automatically after sending this notification. If
+ * true, the server will not expect any other responses or notifications from
+ * the plugin.
*/
- RefactoringProblemSeverity get severity => _severity;
+ bool get isFatal => _isFatal;
/**
- * The severity of the problem being represented.
+ * A flag indicating whether the error is a fatal error, meaning that the
+ * plugin will shutdown automatically after sending this notification. If
+ * true, the server will not expect any other responses or notifications from
+ * the plugin.
*/
- void set severity(RefactoringProblemSeverity value) {
+ void set isFatal(bool value) {
assert(value != null);
- this._severity = value;
+ this._isFatal = value;
}
/**
- * A human-readable description of the problem being represented.
+ * The error message indicating what kind of error was encountered.
*/
String get message => _message;
/**
- * A human-readable description of the problem being represented.
+ * The error message indicating what kind of error was encountered.
*/
void set message(String value) {
assert(value != null);
@@ -10220,40 +4989,38 @@ class RefactoringProblem implements HasToJson {
}
/**
- * The location of the problem being represented. This field is omitted
- * unless there is a specific location associated with the problem (such as a
- * location where an element being renamed will be shadowed).
+ * The stack trace associated with the generation of the error, used for
+ * debugging the plugin.
*/
- Location get location => _location;
+ String get stackTrace => _stackTrace;
/**
- * The location of the problem being represented. This field is omitted
- * unless there is a specific location associated with the problem (such as a
- * location where an element being renamed will be shadowed).
+ * The stack trace associated with the generation of the error, used for
+ * debugging the plugin.
*/
- void set location(Location value) {
- this._location = value;
+ void set stackTrace(String value) {
+ assert(value != null);
+ this._stackTrace = value;
}
- RefactoringProblem(RefactoringProblemSeverity severity, String message,
- {Location location}) {
- this.severity = severity;
+ PluginErrorParams(bool isFatal, String message, String stackTrace) {
+ this.isFatal = isFatal;
this.message = message;
- this.location = location;
+ this.stackTrace = stackTrace;
}
- factory RefactoringProblem.fromJson(
+ factory PluginErrorParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- RefactoringProblemSeverity severity;
- if (json.containsKey("severity")) {
- severity = new RefactoringProblemSeverity.fromJson(
- jsonDecoder, jsonPath + ".severity", json["severity"]);
+ bool isFatal;
+ if (json.containsKey("isFatal")) {
+ isFatal =
+ jsonDecoder.decodeBool(jsonPath + ".isFatal", json["isFatal"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "severity");
+ throw jsonDecoder.mismatch(jsonPath, "isFatal");
}
String message;
if (json.containsKey("message")) {
@@ -10262,192 +5029,217 @@ class RefactoringProblem implements HasToJson {
} else {
throw jsonDecoder.mismatch(jsonPath, "message");
}
- Location location;
- if (json.containsKey("location")) {
- location = new Location.fromJson(
- jsonDecoder, jsonPath + ".location", json["location"]);
+ String stackTrace;
+ if (json.containsKey("stackTrace")) {
+ stackTrace = jsonDecoder.decodeString(
+ jsonPath + ".stackTrace", json["stackTrace"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "stackTrace");
}
- return new RefactoringProblem(severity, message, location: location);
+ return new PluginErrorParams(isFatal, message, stackTrace);
} else {
- throw jsonDecoder.mismatch(jsonPath, "RefactoringProblem", json);
+ throw jsonDecoder.mismatch(jsonPath, "plugin.error params", json);
+ }
+ }
+
+ factory PluginErrorParams.fromNotification(Notification notification) {
+ return new PluginErrorParams.fromJson(
+ new ResponseDecoder(null), "params", notification.params);
+ }
+
+ @override
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["isFatal"] = isFatal;
+ result["message"] = message;
+ result["stackTrace"] = stackTrace;
+ return result;
+ }
+
+ Notification toNotification() {
+ return new Notification("plugin.error", toJson());
+ }
+
+ @override
+ String toString() => JSON.encode(toJson());
+
+ @override
+ bool operator ==(other) {
+ if (other is PluginErrorParams) {
+ return isFatal == other.isFatal &&
+ message == other.message &&
+ stackTrace == other.stackTrace;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, isFatal.hashCode);
+ hash = JenkinsSmiHash.combine(hash, message.hashCode);
+ hash = JenkinsSmiHash.combine(hash, stackTrace.hashCode);
+ return JenkinsSmiHash.finish(hash);
+ }
+}
+
+/**
+ * plugin.shutdown params
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class PluginShutdownParams implements RequestParams {
+ @override
+ Map<String, dynamic> toJson() => <String, dynamic>{};
+
+ @override
+ Request toRequest(String id) {
+ return new Request(id, "plugin.shutdown", null);
+ }
+
+ @override
+ bool operator ==(other) {
+ if (other is PluginShutdownParams) {
+ return true;
}
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ return 478064585;
}
+}
+
+/**
+ * plugin.shutdown result
+ *
+ * Clients may not extend, implement or mix-in this class.
+ */
+class PluginShutdownResult implements ResponseResult {
+ @override
+ Map<String, dynamic> toJson() => <String, dynamic>{};
@override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["severity"] = severity.toJson();
- result["message"] = message;
- if (location != null) {
- result["location"] = location.toJson();
- }
- return result;
+ Response toResponse(String id) {
+ return new Response(id, result: null);
}
@override
- String toString() => JSON.encode(toJson());
-
- @override
bool operator ==(other) {
- if (other is RefactoringProblem) {
- return severity == other.severity &&
- message == other.message &&
- location == other.location;
+ if (other is PluginShutdownResult) {
+ return true;
}
return false;
}
@override
int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, severity.hashCode);
- hash = JenkinsSmiHash.combine(hash, message.hashCode);
- hash = JenkinsSmiHash.combine(hash, location.hashCode);
- return JenkinsSmiHash.finish(hash);
+ return 9389109;
}
}
/**
- * RefactoringProblemSeverity
+ * plugin.versionCheck params
*
- * enum {
- * INFO
- * WARNING
- * ERROR
- * FATAL
+ * {
+ * "byteStorePath": String
+ * "version": String
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RefactoringProblemSeverity implements Enum {
- /**
- * A minor code problem. No example, because it is not used yet.
- */
- static const RefactoringProblemSeverity INFO =
- const RefactoringProblemSeverity._("INFO");
+class PluginVersionCheckParams implements RequestParams {
+ String _byteStorePath;
+
+ String _version;
/**
- * A minor code problem. For example names of local variables should be camel
- * case and start with a lower case letter. Staring the name of a variable
- * with an upper case is OK from the language point of view, but it is nice
- * to warn the user.
+ * The path to the directory containing the on-disk byte store that is to be
+ * used by any analysis drivers that are created.
*/
- static const RefactoringProblemSeverity WARNING =
- const RefactoringProblemSeverity._("WARNING");
+ String get byteStorePath => _byteStorePath;
/**
- * The refactoring technically can be performed, but there is a logical
- * problem. For example the name of a local variable being extracted
- * conflicts with another name in the scope, or duplicate parameter names in
- * the method being extracted, or a conflict between a parameter name and a
- * local variable, etc. In some cases the location of the problem is also
- * provided, so the IDE can show user the location and the problem, and let
- * the user decide whether they want to perform the refactoring. For example
- * the name conflict might be expected, and the user wants to fix it
- * afterwards.
+ * The path to the directory containing the on-disk byte store that is to be
+ * used by any analysis drivers that are created.
*/
- static const RefactoringProblemSeverity ERROR =
- const RefactoringProblemSeverity._("ERROR");
+ void set byteStorePath(String value) {
+ assert(value != null);
+ this._byteStorePath = value;
+ }
/**
- * A fatal error, which prevents performing the refactoring. For example the
- * name of a local variable being extracted is not a valid identifier, or
- * selection is not a valid expression.
+ * The version number of the plugin spec supported by the analysis server
+ * that is executing the plugin.
*/
- static const RefactoringProblemSeverity FATAL =
- const RefactoringProblemSeverity._("FATAL");
+ String get version => _version;
/**
- * A list containing all of the enum values that are defined.
+ * The version number of the plugin spec supported by the analysis server
+ * that is executing the plugin.
*/
- static const List<RefactoringProblemSeverity> VALUES =
- const <RefactoringProblemSeverity>[INFO, WARNING, ERROR, FATAL];
-
- @override
- final String name;
-
- const RefactoringProblemSeverity._(this.name);
-
- factory RefactoringProblemSeverity(String name) {
- switch (name) {
- case "INFO":
- return INFO;
- case "WARNING":
- return WARNING;
- case "ERROR":
- return ERROR;
- case "FATAL":
- return FATAL;
- }
- throw new Exception('Illegal enum value: $name');
+ void set version(String value) {
+ assert(value != null);
+ this._version = value;
}
- factory RefactoringProblemSeverity.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new RefactoringProblemSeverity(json);
- } catch (_) {
- // Fall through
- }
- }
- throw jsonDecoder.mismatch(jsonPath, "RefactoringProblemSeverity", json);
+ PluginVersionCheckParams(String byteStorePath, String version) {
+ this.byteStorePath = byteStorePath;
+ this.version = version;
}
- /**
- * Returns the [RefactoringProblemSeverity] with the maximal severity.
- */
- static RefactoringProblemSeverity max(
- RefactoringProblemSeverity a, RefactoringProblemSeverity b) =>
- maxRefactoringProblemSeverity(a, b);
-
- @override
- String toString() => "RefactoringProblemSeverity.$name";
-
- String toJson() => name;
-}
-
-/**
- * RemoveContentOverlay
- *
- * {
- * "type": "remove"
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class RemoveContentOverlay implements HasToJson {
- RemoveContentOverlay();
-
- factory RemoveContentOverlay.fromJson(
+ factory PluginVersionCheckParams.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- if (json["type"] != "remove") {
- throw jsonDecoder.mismatch(jsonPath, "equal " + "remove", json);
+ String byteStorePath;
+ if (json.containsKey("byteStorePath")) {
+ byteStorePath = jsonDecoder.decodeString(
+ jsonPath + ".byteStorePath", json["byteStorePath"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "byteStorePath");
+ }
+ String version;
+ if (json.containsKey("version")) {
+ version =
+ jsonDecoder.decodeString(jsonPath + ".version", json["version"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "version");
}
- return new RemoveContentOverlay();
+ return new PluginVersionCheckParams(byteStorePath, version);
} else {
- throw jsonDecoder.mismatch(jsonPath, "RemoveContentOverlay", json);
+ throw jsonDecoder.mismatch(jsonPath, "plugin.versionCheck params", json);
}
}
+ factory PluginVersionCheckParams.fromRequest(Request request) {
+ return new PluginVersionCheckParams.fromJson(
+ new RequestDecoder(request), "params", request.params);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["type"] = "remove";
+ result["byteStorePath"] = byteStorePath;
+ result["version"] = version;
return result;
}
@override
+ Request toRequest(String id) {
+ return new Request(id, "plugin.versionCheck", toJson());
+ }
+
+ @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is RemoveContentOverlay) {
- return true;
+ if (other is PluginVersionCheckParams) {
+ return byteStorePath == other.byteStorePath && version == other.version;
}
return false;
}
@@ -10455,235 +5247,211 @@ class RemoveContentOverlay implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, 114870849);
+ hash = JenkinsSmiHash.combine(hash, byteStorePath.hashCode);
+ hash = JenkinsSmiHash.combine(hash, version.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * rename feedback
+ * plugin.versionCheck result
*
* {
- * "offset": int
- * "length": int
- * "elementKindName": String
- * "oldName": String
+ * "isCompatible": bool
+ * "name": String
+ * "version": String
+ * "contactInfo": optional String
+ * "interestingFiles": List<String>
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RenameFeedback extends RefactoringFeedback {
- int _offset;
-
- int _length;
-
- String _elementKindName;
-
- String _oldName;
+class PluginVersionCheckResult implements ResponseResult {
+ bool _isCompatible;
- /**
- * The offset to the beginning of the name selected to be renamed.
- */
- int get offset => _offset;
+ String _name;
- /**
- * The offset to the beginning of the name selected to be renamed.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
+ String _version;
- /**
- * The length of the name selected to be renamed.
- */
- int get length => _length;
+ String _contactInfo;
- /**
- * The length of the name selected to be renamed.
- */
- void set length(int value) {
- assert(value != null);
- this._length = value;
- }
+ List<String> _interestingFiles;
/**
- * The human-readable description of the kind of element being renamed (such
- * as “class” or “function type alias”).
+ * A flag indicating whether the plugin supports the same version of the
+ * plugin spec as the analysis server. If the value is false, then the plugin
+ * is expected to shutdown after returning the response.
*/
- String get elementKindName => _elementKindName;
+ bool get isCompatible => _isCompatible;
/**
- * The human-readable description of the kind of element being renamed (such
- * as “class” or “function type alias”).
+ * A flag indicating whether the plugin supports the same version of the
+ * plugin spec as the analysis server. If the value is false, then the plugin
+ * is expected to shutdown after returning the response.
*/
- void set elementKindName(String value) {
+ void set isCompatible(bool value) {
assert(value != null);
- this._elementKindName = value;
+ this._isCompatible = value;
}
/**
- * The old name of the element before the refactoring.
+ * The name of the plugin. This value is only used when the server needs to
+ * identify the plugin, either to the user or for debugging purposes.
*/
- String get oldName => _oldName;
+ String get name => _name;
/**
- * The old name of the element before the refactoring.
- */
- void set oldName(String value) {
- assert(value != null);
- this._oldName = value;
- }
-
- RenameFeedback(
- int offset, int length, String elementKindName, String oldName) {
- this.offset = offset;
- this.length = length;
- this.elementKindName = elementKindName;
- this.oldName = oldName;
- }
-
- factory RenameFeedback.fromJson(
- JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "length");
- }
- String elementKindName;
- if (json.containsKey("elementKindName")) {
- elementKindName = jsonDecoder.decodeString(
- jsonPath + ".elementKindName", json["elementKindName"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "elementKindName");
- }
- String oldName;
- if (json.containsKey("oldName")) {
- oldName =
- jsonDecoder.decodeString(jsonPath + ".oldName", json["oldName"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "oldName");
- }
- return new RenameFeedback(offset, length, elementKindName, oldName);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "rename feedback", json);
- }
- }
-
- @override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["offset"] = offset;
- result["length"] = length;
- result["elementKindName"] = elementKindName;
- result["oldName"] = oldName;
- return result;
- }
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is RenameFeedback) {
- return offset == other.offset &&
- length == other.length &&
- elementKindName == other.elementKindName &&
- oldName == other.oldName;
- }
- return false;
+ * The name of the plugin. This value is only used when the server needs to
+ * identify the plugin, either to the user or for debugging purposes.
+ */
+ void set name(String value) {
+ assert(value != null);
+ this._name = value;
}
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, elementKindName.hashCode);
- hash = JenkinsSmiHash.combine(hash, oldName.hashCode);
- return JenkinsSmiHash.finish(hash);
+ /**
+ * The version of the plugin. This value is only used when the server needs
+ * to identify the plugin, either to the user or for debugging purposes.
+ */
+ String get version => _version;
+
+ /**
+ * The version of the plugin. This value is only used when the server needs
+ * to identify the plugin, either to the user or for debugging purposes.
+ */
+ void set version(String value) {
+ assert(value != null);
+ this._version = value;
}
-}
-/**
- * rename options
- *
- * {
- * "newName": String
- * }
- *
- * Clients may not extend, implement or mix-in this class.
- */
-class RenameOptions extends RefactoringOptions {
- String _newName;
+ /**
+ * Information that the user can use to use to contact the maintainers of the
+ * plugin when there is a problem.
+ */
+ String get contactInfo => _contactInfo;
/**
- * The name that the element should have after the refactoring.
+ * Information that the user can use to use to contact the maintainers of the
+ * plugin when there is a problem.
*/
- String get newName => _newName;
+ void set contactInfo(String value) {
+ this._contactInfo = value;
+ }
/**
- * The name that the element should have after the refactoring.
+ * The glob patterns of the files for which the plugin will provide
+ * information. This value is ignored if the isCompatible field is false.
+ * Otherwise, it will be used to identify the files for which the plugin
+ * should be notified of changes.
*/
- void set newName(String value) {
+ List<String> get interestingFiles => _interestingFiles;
+
+ /**
+ * The glob patterns of the files for which the plugin will provide
+ * information. This value is ignored if the isCompatible field is false.
+ * Otherwise, it will be used to identify the files for which the plugin
+ * should be notified of changes.
+ */
+ void set interestingFiles(List<String> value) {
assert(value != null);
- this._newName = value;
+ this._interestingFiles = value;
}
- RenameOptions(String newName) {
- this.newName = newName;
+ PluginVersionCheckResult(bool isCompatible, String name, String version,
+ List<String> interestingFiles,
+ {String contactInfo}) {
+ this.isCompatible = isCompatible;
+ this.name = name;
+ this.version = version;
+ this.contactInfo = contactInfo;
+ this.interestingFiles = interestingFiles;
}
- factory RenameOptions.fromJson(
+ factory PluginVersionCheckResult.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String newName;
- if (json.containsKey("newName")) {
- newName =
- jsonDecoder.decodeString(jsonPath + ".newName", json["newName"]);
+ bool isCompatible;
+ if (json.containsKey("isCompatible")) {
+ isCompatible = jsonDecoder.decodeBool(
+ jsonPath + ".isCompatible", json["isCompatible"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "newName");
+ throw jsonDecoder.mismatch(jsonPath, "isCompatible");
}
- return new RenameOptions(newName);
+ String name;
+ if (json.containsKey("name")) {
+ name = jsonDecoder.decodeString(jsonPath + ".name", json["name"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "name");
+ }
+ String version;
+ if (json.containsKey("version")) {
+ version =
+ jsonDecoder.decodeString(jsonPath + ".version", json["version"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "version");
+ }
+ String contactInfo;
+ if (json.containsKey("contactInfo")) {
+ contactInfo = jsonDecoder.decodeString(
+ jsonPath + ".contactInfo", json["contactInfo"]);
+ }
+ List<String> interestingFiles;
+ if (json.containsKey("interestingFiles")) {
+ interestingFiles = jsonDecoder.decodeList(
+ jsonPath + ".interestingFiles",
+ json["interestingFiles"],
+ jsonDecoder.decodeString);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "interestingFiles");
+ }
+ return new PluginVersionCheckResult(
+ isCompatible, name, version, interestingFiles,
+ contactInfo: contactInfo);
} else {
- throw jsonDecoder.mismatch(jsonPath, "rename options", json);
+ throw jsonDecoder.mismatch(jsonPath, "plugin.versionCheck result", json);
}
}
- factory RenameOptions.fromRefactoringParams(
- EditGetRefactoringParams refactoringParams, Request request) {
- return new RenameOptions.fromJson(
- new RequestDecoder(request), "options", refactoringParams.options);
+ factory PluginVersionCheckResult.fromResponse(Response response) {
+ return new PluginVersionCheckResult.fromJson(
+ new ResponseDecoder(REQUEST_ID_REFACTORING_KINDS.remove(response.id)),
+ "result",
+ response.result);
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["newName"] = newName;
+ result["isCompatible"] = isCompatible;
+ result["name"] = name;
+ result["version"] = version;
+ if (contactInfo != null) {
+ result["contactInfo"] = contactInfo;
+ }
+ result["interestingFiles"] = interestingFiles;
return result;
}
@override
+ Response toResponse(String id) {
+ return new Response(id, result: toJson());
+ }
+
+ @override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is RenameOptions) {
- return newName == other.newName;
+ if (other is PluginVersionCheckResult) {
+ return isCompatible == other.isCompatible &&
+ name == other.name &&
+ version == other.version &&
+ contactInfo == other.contactInfo &&
+ listEqual(interestingFiles, other.interestingFiles,
+ (String a, String b) => a == b);
}
return false;
}
@@ -10691,114 +5459,94 @@ class RenameOptions extends RefactoringOptions {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, newName.hashCode);
+ hash = JenkinsSmiHash.combine(hash, isCompatible.hashCode);
+ hash = JenkinsSmiHash.combine(hash, name.hashCode);
+ hash = JenkinsSmiHash.combine(hash, version.hashCode);
+ hash = JenkinsSmiHash.combine(hash, contactInfo.hashCode);
+ hash = JenkinsSmiHash.combine(hash, interestingFiles.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * RequestError
+ * PrioritizedSourceChange
*
* {
- * "code": RequestErrorCode
- * "message": String
- * "stackTrace": optional String
+ * "priority": int
+ * "change": SourceChange
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RequestError implements HasToJson {
- RequestErrorCode _code;
-
- String _message;
+class PrioritizedSourceChange implements HasToJson {
+ int _priority;
- String _stackTrace;
+ SourceChange _change;
/**
- * A code that uniquely identifies the error that occurred.
+ * The priority of the change. The value is expected to be non-negative, and
+ * zero (0) is the lowest priority.
*/
- RequestErrorCode get code => _code;
+ int get priority => _priority;
/**
- * A code that uniquely identifies the error that occurred.
+ * The priority of the change. The value is expected to be non-negative, and
+ * zero (0) is the lowest priority.
*/
- void set code(RequestErrorCode value) {
+ void set priority(int value) {
assert(value != null);
- this._code = value;
+ this._priority = value;
}
/**
- * A short description of the error.
+ * The change with which the relevance is associated.
*/
- String get message => _message;
+ SourceChange get change => _change;
/**
- * A short description of the error.
+ * The change with which the relevance is associated.
*/
- void set message(String value) {
+ void set change(SourceChange value) {
assert(value != null);
- this._message = value;
- }
-
- /**
- * The stack trace associated with processing the request, used for debugging
- * the plugin.
- */
- String get stackTrace => _stackTrace;
-
- /**
- * The stack trace associated with processing the request, used for debugging
- * the plugin.
- */
- void set stackTrace(String value) {
- this._stackTrace = value;
+ this._change = value;
}
- RequestError(RequestErrorCode code, String message, {String stackTrace}) {
- this.code = code;
- this.message = message;
- this.stackTrace = stackTrace;
+ PrioritizedSourceChange(int priority, SourceChange change) {
+ this.priority = priority;
+ this.change = change;
}
- factory RequestError.fromJson(
+ factory PrioritizedSourceChange.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- RequestErrorCode code;
- if (json.containsKey("code")) {
- code = new RequestErrorCode.fromJson(
- jsonDecoder, jsonPath + ".code", json["code"]);
+ int priority;
+ if (json.containsKey("priority")) {
+ priority =
+ jsonDecoder.decodeInt(jsonPath + ".priority", json["priority"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "code");
+ throw jsonDecoder.mismatch(jsonPath, "priority");
}
- String message;
- if (json.containsKey("message")) {
- message =
- jsonDecoder.decodeString(jsonPath + ".message", json["message"]);
+ SourceChange change;
+ if (json.containsKey("change")) {
+ change = new SourceChange.fromJson(
+ jsonDecoder, jsonPath + ".change", json["change"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "message");
- }
- String stackTrace;
- if (json.containsKey("stackTrace")) {
- stackTrace = jsonDecoder.decodeString(
- jsonPath + ".stackTrace", json["stackTrace"]);
+ throw jsonDecoder.mismatch(jsonPath, "change");
}
- return new RequestError(code, message, stackTrace: stackTrace);
+ return new PrioritizedSourceChange(priority, change);
} else {
- throw jsonDecoder.mismatch(jsonPath, "RequestError", json);
+ throw jsonDecoder.mismatch(jsonPath, "PrioritizedSourceChange", json);
}
}
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["code"] = code.toJson();
- result["message"] = message;
- if (stackTrace != null) {
- result["stackTrace"] = stackTrace;
- }
+ result["priority"] = priority;
+ result["change"] = change.toJson();
return result;
}
@@ -10807,10 +5555,8 @@ class RequestError implements HasToJson {
@override
bool operator ==(other) {
- if (other is RequestError) {
- return code == other.code &&
- message == other.message &&
- stackTrace == other.stackTrace;
+ if (other is PrioritizedSourceChange) {
+ return priority == other.priority && change == other.change;
}
return false;
}
@@ -10818,297 +5564,236 @@ class RequestError implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, code.hashCode);
- hash = JenkinsSmiHash.combine(hash, message.hashCode);
- hash = JenkinsSmiHash.combine(hash, stackTrace.hashCode);
+ hash = JenkinsSmiHash.combine(hash, priority.hashCode);
+ hash = JenkinsSmiHash.combine(hash, change.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * RequestErrorCode
+ * rename feedback
*
- * enum {
- * INVALID_OVERLAY_CHANGE
- * INVALID_PARAMETER
- * PLUGIN_ERROR
- * UNKNOWN_REQUEST
+ * {
+ * "offset": int
+ * "length": int
+ * "elementKindName": String
+ * "oldName": String
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class RequestErrorCode implements Enum {
+class RenameFeedback extends RefactoringFeedback {
+ int _offset;
+
+ int _length;
+
+ String _elementKindName;
+
+ String _oldName;
+
/**
- * An "analysis.updateContent" request contained a ChangeContentOverlay
- * object that can't be applied. This can happen for two reasons:
- *
- * - there was no preceding AddContentOverlay and hence no content to which
- * the edits could be applied, or
- * - one or more of the specified edits have an offset or length that is out
- * of range.
+ * The offset to the beginning of the name selected to be renamed.
*/
- static const RequestErrorCode INVALID_OVERLAY_CHANGE =
- const RequestErrorCode._("INVALID_OVERLAY_CHANGE");
+ int get offset => _offset;
/**
- * One of the method parameters was invalid.
+ * The offset to the beginning of the name selected to be renamed.
*/
- static const RequestErrorCode INVALID_PARAMETER =
- const RequestErrorCode._("INVALID_PARAMETER");
+ void set offset(int value) {
+ assert(value != null);
+ this._offset = value;
+ }
/**
- * An internal error occurred in the plugin while attempting to respond to a
- * request. Also see the plugin.error notification for errors that occur
- * outside of handling a request.
+ * The length of the name selected to be renamed.
*/
- static const RequestErrorCode PLUGIN_ERROR =
- const RequestErrorCode._("PLUGIN_ERROR");
+ int get length => _length;
/**
- * A request was received that the plugin does not recognize, or cannot
- * handle in its current configuration.
+ * The length of the name selected to be renamed.
*/
- static const RequestErrorCode UNKNOWN_REQUEST =
- const RequestErrorCode._("UNKNOWN_REQUEST");
+ void set length(int value) {
+ assert(value != null);
+ this._length = value;
+ }
/**
- * A list containing all of the enum values that are defined.
+ * The human-readable description of the kind of element being renamed (such
+ * as “class” or “function type alias”).
*/
- static const List<RequestErrorCode> VALUES = const <RequestErrorCode>[
- INVALID_OVERLAY_CHANGE,
- INVALID_PARAMETER,
- PLUGIN_ERROR,
- UNKNOWN_REQUEST
- ];
+ String get elementKindName => _elementKindName;
- @override
- final String name;
+ /**
+ * The human-readable description of the kind of element being renamed (such
+ * as “class” or “function type alias”).
+ */
+ void set elementKindName(String value) {
+ assert(value != null);
+ this._elementKindName = value;
+ }
- const RequestErrorCode._(this.name);
+ /**
+ * The old name of the element before the refactoring.
+ */
+ String get oldName => _oldName;
- factory RequestErrorCode(String name) {
- switch (name) {
- case "INVALID_OVERLAY_CHANGE":
- return INVALID_OVERLAY_CHANGE;
- case "INVALID_PARAMETER":
- return INVALID_PARAMETER;
- case "PLUGIN_ERROR":
- return PLUGIN_ERROR;
- case "UNKNOWN_REQUEST":
- return UNKNOWN_REQUEST;
- }
- throw new Exception('Illegal enum value: $name');
+ /**
+ * The old name of the element before the refactoring.
+ */
+ void set oldName(String value) {
+ assert(value != null);
+ this._oldName = value;
}
- factory RequestErrorCode.fromJson(
+ RenameFeedback(
+ int offset, int length, String elementKindName, String oldName) {
+ this.offset = offset;
+ this.length = length;
+ this.elementKindName = elementKindName;
+ this.oldName = oldName;
+ }
+
+ factory RenameFeedback.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json is String) {
- try {
- return new RequestErrorCode(json);
- } catch (_) {
- // Fall through
+ if (json == null) {
+ json = {};
+ }
+ if (json is Map) {
+ int offset;
+ if (json.containsKey("offset")) {
+ offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "offset");
+ }
+ int length;
+ if (json.containsKey("length")) {
+ length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "length");
+ }
+ String elementKindName;
+ if (json.containsKey("elementKindName")) {
+ elementKindName = jsonDecoder.decodeString(
+ jsonPath + ".elementKindName", json["elementKindName"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "elementKindName");
+ }
+ String oldName;
+ if (json.containsKey("oldName")) {
+ oldName =
+ jsonDecoder.decodeString(jsonPath + ".oldName", json["oldName"]);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "oldName");
}
+ return new RenameFeedback(offset, length, elementKindName, oldName);
+ } else {
+ throw jsonDecoder.mismatch(jsonPath, "rename feedback", json);
}
- throw jsonDecoder.mismatch(jsonPath, "RequestErrorCode", json);
}
@override
- String toString() => "RequestErrorCode.$name";
+ Map<String, dynamic> toJson() {
+ Map<String, dynamic> result = {};
+ result["offset"] = offset;
+ result["length"] = length;
+ result["elementKindName"] = elementKindName;
+ result["oldName"] = oldName;
+ return result;
+ }
- String toJson() => name;
+ @override
+ String toString() => JSON.encode(toJson());
+
+ @override
+ bool operator ==(other) {
+ if (other is RenameFeedback) {
+ return offset == other.offset &&
+ length == other.length &&
+ elementKindName == other.elementKindName &&
+ oldName == other.oldName;
+ }
+ return false;
+ }
+
+ @override
+ int get hashCode {
+ int hash = 0;
+ hash = JenkinsSmiHash.combine(hash, offset.hashCode);
+ hash = JenkinsSmiHash.combine(hash, length.hashCode);
+ hash = JenkinsSmiHash.combine(hash, elementKindName.hashCode);
+ hash = JenkinsSmiHash.combine(hash, oldName.hashCode);
+ return JenkinsSmiHash.finish(hash);
+ }
}
/**
- * SourceChange
+ * rename options
*
* {
- * "message": String
- * "edits": List<SourceFileEdit>
- * "linkedEditGroups": List<LinkedEditGroup>
- * "selection": optional Position
+ * "newName": String
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class SourceChange implements HasToJson {
- String _message;
-
- List<SourceFileEdit> _edits;
-
- List<LinkedEditGroup> _linkedEditGroups;
-
- Position _selection;
-
- /**
- * A human-readable description of the change to be applied.
- */
- String get message => _message;
-
- /**
- * A human-readable description of the change to be applied.
- */
- void set message(String value) {
- assert(value != null);
- this._message = value;
- }
-
- /**
- * A list of the edits used to effect the change, grouped by file.
- */
- List<SourceFileEdit> get edits => _edits;
-
- /**
- * A list of the edits used to effect the change, grouped by file.
- */
- void set edits(List<SourceFileEdit> value) {
- assert(value != null);
- this._edits = value;
- }
+class RenameOptions extends RefactoringOptions {
+ String _newName;
/**
- * A list of the linked editing groups used to customize the changes that
- * were made.
+ * The name that the element should have after the refactoring.
*/
- List<LinkedEditGroup> get linkedEditGroups => _linkedEditGroups;
+ String get newName => _newName;
/**
- * A list of the linked editing groups used to customize the changes that
- * were made.
+ * The name that the element should have after the refactoring.
*/
- void set linkedEditGroups(List<LinkedEditGroup> value) {
+ void set newName(String value) {
assert(value != null);
- this._linkedEditGroups = value;
- }
-
- /**
- * The position that should be selected after the edits have been applied.
- */
- Position get selection => _selection;
-
- /**
- * The position that should be selected after the edits have been applied.
- */
- void set selection(Position value) {
- this._selection = value;
+ this._newName = value;
}
- SourceChange(String message,
- {List<SourceFileEdit> edits,
- List<LinkedEditGroup> linkedEditGroups,
- Position selection}) {
- this.message = message;
- if (edits == null) {
- this.edits = <SourceFileEdit>[];
- } else {
- this.edits = edits;
- }
- if (linkedEditGroups == null) {
- this.linkedEditGroups = <LinkedEditGroup>[];
- } else {
- this.linkedEditGroups = linkedEditGroups;
- }
- this.selection = selection;
+ RenameOptions(String newName) {
+ this.newName = newName;
}
- factory SourceChange.fromJson(
+ factory RenameOptions.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- String message;
- if (json.containsKey("message")) {
- message =
- jsonDecoder.decodeString(jsonPath + ".message", json["message"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "message");
- }
- List<SourceFileEdit> edits;
- if (json.containsKey("edits")) {
- edits = jsonDecoder.decodeList(
- jsonPath + ".edits",
- json["edits"],
- (String jsonPath, Object json) =>
- new SourceFileEdit.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edits");
- }
- List<LinkedEditGroup> linkedEditGroups;
- if (json.containsKey("linkedEditGroups")) {
- linkedEditGroups = jsonDecoder.decodeList(
- jsonPath + ".linkedEditGroups",
- json["linkedEditGroups"],
- (String jsonPath, Object json) =>
- new LinkedEditGroup.fromJson(jsonDecoder, jsonPath, json));
+ String newName;
+ if (json.containsKey("newName")) {
+ newName =
+ jsonDecoder.decodeString(jsonPath + ".newName", json["newName"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "linkedEditGroups");
- }
- Position selection;
- if (json.containsKey("selection")) {
- selection = new Position.fromJson(
- jsonDecoder, jsonPath + ".selection", json["selection"]);
+ throw jsonDecoder.mismatch(jsonPath, "newName");
}
- return new SourceChange(message,
- edits: edits,
- linkedEditGroups: linkedEditGroups,
- selection: selection);
+ return new RenameOptions(newName);
} else {
- throw jsonDecoder.mismatch(jsonPath, "SourceChange", json);
+ throw jsonDecoder.mismatch(jsonPath, "rename options", json);
}
}
+ factory RenameOptions.fromRefactoringParams(
+ EditGetRefactoringParams refactoringParams, Request request) {
+ return new RenameOptions.fromJson(
+ new RequestDecoder(request), "options", refactoringParams.options);
+ }
+
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["message"] = message;
- result["edits"] =
- edits.map((SourceFileEdit value) => value.toJson()).toList();
- result["linkedEditGroups"] = linkedEditGroups
- .map((LinkedEditGroup value) => value.toJson())
- .toList();
- if (selection != null) {
- result["selection"] = selection.toJson();
- }
+ result["newName"] = newName;
return result;
}
- /**
- * Adds [edit] to the [FileEdit] for the given [file].
- */
- void addEdit(String file, int fileStamp, SourceEdit edit) =>
- addEditToSourceChange(this, file, fileStamp, edit);
-
- /**
- * Adds the given [FileEdit].
- */
- void addFileEdit(SourceFileEdit edit) {
- edits.add(edit);
- }
-
- /**
- * Adds the given [LinkedEditGroup].
- */
- void addLinkedEditGroup(LinkedEditGroup linkedEditGroup) {
- linkedEditGroups.add(linkedEditGroup);
- }
-
- /**
- * Returns the [FileEdit] for the given [file], maybe `null`.
- */
- SourceFileEdit getFileEdit(String file) => getChangeFileEdit(this, file);
-
@override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is SourceChange) {
- return message == other.message &&
- listEqual(edits, other.edits,
- (SourceFileEdit a, SourceFileEdit b) => a == b) &&
- listEqual(linkedEditGroups, other.linkedEditGroups,
- (LinkedEditGroup a, LinkedEditGroup b) => a == b) &&
- selection == other.selection;
+ if (other is RenameOptions) {
+ return newName == other.newName;
}
return false;
}
@@ -11116,181 +5801,126 @@ class SourceChange implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, message.hashCode);
- hash = JenkinsSmiHash.combine(hash, edits.hashCode);
- hash = JenkinsSmiHash.combine(hash, linkedEditGroups.hashCode);
- hash = JenkinsSmiHash.combine(hash, selection.hashCode);
+ hash = JenkinsSmiHash.combine(hash, newName.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * SourceEdit
+ * RequestError
*
* {
- * "offset": int
- * "length": int
- * "replacement": String
- * "id": optional String
+ * "code": RequestErrorCode
+ * "message": String
+ * "stackTrace": optional String
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class SourceEdit implements HasToJson {
- /**
- * Get the result of applying a set of [edits] to the given [code]. Edits are
- * applied in the order they appear in [edits].
- */
- static String applySequence(String code, Iterable<SourceEdit> edits) =>
- applySequenceOfEdits(code, edits);
-
- int _offset;
-
- int _length;
-
- String _replacement;
-
- String _id;
+class RequestError implements HasToJson {
+ RequestErrorCode _code;
- /**
- * The offset of the region to be modified.
- */
- int get offset => _offset;
+ String _message;
- /**
- * The offset of the region to be modified.
- */
- void set offset(int value) {
- assert(value != null);
- this._offset = value;
- }
+ String _stackTrace;
/**
- * The length of the region to be modified.
+ * A code that uniquely identifies the error that occurred.
*/
- int get length => _length;
+ RequestErrorCode get code => _code;
/**
- * The length of the region to be modified.
+ * A code that uniquely identifies the error that occurred.
*/
- void set length(int value) {
+ void set code(RequestErrorCode value) {
assert(value != null);
- this._length = value;
+ this._code = value;
}
/**
- * The code that is to replace the specified region in the original code.
+ * A short description of the error.
*/
- String get replacement => _replacement;
+ String get message => _message;
/**
- * The code that is to replace the specified region in the original code.
+ * A short description of the error.
*/
- void set replacement(String value) {
+ void set message(String value) {
assert(value != null);
- this._replacement = value;
+ this._message = value;
}
/**
- * An identifier that uniquely identifies this source edit from other edits
- * in the same response. This field is omitted unless a containing structure
- * needs to be able to identify the edit for some reason.
- *
- * For example, some refactoring operations can produce edits that might not
- * be appropriate (referred to as potential edits). Such edits will have an
- * id so that they can be referenced. Edits in the same response that do not
- * need to be referenced will not have an id.
+ * The stack trace associated with processing the request, used for debugging
+ * the plugin.
*/
- String get id => _id;
+ String get stackTrace => _stackTrace;
/**
- * An identifier that uniquely identifies this source edit from other edits
- * in the same response. This field is omitted unless a containing structure
- * needs to be able to identify the edit for some reason.
- *
- * For example, some refactoring operations can produce edits that might not
- * be appropriate (referred to as potential edits). Such edits will have an
- * id so that they can be referenced. Edits in the same response that do not
- * need to be referenced will not have an id.
+ * The stack trace associated with processing the request, used for debugging
+ * the plugin.
*/
- void set id(String value) {
- this._id = value;
+ void set stackTrace(String value) {
+ this._stackTrace = value;
}
- SourceEdit(int offset, int length, String replacement, {String id}) {
- this.offset = offset;
- this.length = length;
- this.replacement = replacement;
- this.id = id;
+ RequestError(RequestErrorCode code, String message, {String stackTrace}) {
+ this.code = code;
+ this.message = message;
+ this.stackTrace = stackTrace;
}
- factory SourceEdit.fromJson(
+ factory RequestError.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
if (json == null) {
json = {};
}
if (json is Map) {
- int offset;
- if (json.containsKey("offset")) {
- offset = jsonDecoder.decodeInt(jsonPath + ".offset", json["offset"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "offset");
- }
- int length;
- if (json.containsKey("length")) {
- length = jsonDecoder.decodeInt(jsonPath + ".length", json["length"]);
+ RequestErrorCode code;
+ if (json.containsKey("code")) {
+ code = new RequestErrorCode.fromJson(
+ jsonDecoder, jsonPath + ".code", json["code"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "length");
+ throw jsonDecoder.mismatch(jsonPath, "code");
}
- String replacement;
- if (json.containsKey("replacement")) {
- replacement = jsonDecoder.decodeString(
- jsonPath + ".replacement", json["replacement"]);
+ String message;
+ if (json.containsKey("message")) {
+ message =
+ jsonDecoder.decodeString(jsonPath + ".message", json["message"]);
} else {
- throw jsonDecoder.mismatch(jsonPath, "replacement");
+ throw jsonDecoder.mismatch(jsonPath, "message");
}
- String id;
- if (json.containsKey("id")) {
- id = jsonDecoder.decodeString(jsonPath + ".id", json["id"]);
+ String stackTrace;
+ if (json.containsKey("stackTrace")) {
+ stackTrace = jsonDecoder.decodeString(
+ jsonPath + ".stackTrace", json["stackTrace"]);
}
- return new SourceEdit(offset, length, replacement, id: id);
+ return new RequestError(code, message, stackTrace: stackTrace);
} else {
- throw jsonDecoder.mismatch(jsonPath, "SourceEdit", json);
+ throw jsonDecoder.mismatch(jsonPath, "RequestError", json);
}
}
- /**
- * The end of the region to be modified.
- */
- int get end => offset + length;
-
@override
Map<String, dynamic> toJson() {
Map<String, dynamic> result = {};
- result["offset"] = offset;
- result["length"] = length;
- result["replacement"] = replacement;
- if (id != null) {
- result["id"] = id;
+ result["code"] = code.toJson();
+ result["message"] = message;
+ if (stackTrace != null) {
+ result["stackTrace"] = stackTrace;
}
return result;
}
- /**
- * Get the result of applying the edit to the given [code].
- */
- String apply(String code) => applyEdit(code, this);
-
@override
String toString() => JSON.encode(toJson());
@override
bool operator ==(other) {
- if (other is SourceEdit) {
- return offset == other.offset &&
- length == other.length &&
- replacement == other.replacement &&
- id == other.id;
+ if (other is RequestError) {
+ return code == other.code &&
+ message == other.message &&
+ stackTrace == other.stackTrace;
}
return false;
}
@@ -11298,164 +5928,104 @@ class SourceEdit implements HasToJson {
@override
int get hashCode {
int hash = 0;
- hash = JenkinsSmiHash.combine(hash, offset.hashCode);
- hash = JenkinsSmiHash.combine(hash, length.hashCode);
- hash = JenkinsSmiHash.combine(hash, replacement.hashCode);
- hash = JenkinsSmiHash.combine(hash, id.hashCode);
+ hash = JenkinsSmiHash.combine(hash, code.hashCode);
+ hash = JenkinsSmiHash.combine(hash, message.hashCode);
+ hash = JenkinsSmiHash.combine(hash, stackTrace.hashCode);
return JenkinsSmiHash.finish(hash);
}
}
/**
- * SourceFileEdit
+ * RequestErrorCode
*
- * {
- * "file": FilePath
- * "fileStamp": long
- * "edits": List<SourceEdit>
+ * enum {
+ * INVALID_OVERLAY_CHANGE
+ * INVALID_PARAMETER
+ * PLUGIN_ERROR
+ * UNKNOWN_REQUEST
* }
*
* Clients may not extend, implement or mix-in this class.
*/
-class SourceFileEdit implements HasToJson {
- String _file;
-
- int _fileStamp;
-
- List<SourceEdit> _edits;
-
+class RequestErrorCode implements Enum {
/**
- * The file containing the code to be modified.
+ * An "analysis.updateContent" request contained a ChangeContentOverlay
+ * object that can't be applied. This can happen for two reasons:
+ *
+ * - there was no preceding AddContentOverlay and hence no content to which
+ * the edits could be applied, or
+ * - one or more of the specified edits have an offset or length that is out
+ * of range.
*/
- String get file => _file;
+ static const RequestErrorCode INVALID_OVERLAY_CHANGE =
+ const RequestErrorCode._("INVALID_OVERLAY_CHANGE");
/**
- * The file containing the code to be modified.
+ * One of the method parameters was invalid.
*/
- void set file(String value) {
- assert(value != null);
- this._file = value;
- }
+ static const RequestErrorCode INVALID_PARAMETER =
+ const RequestErrorCode._("INVALID_PARAMETER");
/**
- * The modification stamp of the file at the moment when the change was
- * created, in milliseconds since the "Unix epoch". Will be -1 if the file
- * did not exist and should be created. The client may use this field to make
- * sure that the file was not changed since then, so it is safe to apply the
- * change.
+ * An internal error occurred in the plugin while attempting to respond to a
+ * request. Also see the plugin.error notification for errors that occur
+ * outside of handling a request.
*/
- int get fileStamp => _fileStamp;
+ static const RequestErrorCode PLUGIN_ERROR =
+ const RequestErrorCode._("PLUGIN_ERROR");
/**
- * The modification stamp of the file at the moment when the change was
- * created, in milliseconds since the "Unix epoch". Will be -1 if the file
- * did not exist and should be created. The client may use this field to make
- * sure that the file was not changed since then, so it is safe to apply the
- * change.
+ * A request was received that the plugin does not recognize, or cannot
+ * handle in its current configuration.
*/
- void set fileStamp(int value) {
- assert(value != null);
- this._fileStamp = value;
- }
+ static const RequestErrorCode UNKNOWN_REQUEST =
+ const RequestErrorCode._("UNKNOWN_REQUEST");
/**
- * A list of the edits used to effect the change.
+ * A list containing all of the enum values that are defined.
*/
- List<SourceEdit> get edits => _edits;
+ static const List<RequestErrorCode> VALUES = const <RequestErrorCode>[
+ INVALID_OVERLAY_CHANGE,
+ INVALID_PARAMETER,
+ PLUGIN_ERROR,
+ UNKNOWN_REQUEST
+ ];
- /**
- * A list of the edits used to effect the change.
- */
- void set edits(List<SourceEdit> value) {
- assert(value != null);
- this._edits = value;
- }
+ @override
+ final String name;
- SourceFileEdit(String file, int fileStamp, {List<SourceEdit> edits}) {
- this.file = file;
- this.fileStamp = fileStamp;
- if (edits == null) {
- this.edits = <SourceEdit>[];
- } else {
- this.edits = edits;
+ const RequestErrorCode._(this.name);
+
+ factory RequestErrorCode(String name) {
+ switch (name) {
+ case "INVALID_OVERLAY_CHANGE":
+ return INVALID_OVERLAY_CHANGE;
+ case "INVALID_PARAMETER":
+ return INVALID_PARAMETER;
+ case "PLUGIN_ERROR":
+ return PLUGIN_ERROR;
+ case "UNKNOWN_REQUEST":
+ return UNKNOWN_REQUEST;
}
+ throw new Exception('Illegal enum value: $name');
}
- factory SourceFileEdit.fromJson(
+ factory RequestErrorCode.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object json) {
- if (json == null) {
- json = {};
- }
- if (json is Map) {
- String file;
- if (json.containsKey("file")) {
- file = jsonDecoder.decodeString(jsonPath + ".file", json["file"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "file");
- }
- int fileStamp;
- if (json.containsKey("fileStamp")) {
- fileStamp =
- jsonDecoder.decodeInt(jsonPath + ".fileStamp", json["fileStamp"]);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "fileStamp");
- }
- List<SourceEdit> edits;
- if (json.containsKey("edits")) {
- edits = jsonDecoder.decodeList(
- jsonPath + ".edits",
- json["edits"],
- (String jsonPath, Object json) =>
- new SourceEdit.fromJson(jsonDecoder, jsonPath, json));
- } else {
- throw jsonDecoder.mismatch(jsonPath, "edits");
+ if (json is String) {
+ try {
+ return new RequestErrorCode(json);
+ } catch (_) {
+ // Fall through
}
- return new SourceFileEdit(file, fileStamp, edits: edits);
- } else {
- throw jsonDecoder.mismatch(jsonPath, "SourceFileEdit", json);
}
+ throw jsonDecoder.mismatch(jsonPath, "RequestErrorCode", json);
}
@override
- Map<String, dynamic> toJson() {
- Map<String, dynamic> result = {};
- result["file"] = file;
- result["fileStamp"] = fileStamp;
- result["edits"] = edits.map((SourceEdit value) => value.toJson()).toList();
- return result;
- }
-
- /**
- * Adds the given [Edit] to the list.
- */
- void add(SourceEdit edit) => addEditForSource(this, edit);
-
- /**
- * Adds the given [Edit]s.
- */
- void addAll(Iterable<SourceEdit> edits) => addAllEditsForSource(this, edits);
-
- @override
- String toString() => JSON.encode(toJson());
-
- @override
- bool operator ==(other) {
- if (other is SourceFileEdit) {
- return file == other.file &&
- fileStamp == other.fileStamp &&
- listEqual(edits, other.edits, (SourceEdit a, SourceEdit b) => a == b);
- }
- return false;
- }
+ String toString() => "RequestErrorCode.$name";
- @override
- int get hashCode {
- int hash = 0;
- hash = JenkinsSmiHash.combine(hash, file.hashCode);
- hash = JenkinsSmiHash.combine(hash, fileStamp.hashCode);
- hash = JenkinsSmiHash.combine(hash, edits.hashCode);
- return JenkinsSmiHash.finish(hash);
- }
+ String toJson() => name;
}
/**
« no previous file with comments | « pkg/analyzer_plugin/lib/protocol/protocol_common.dart ('k') | pkg/analyzer_plugin/lib/src/protocol/protocol_internal.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698