Index: pkg/analyzer_plugin/tool/spec/api.dart |
diff --git a/pkg/analyzer_plugin/tool/spec/api.dart b/pkg/analyzer_plugin/tool/spec/api.dart |
index 0c73c8880f14926b9df15f4c14d45bbe5a622564..19c03e31f4f207b12b651d8ebd878230ecd26e42 100644 |
--- a/pkg/analyzer_plugin/tool/spec/api.dart |
+++ b/pkg/analyzer_plugin/tool/spec/api.dart |
@@ -22,7 +22,7 @@ class Api extends ApiNode { |
Api(this.version, this.domains, this.types, this.refactorings, |
dom.Element html, |
{bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
} |
/** |
@@ -35,12 +35,18 @@ class ApiNode { |
final bool experimental; |
/** |
+ * A flag to indicate if this API is deprecated. |
+ */ |
+ final bool deprecated; |
+ |
+ /** |
* Html element representing this part of the API. |
*/ |
final dom.Element html; |
- ApiNode(this.html, bool experimental) |
- : this.experimental = experimental ?? false; |
+ ApiNode(this.html, bool experimental, bool deprecated) |
+ : this.experimental = experimental ?? false, |
+ this.deprecated = deprecated ?? false; |
} |
/** |
@@ -69,8 +75,8 @@ class Domain extends ApiNode { |
final List<Notification> notifications; |
Domain(this.name, this.requests, this.notifications, dom.Element html, |
- {bool experimental}) |
- : super(html, experimental); |
+ {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
} |
/** |
@@ -203,7 +209,7 @@ class Notification extends ApiNode { |
Notification(this.domainName, this.event, this.params, dom.Element html, |
{bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
/** |
* Get the name of the notification, including the domain prefix. |
@@ -249,7 +255,7 @@ class Refactoring extends ApiNode { |
Refactoring(this.kind, this.feedback, this.options, dom.Element html, |
{bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
} |
/** |
@@ -259,7 +265,7 @@ class Refactorings extends ApiNode with IterableMixin<Refactoring> { |
final List<Refactoring> refactorings; |
Refactorings(this.refactorings, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
@override |
Iterator<Refactoring> get iterator => refactorings.iterator; |
@@ -293,8 +299,8 @@ class Request extends ApiNode { |
Request( |
this.domainName, this.method, this.params, this.result, dom.Element html, |
- {bool experimental}) |
- : super(html, experimental); |
+ {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
/** |
* Get the name of the request, including the domain prefix. |
@@ -339,7 +345,8 @@ class Request extends ApiNode { |
* Base class for all possible types. |
*/ |
abstract class TypeDecl extends ApiNode { |
- TypeDecl(dom.Element html, bool experimental) : super(html, experimental); |
+ TypeDecl(dom.Element html, bool experimental, bool deprecated) |
+ : super(html, experimental, deprecated); |
accept(ApiVisitor visitor); |
} |
@@ -351,8 +358,9 @@ class TypeDefinition extends ApiNode { |
final String name; |
final TypeDecl type; |
- TypeDefinition(this.name, this.type, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ TypeDefinition(this.name, this.type, dom.Element html, |
+ {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
} |
/** |
@@ -362,8 +370,8 @@ class TypeDefinition extends ApiNode { |
class TypeEnum extends TypeDecl { |
final List<TypeEnumValue> values; |
- TypeEnum(this.values, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ TypeEnum(this.values, dom.Element html, {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
@override |
accept(ApiVisitor visitor) => visitor.visitTypeEnum(this); |
@@ -375,8 +383,9 @@ class TypeEnum extends TypeDecl { |
class TypeEnumValue extends ApiNode { |
final String value; |
- TypeEnumValue(this.value, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ TypeEnumValue(this.value, dom.Element html, |
+ {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
} |
/** |
@@ -386,7 +395,7 @@ class TypeList extends TypeDecl { |
final TypeDecl itemType; |
TypeList(this.itemType, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
@override |
accept(ApiVisitor visitor) => visitor.visitTypeList(this); |
@@ -409,7 +418,7 @@ class TypeMap extends TypeDecl { |
final TypeDecl valueType; |
TypeMap(this.keyType, this.valueType, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
@override |
accept(ApiVisitor visitor) => visitor.visitTypeMap(this); |
@@ -421,8 +430,9 @@ class TypeMap extends TypeDecl { |
class TypeObject extends TypeDecl { |
final List<TypeObjectField> fields; |
- TypeObject(this.fields, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ TypeObject(this.fields, dom.Element html, |
+ {bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
@override |
accept(ApiVisitor visitor) => visitor.visitTypeObject(this); |
@@ -454,8 +464,8 @@ class TypeObjectField extends ApiNode { |
final Object value; |
TypeObjectField(this.name, this.type, dom.Element html, |
- {this.optional: false, this.value, bool experimental}) |
- : super(html, experimental); |
+ {this.optional: false, this.value, bool experimental, bool deprecated}) |
+ : super(html, experimental, deprecated); |
} |
/** |
@@ -466,7 +476,7 @@ class TypeReference extends TypeDecl { |
final String typeName; |
TypeReference(this.typeName, dom.Element html, {bool experimental}) |
- : super(html, experimental) { |
+ : super(html, experimental, false) { |
if (typeName.isEmpty) { |
throw new Exception('Empty type name'); |
} |
@@ -483,7 +493,7 @@ class Types extends ApiNode with IterableMixin<TypeDefinition> { |
final Map<String, TypeDefinition> types; |
Types(this.types, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
@override |
Iterator<TypeDefinition> get iterator => types.values.iterator; |
@@ -507,7 +517,7 @@ class TypeUnion extends TypeDecl { |
final String field; |
TypeUnion(this.choices, this.field, dom.Element html, {bool experimental}) |
- : super(html, experimental); |
+ : super(html, experimental, false); |
@override |
accept(ApiVisitor visitor) => visitor.visitTypeUnion(this); |