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

Unified Diff: pkg/analysis_server/tool/spec/api.dart

Issue 1416093007: Experimental `getDiagnostics` request (#24480). (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Review fixes. Created 5 years, 1 month 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
« no previous file with comments | « pkg/analysis_server/test/test_all.dart ('k') | pkg/analysis_server/tool/spec/from_html.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/tool/spec/api.dart
diff --git a/pkg/analysis_server/tool/spec/api.dart b/pkg/analysis_server/tool/spec/api.dart
index 3fd9d820e9994ca0a14993faf41e805b57fa0962..b5443aabfdcd9f532987523f701981e2cbb654dd 100644
--- a/pkg/analysis_server/tool/spec/api.dart
+++ b/pkg/analysis_server/tool/spec/api.dart
@@ -22,8 +22,9 @@ class Api extends ApiNode {
final Refactorings refactorings;
Api(this.version, this.domains, this.types, this.refactorings,
- dom.Element html)
- : super(html);
+ dom.Element html,
+ {bool experimental})
+ : super(html, experimental);
}
/**
@@ -31,11 +32,17 @@ class Api extends ApiNode {
*/
class ApiNode {
/**
+ * A flag to indicate if this API is experimental.
+ */
+ final bool experimental;
+
+ /**
* Html element representing this part of the API.
*/
final dom.Element html;
- ApiNode(this.html);
+ ApiNode(this.html, bool experimental)
+ : this.experimental = experimental ?? false;
}
/**
@@ -60,13 +67,12 @@ abstract class ApiVisitor<T> {
*/
class Domain extends ApiNode {
final String name;
- final bool experimental;
final List<Request> requests;
final List<Notification> notifications;
- Domain(this.name, this.experimental, this.requests, this.notifications,
- dom.Element html)
- : super(html);
+ Domain(this.name, this.requests, this.notifications, dom.Element html,
+ {bool experimental})
+ : super(html, experimental);
}
/**
@@ -197,8 +203,9 @@ class Notification extends ApiNode {
*/
final TypeObject params;
- Notification(this.domainName, this.event, this.params, dom.Element html)
- : super(html);
+ Notification(this.domainName, this.event, this.params, dom.Element html,
+ {bool experimental})
+ : super(html, experimental);
/**
* Get the name of the notification, including the domain prefix.
@@ -242,8 +249,9 @@ class Refactoring extends ApiNode {
*/
final TypeObject options;
- Refactoring(this.kind, this.feedback, this.options, dom.Element html)
- : super(html);
+ Refactoring(this.kind, this.feedback, this.options, dom.Element html,
+ {bool experimental})
+ : super(html, experimental);
}
/**
@@ -252,7 +260,8 @@ class Refactoring extends ApiNode {
class Refactorings extends ApiNode with IterableMixin<Refactoring> {
final List<Refactoring> refactorings;
- Refactorings(this.refactorings, dom.Element html) : super(html);
+ Refactorings(this.refactorings, dom.Element html, {bool experimental})
+ : super(html, experimental);
@override
Iterator<Refactoring> get iterator => refactorings.iterator;
@@ -285,8 +294,9 @@ class Request extends ApiNode {
final TypeObject result;
Request(
- this.domainName, this.method, this.params, this.result, dom.Element html)
- : super(html);
+ this.domainName, this.method, this.params, this.result, dom.Element html,
+ {bool experimental})
+ : super(html, experimental);
/**
* Get the name of the request, including the domain prefix.
@@ -331,7 +341,7 @@ class Request extends ApiNode {
* Base class for all possible types.
*/
abstract class TypeDecl extends ApiNode {
- TypeDecl(dom.Element html) : super(html);
+ TypeDecl(dom.Element html, bool experimental) : super(html, experimental);
accept(ApiVisitor visitor);
}
@@ -343,7 +353,8 @@ class TypeDefinition extends ApiNode {
final String name;
final TypeDecl type;
- TypeDefinition(this.name, this.type, dom.Element html) : super(html);
+ TypeDefinition(this.name, this.type, dom.Element html, {bool experimental})
+ : super(html, experimental);
}
/**
@@ -353,7 +364,8 @@ class TypeDefinition extends ApiNode {
class TypeEnum extends TypeDecl {
final List<TypeEnumValue> values;
- TypeEnum(this.values, dom.Element html) : super(html);
+ TypeEnum(this.values, dom.Element html, {bool experimental})
+ : super(html, experimental);
accept(ApiVisitor visitor) => visitor.visitTypeEnum(this);
}
@@ -364,7 +376,8 @@ class TypeEnum extends TypeDecl {
class TypeEnumValue extends ApiNode {
final String value;
- TypeEnumValue(this.value, dom.Element html) : super(html);
+ TypeEnumValue(this.value, dom.Element html, {bool experimental})
+ : super(html, experimental);
}
/**
@@ -373,7 +386,8 @@ class TypeEnumValue extends ApiNode {
class TypeList extends TypeDecl {
final TypeDecl itemType;
- TypeList(this.itemType, dom.Element html) : super(html);
+ TypeList(this.itemType, dom.Element html, {bool experimental})
+ : super(html, experimental);
accept(ApiVisitor visitor) => visitor.visitTypeList(this);
}
@@ -394,7 +408,8 @@ class TypeMap extends TypeDecl {
*/
final TypeDecl valueType;
- TypeMap(this.keyType, this.valueType, dom.Element html) : super(html);
+ TypeMap(this.keyType, this.valueType, dom.Element html, {bool experimental})
+ : super(html, experimental);
accept(ApiVisitor visitor) => visitor.visitTypeMap(this);
}
@@ -405,7 +420,8 @@ class TypeMap extends TypeDecl {
class TypeObject extends TypeDecl {
final List<TypeObjectField> fields;
- TypeObject(this.fields, dom.Element html) : super(html);
+ TypeObject(this.fields, dom.Element html, {bool experimental})
+ : super(html, experimental);
accept(ApiVisitor visitor) => visitor.visitTypeObject(this);
@@ -436,8 +452,8 @@ class TypeObjectField extends ApiNode {
final Object value;
TypeObjectField(this.name, this.type, dom.Element html,
- {this.optional: false, this.value})
- : super(html);
+ {this.optional: false, this.value, bool experimental})
+ : super(html, experimental);
}
/**
@@ -447,7 +463,8 @@ class TypeObjectField extends ApiNode {
class TypeReference extends TypeDecl {
final String typeName;
- TypeReference(this.typeName, dom.Element html) : super(html) {
+ TypeReference(this.typeName, dom.Element html, {bool experimental})
+ : super(html, experimental) {
if (typeName.isEmpty) {
throw new Exception('Empty type name');
}
@@ -462,7 +479,8 @@ class TypeReference extends TypeDecl {
class Types extends ApiNode with IterableMixin<TypeDefinition> {
final Map<String, TypeDefinition> types;
- Types(this.types, dom.Element html) : super(html);
+ Types(this.types, dom.Element html, {bool experimental})
+ : super(html, experimental);
@override
Iterator<TypeDefinition> get iterator => types.values.iterator;
@@ -485,7 +503,8 @@ class TypeUnion extends TypeDecl {
*/
final String field;
- TypeUnion(this.choices, this.field, dom.Element html) : super(html);
+ TypeUnion(this.choices, this.field, dom.Element html, {bool experimental})
+ : super(html, experimental);
accept(ApiVisitor visitor) => visitor.visitTypeUnion(this);
}
« no previous file with comments | « pkg/analysis_server/test/test_all.dart ('k') | pkg/analysis_server/tool/spec/from_html.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698