Remove the partial 'extension types' implementation from analyzer.

https://github.com/dart-lang/language/blob/master/working/1426-extension-types/feature-specification.md
was abandoned.

https://github.com/dart-lang/language/blob/master/working/1426-extension-types/feature-specification-views.md
is the new specification for a similar feature.

Change-Id: Ibacce3529e578c554059266bc4b1b67a33595158
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/266866
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
Konstantin Shcheglov
2022-11-01 17:15:39 +00:00
committed by Commit Queue
parent 52657742a5
commit d68d1fff0d
9 changed files with 2 additions and 537 deletions
+1 -66
View File
@@ -493,8 +493,6 @@ abstract class AstVisitor<R> {
R? visitGenericTypeAlias(GenericTypeAlias node);
R? visitHideClause(HideClause node);
R? visitHideCombinator(HideCombinator node);
R? visitIfElement(IfElement node);
@@ -614,12 +612,8 @@ abstract class AstVisitor<R> {
R? visitSetOrMapLiteral(SetOrMapLiteral node);
R? visitShowClause(ShowClause node);
R? visitShowCombinator(ShowCombinator node);
R? visitShowHideElement(ShowHideElement node);
R? visitSimpleFormalParameter(SimpleFormalParameter node);
R? visitSimpleIdentifier(SimpleIdentifier node);
@@ -2101,10 +2095,6 @@ abstract class ExtensionDeclaration implements CompilationUnitMember {
/// Return the token representing the 'extension' keyword.
Token get extensionKeyword;
/// Return the hide clause, or `null` if the extension does not have a hide
/// clause.
HideClause? get hideClause;
/// Return the left curly bracket.
Token get leftBracket;
@@ -2126,10 +2116,6 @@ abstract class ExtensionDeclaration implements CompilationUnitMember {
/// Return the right curly bracket.
Token get rightBracket;
/// Return the show clause, or `null` if the extension does not have a show
/// clause.
ShowClause? get showClause;
/// Return the token representing the 'type' keyword.
Token? get typeKeyword;
@@ -2916,20 +2902,6 @@ abstract class GenericTypeAlias implements TypeAlias {
TypeParameterList? get typeParameters;
}
/// The "hide" clause in an extension declaration.
///
/// hideClause ::=
/// 'hide' [TypeName] (',' [TypeName])*
///
/// Clients may not extend, implement or mix-in this class.
abstract class HideClause implements AstNode {
/// Return the list of the elements that are being shown.
NodeList<ShowHideClauseElement> get elements;
/// Return the token representing the 'hide' keyword.
Token get hideKeyword;
}
/// A combinator that restricts the names being imported to those that are not
/// in a given list.
///
@@ -3832,7 +3804,7 @@ abstract class NamedExpression implements Expression {
/// [Identifier] typeArguments?
///
/// Clients may not extend, implement or mix-in this class.
abstract class NamedType implements TypeAnnotation, ShowHideClauseElement {
abstract class NamedType implements TypeAnnotation {
/// Return `true` if this type is a deferred type.
///
/// 15.1 Static Types: A type <i>T</i> is deferred iff it is of the form
@@ -4589,20 +4561,6 @@ abstract class SetOrMapLiteral implements TypedLiteral {
Token get rightBracket;
}
/// The "show" clause in an extension declaration.
///
/// showClause ::=
/// 'show' [TypeName] (',' [TypeName])*
///
/// Clients may not extend, implement or mix-in this class.
abstract class ShowClause implements AstNode {
/// Return the list of the elements that are being shown.
NodeList<ShowHideClauseElement> get elements;
/// Return the token representing the 'show' keyword.
Token get showKeyword;
}
/// A combinator that restricts the names being imported to those in a given list.
///
/// showCombinator ::=
@@ -4615,29 +4573,6 @@ abstract class ShowCombinator implements Combinator {
NodeList<SimpleIdentifier> get shownNames;
}
/// A node that can appear in the show or hide clauses.
///
/// Clients may not extend, implement or mix-in this class.
abstract class ShowHideClauseElement implements AstNode {}
/// A potentially non-type element of a show or a hide clause.
///
/// showHideElement ::=
/// 'get' [SimpleIdentifier] |
/// 'set' [SimpleIdentifier] |
/// 'operator' [SimpleIdentifier] |
/// [SimpleIdentifier]
///
/// Clients may not extend, implement or mix-in this class.
abstract class ShowHideElement implements AstNode, ShowHideClauseElement {
/// Return the 'get', 'set', or 'operator' modifier that appears before the
/// name, or `null` if there is no modifier.
Token? get modifier;
/// Return the name of the member the element refers to.
SimpleIdentifier get name;
}
/// A simple formal parameter.
///
/// simpleFormalParameter ::=
-78
View File
@@ -400,9 +400,6 @@ class GeneralizingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitGenericTypeAlias(GenericTypeAlias node) => visitTypeAlias(node);
@override
R? visitHideClause(HideClause node) => visitNode(node);
@override
R? visitHideCombinator(HideCombinator node) => visitCombinator(node);
@@ -627,15 +624,9 @@ class GeneralizingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitSetOrMapLiteral(SetOrMapLiteral node) => visitTypedLiteral(node);
@override
R? visitShowClause(ShowClause node) => visitNode(node);
@override
R? visitShowCombinator(ShowCombinator node) => visitCombinator(node);
@override
R? visitShowHideElement(ShowHideElement node) => visitNode(node);
@override
R? visitSimpleFormalParameter(SimpleFormalParameter node) =>
visitNormalFormalParameter(node);
@@ -1204,12 +1195,6 @@ class RecursiveAstVisitor<R> implements AstVisitor<R> {
return null;
}
@override
R? visitHideClause(HideClause node) {
node.visitChildren(this);
return null;
}
@override
R? visitHideCombinator(HideCombinator node) {
node.visitChildren(this);
@@ -1562,24 +1547,12 @@ class RecursiveAstVisitor<R> implements AstVisitor<R> {
return null;
}
@override
R? visitShowClause(ShowClause node) {
node.visitChildren(this);
return null;
}
@override
R? visitShowCombinator(ShowCombinator node) {
node.visitChildren(this);
return null;
}
@override
R? visitShowHideElement(ShowHideElement node) {
node.visitChildren(this);
return null;
}
@override
R? visitSimpleFormalParameter(SimpleFormalParameter node) {
node.visitChildren(this);
@@ -1999,9 +1972,6 @@ class SimpleAstVisitor<R> implements AstVisitor<R> {
@override
R? visitGenericTypeAlias(GenericTypeAlias node) => null;
@override
R? visitHideClause(HideClause node) => null;
@override
R? visitHideCombinator(HideCombinator node) => null;
@@ -2187,15 +2157,9 @@ class SimpleAstVisitor<R> implements AstVisitor<R> {
@override
R? visitSetOrMapLiteral(SetOrMapLiteral node) => null;
@override
R? visitShowClause(ShowClause node) => null;
@override
R? visitShowCombinator(ShowCombinator node) => null;
@override
R? visitShowHideElement(ShowHideElement node) => null;
@override
R? visitSimpleFormalParameter(SimpleFormalParameter node) => null;
@@ -2526,9 +2490,6 @@ class ThrowingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitGenericTypeAlias(GenericTypeAlias node) => _throw(node);
@override
R? visitHideClause(HideClause node) => _throw(node);
@override
R? visitHideCombinator(HideCombinator node) => _throw(node);
@@ -2717,15 +2678,9 @@ class ThrowingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitSetOrMapLiteral(SetOrMapLiteral node) => _throw(node);
@override
R? visitShowClause(ShowClause node) => _throw(node);
@override
R? visitShowCombinator(ShowCombinator node) => _throw(node);
@override
R? visitShowHideElement(ShowHideElement node) => _throw(node);
@override
R? visitSimpleFormalParameter(SimpleFormalParameter node) => _throw(node);
@@ -3413,14 +3368,6 @@ class TimedAstVisitor<T> implements AstVisitor<T> {
return result;
}
@override
T? visitHideClause(HideClause node) {
stopwatch.start();
T? result = _baseVisitor.visitHideClause(node);
stopwatch.stop();
return result;
}
@override
T? visitHideCombinator(HideCombinator node) {
stopwatch.start();
@@ -3889,14 +3836,6 @@ class TimedAstVisitor<T> implements AstVisitor<T> {
return result;
}
@override
T? visitShowClause(ShowClause node) {
stopwatch.start();
T? result = _baseVisitor.visitShowClause(node);
stopwatch.stop();
return result;
}
@override
T? visitShowCombinator(ShowCombinator node) {
stopwatch.start();
@@ -3905,14 +3844,6 @@ class TimedAstVisitor<T> implements AstVisitor<T> {
return result;
}
@override
T? visitShowHideElement(ShowHideElement node) {
stopwatch.start();
T? result = _baseVisitor.visitShowHideElement(node);
stopwatch.stop();
return result;
}
@override
T? visitSimpleFormalParameter(SimpleFormalParameter node) {
stopwatch.start();
@@ -4412,9 +4343,6 @@ class UnifyingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitGenericTypeAlias(GenericTypeAlias node) => visitNode(node);
@override
R? visitHideClause(HideClause node) => visitNode(node);
@override
R? visitHideCombinator(HideCombinator node) => visitNode(node);
@@ -4611,15 +4539,9 @@ class UnifyingAstVisitor<R> implements AstVisitor<R> {
@override
R? visitSetOrMapLiteral(SetOrMapLiteral node) => visitNode(node);
@override
R? visitShowClause(ShowClause node) => visitNode(node);
@override
R? visitShowCombinator(ShowCombinator node) => visitNode(node);
@override
R? visitShowHideElement(ShowHideElement node) => visitNode(node);
@override
R? visitSimpleFormalParameter(SimpleFormalParameter node) => visitNode(node);
+1 -156
View File
@@ -4461,17 +4461,9 @@ class ExtensionDeclarationImpl extends CompilationUnitMemberImpl
@override
final Token? typeKeyword;
/// The hide clause for the extension or `null` if the declaration does not
/// hide any elements.
HideClauseImpl? _hideClause;
@override
final Token? name;
/// The show clause for the extension or `null` if the declaration does not
/// show any elements.
ShowClauseImpl? _showClause;
/// The type parameters for the extension, or `null` if the extension does not
/// have any type parameters.
TypeParameterListImpl? _typeParameters;
@@ -4503,15 +4495,11 @@ class ExtensionDeclarationImpl extends CompilationUnitMemberImpl
required TypeParameterListImpl? typeParameters,
required this.onKeyword,
required TypeAnnotationImpl extendedType,
required ShowClauseImpl? showClause,
required HideClauseImpl? hideClause,
required this.leftBracket,
required List<ClassMember> members,
required this.rightBracket,
}) : _typeParameters = typeParameters,
_extendedType = extendedType,
_showClause = showClause,
_hideClause = hideClause {
_extendedType = extendedType {
_becomeParentOf(_typeParameters);
_becomeParentOf(_extendedType);
_members._initialize(this, members);
@@ -4534,13 +4522,6 @@ class ExtensionDeclarationImpl extends CompilationUnitMemberImpl
@override
Token get firstTokenAfterCommentAndMetadata => extensionKeyword;
@override
HideClauseImpl? get hideClause => _hideClause;
set hideClause(HideClauseImpl? hideClause) {
_hideClause = _becomeParentOf(hideClause);
}
@override
NodeListImpl<ClassMember> get members => _members;
@@ -4548,13 +4529,6 @@ class ExtensionDeclarationImpl extends CompilationUnitMemberImpl
@override
Token? get name2 => name;
@override
ShowClauseImpl? get showClause => _showClause;
set showClause(ShowClauseImpl? showClause) {
_showClause = _becomeParentOf(showClause);
}
@override
TypeParameterListImpl? get typeParameters => _typeParameters;
@@ -6520,49 +6494,6 @@ class GenericTypeAliasImpl extends TypeAliasImpl implements GenericTypeAlias {
}
}
/// The "hide" clause in an extension declaration.
///
/// hideClause ::=
/// 'hide' [TypeName] (',' [TypeName])*
class HideClauseImpl extends AstNodeImpl implements HideClause {
/// The token representing the 'hide' keyword.
@override
final Token hideKeyword;
/// The elements that are being shown.
final NodeListImpl<ShowHideClauseElement> _elements = NodeListImpl._();
/// Initialize a newly created show clause.
HideClauseImpl({
required this.hideKeyword,
required List<ShowHideClauseElement> elements,
}) {
_elements._initialize(this, elements);
}
@override
Token get beginToken => hideKeyword;
@override
NodeListImpl<ShowHideClauseElement> get elements => _elements;
@override
Token get endToken => _elements.endToken!;
@override
ChildEntities get _childEntities => ChildEntities()
..addToken('hideKeyword', hideKeyword)
..addNodeList('elements', elements);
@override
E? accept<E>(AstVisitor<E> visitor) => visitor.visitHideClause(this);
@override
void visitChildren(AstVisitor visitor) {
_elements.accept(visitor);
}
}
/// A combinator that restricts the names being imported to those that are not
/// in a given list.
///
@@ -11149,49 +11080,6 @@ class SetOrMapLiteralImpl extends TypedLiteralImpl implements SetOrMapLiteral {
}
}
/// The "show" clause in an extension declaration.
///
/// showClause ::=
/// 'show' [TypeName] (',' [TypeName])*
class ShowClauseImpl extends AstNodeImpl implements ShowClause {
/// The token representing the 'show' keyword.
@override
final Token showKeyword;
/// The elements that are being shown.
final NodeListImpl<ShowHideClauseElement> _elements = NodeListImpl._();
/// Initialize a newly created show clause.
ShowClauseImpl({
required this.showKeyword,
required List<ShowHideClauseElement> elements,
}) {
_elements._initialize(this, elements);
}
@override
Token get beginToken => showKeyword;
@override
NodeListImpl<ShowHideClauseElement> get elements => _elements;
@override
Token get endToken => _elements.endToken!;
@override
ChildEntities get _childEntities => ChildEntities()
..addToken('showKeyword', showKeyword)
..addNodeList('elements', elements);
@override
E? accept<E>(AstVisitor<E> visitor) => visitor.visitShowClause(this);
@override
void visitChildren(AstVisitor visitor) {
_elements.accept(visitor);
}
}
/// A combinator that restricts the names being imported to those in a given
/// list.
///
@@ -11231,49 +11119,6 @@ class ShowCombinatorImpl extends CombinatorImpl implements ShowCombinator {
}
}
/// A potentially non-type element of a show or a hide clause.
///
/// showHideElement ::=
/// 'get' [SimpleIdentifier] |
/// 'set' [SimpleIdentifier] |
/// 'operator' [SimpleIdentifier] |
/// [SimpleIdentifier]
///
/// Clients may not extend, implement or mix-in this class.
class ShowHideElementImpl extends AstNodeImpl implements ShowHideElement {
@override
final Token? modifier;
@override
SimpleIdentifierImpl name;
ShowHideElementImpl({
required this.modifier,
required this.name,
}) {
_becomeParentOf<SimpleIdentifierImpl>(name);
}
@override
Token get beginToken => modifier ?? name.beginToken;
@override
Token get endToken => name.endToken;
@override
ChildEntities get _childEntities => ChildEntities()
..addToken('modifier', modifier)
..addNode('name', name);
@override
E? accept<E>(AstVisitor<E> visitor) => visitor.visitShowHideElement(this);
@override
void visitChildren(AstVisitor visitor) {
name.accept(visitor);
}
}
/// A simple formal parameter.
///
/// simpleFormalParameter ::=
@@ -432,8 +432,6 @@ class ToSourceVisitor implements AstVisitor<void> {
_visitToken(node.onKeyword);
sink.write(' ');
_visitNode(node.extendedType, suffix: ' ');
_visitNode(node.showClause, suffix: ' ');
_visitNode(node.hideClause, suffix: ' ');
_visitToken(node.leftBracket);
_visitNodeList(node.members, separator: ' ');
_visitToken(node.rightBracket);
@@ -656,12 +654,6 @@ class ToSourceVisitor implements AstVisitor<void> {
sink.write(';');
}
@override
void visitHideClause(HideClause node) {
sink.write('hide ');
_visitNodeList(node.elements, separator: ', ');
}
@override
void visitHideCombinator(HideCombinator node) {
sink.write('hide ');
@@ -1134,24 +1126,12 @@ class ToSourceVisitor implements AstVisitor<void> {
sink.write('}');
}
@override
void visitShowClause(ShowClause node) {
sink.write('show ');
_visitNodeList(node.elements, separator: ', ');
}
@override
void visitShowCombinator(ShowCombinator node) {
sink.write('show ');
_visitNodeList(node.shownNames, separator: ', ');
}
@override
void visitShowHideElement(ShowHideElement node) {
_visitToken(node.modifier, suffix: ' ');
_visitNode(node.name);
}
@override
void visitSimpleFormalParameter(SimpleFormalParameter node) {
_visitNodeList(node.metadata, separator: ' ', suffix: ' ');
@@ -765,13 +765,6 @@ class AstComparator implements AstVisitor<bool> {
isEqualNodes(node.type, other.type);
}
@override
bool visitHideClause(HideClause node) {
HideClause other = _other as HideClause;
return isEqualTokens(node.hideKeyword, other.hideKeyword) &&
_isEqualNodeLists(node.elements, other.elements);
}
@override
bool visitHideCombinator(HideCombinator node) {
HideCombinator other = _other as HideCombinator;
@@ -1274,13 +1267,6 @@ class AstComparator implements AstVisitor<bool> {
isEqualTokens(node.rightBracket, other.rightBracket);
}
@override
bool visitShowClause(ShowClause node) {
ShowClause other = _other as ShowClause;
return isEqualTokens(node.showKeyword, other.showKeyword) &&
_isEqualNodeLists(node.elements, other.elements);
}
@override
bool visitShowCombinator(ShowCombinator node) {
ShowCombinator other = _other as ShowCombinator;
@@ -1288,13 +1274,6 @@ class AstComparator implements AstVisitor<bool> {
_isEqualNodeLists(node.shownNames, other.shownNames);
}
@override
bool visitShowHideElement(ShowHideElement node) {
ShowHideElement other = _other as ShowHideElement;
return isEqualTokens(node.modifier, other.modifier) &&
isEqualNodes(node.name, other.name);
}
@override
bool visitSimpleFormalParameter(SimpleFormalParameter node) {
SimpleFormalParameter other = _other as SimpleFormalParameter;
@@ -2716,14 +2695,6 @@ class NodeReplacer extends ThrowingAstVisitor<bool> {
return visitNode(node);
}
@override
bool visitHideClause(covariant HideClauseImpl node) {
if (_replaceInList(node.elements)) {
return true;
}
return visitNode(node);
}
@override
bool visitHideCombinator(covariant HideCombinatorImpl node) {
if (_replaceInList(node.hiddenNames)) {
@@ -3193,14 +3164,6 @@ class NodeReplacer extends ThrowingAstVisitor<bool> {
return visitTypedLiteral(node);
}
@override
bool visitShowClause(covariant ShowClauseImpl node) {
if (_replaceInList(node.elements)) {
return true;
}
return visitNode(node);
}
@override
bool visitShowCombinator(covariant ShowCombinatorImpl node) {
if (_replaceInList(node.shownNames)) {
@@ -3209,15 +3172,6 @@ class NodeReplacer extends ThrowingAstVisitor<bool> {
return visitNode(node);
}
@override
bool visitShowHideElement(covariant ShowHideElementImpl node) {
if (identical(node.name, _oldNode)) {
node.name = _newNode as SimpleIdentifierImpl;
return true;
}
return visitNode(node);
}
@override
bool visitSimpleFormalParameter(covariant SimpleFormalParameterImpl node) {
if (identical(node.type, _oldNode)) {
@@ -1496,9 +1496,6 @@ class AstBuilder extends StackListener {
);
}
final showClause = pop(NullValue.ShowClause) as ShowClauseImpl?;
final hideClause = pop(NullValue.HideClause) as HideClauseImpl?;
final type = pop() as TypeAnnotationImpl;
declarations.add(
@@ -1506,8 +1503,6 @@ class AstBuilder extends StackListener {
extendedType: type,
onKeyword: onKeyword,
typeKeyword: typeKeyword,
showClause: showClause,
hideClause: hideClause,
),
);
@@ -3837,35 +3832,6 @@ class AstBuilder extends StackListener {
);
}
@override
void handleExtensionShowHide(Token? showKeyword, int showElementCount,
Token? hideKeyword, int hideElementCount) {
assert(optionalOrNull('hide', hideKeyword));
assert(optionalOrNull('show', showKeyword));
debugEvent("ExtensionShowHide");
HideClause? hideClause;
if (hideKeyword != null) {
var elements = popTypedList2<ShowHideClauseElement>(hideElementCount);
hideClause = HideClauseImpl(
hideKeyword: hideKeyword,
elements: elements,
);
}
ShowClause? showClause;
if (showKeyword != null) {
var elements = popTypedList2<ShowHideClauseElement>(showElementCount);
showClause = ShowClauseImpl(
showKeyword: showKeyword,
elements: elements,
);
}
push(hideClause ?? NullValue.HideClause);
push(showClause ?? NullValue.ShowClause);
}
@override
void handleExtractorPattern(
Token firstIdentifierToken, Token? dot, Token? secondIdentifierToken) {
@@ -4886,24 +4852,6 @@ class AstBuilder extends StackListener {
}
}
@override
void handleShowHideIdentifier(Token? modifier, Token identifier) {
debugEvent("handleShowHideIdentifier");
assert(modifier == null ||
modifier.stringValue! == "get" ||
modifier.stringValue! == "set" ||
modifier.stringValue! == "operator");
var name = ast.simpleIdentifier(identifier);
ShowHideElement element = ShowHideElementImpl(
modifier: modifier,
name: name,
);
push(element);
}
@override
void handleSpreadExpression(Token spreadToken) {
var expression = pop() as ExpressionImpl;
@@ -5461,8 +5409,6 @@ class _ExtensionDeclarationBuilder extends _ClassLikeDeclarationBuilder {
ExtensionDeclarationImpl build({
required Token? typeKeyword,
required HideClauseImpl? hideClause,
required ShowClauseImpl? showClause,
required Token onKeyword,
required TypeAnnotationImpl extendedType,
}) {
@@ -5475,8 +5421,6 @@ class _ExtensionDeclarationBuilder extends _ClassLikeDeclarationBuilder {
typeParameters: typeParameters,
onKeyword: onKeyword,
extendedType: extendedType,
showClause: showClause,
hideClause: hideClause,
leftBracket: leftBracket,
members: members,
rightBracket: rightBracket,
@@ -449,12 +449,6 @@ class LinterVisitor implements AstVisitor<void> {
node.visitChildren(this);
}
@override
void visitHideClause(HideClause node) {
_runSubscriptions(node, registry._forHideClause);
node.visitChildren(this);
}
@override
void visitHideCombinator(HideCombinator node) {
_runSubscriptions(node, registry._forHideCombinator);
@@ -808,24 +802,12 @@ class LinterVisitor implements AstVisitor<void> {
node.visitChildren(this);
}
@override
void visitShowClause(ShowClause node) {
_runSubscriptions(node, registry._forShowClause);
node.visitChildren(this);
}
@override
void visitShowCombinator(ShowCombinator node) {
_runSubscriptions(node, registry._forShowCombinator);
node.visitChildren(this);
}
@override
void visitShowHideElement(ShowHideElement node) {
_runSubscriptions(node, registry._forShowHideElement);
node.visitChildren(this);
}
@override
void visitSimpleFormalParameter(SimpleFormalParameter node) {
_runSubscriptions(node, registry._forSimpleFormalParameter);
@@ -1127,7 +1109,6 @@ class NodeLintRegistry {
_forFunctionTypedFormalParameter = [];
final List<_Subscription<GenericFunctionType>> _forGenericFunctionType = [];
final List<_Subscription<GenericTypeAlias>> _forGenericTypeAlias = [];
final List<_Subscription<HideClause>> _forHideClause = [];
final List<_Subscription<HideCombinator>> _forHideCombinator = [];
final List<_Subscription<IfElement>> _forIfElement = [];
final List<_Subscription<IfStatement>> _forIfStatement = [];
@@ -1199,9 +1180,7 @@ class NodeLintRegistry {
final List<_Subscription<ReturnStatement>> _forReturnStatement = [];
final List<_Subscription<ScriptTag>> _forScriptTag = [];
final List<_Subscription<SetOrMapLiteral>> _forSetOrMapLiteral = [];
final List<_Subscription<ShowClause>> _forShowClause = [];
final List<_Subscription<ShowCombinator>> _forShowCombinator = [];
final List<_Subscription<ShowHideElement>> _forShowHideElement = [];
final List<_Subscription<SimpleFormalParameter>> _forSimpleFormalParameter =
[];
final List<_Subscription<SimpleIdentifier>> _forSimpleIdentifier = [];
@@ -1564,10 +1543,6 @@ class NodeLintRegistry {
_forGenericTypeAlias.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addHideClause(LintRule linter, AstVisitor visitor) {
_forHideClause.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addHideCombinator(LintRule linter, AstVisitor visitor) {
_forHideCombinator.add(_Subscription(linter, visitor, _getTimer(linter)));
}
@@ -1812,18 +1787,10 @@ class NodeLintRegistry {
_forSetOrMapLiteral.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addShowClause(LintRule linter, AstVisitor visitor) {
_forShowClause.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addShowCombinator(LintRule linter, AstVisitor visitor) {
_forShowCombinator.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addShowHideElement(LintRule linter, AstVisitor visitor) {
_forShowHideElement.add(_Subscription(linter, visitor, _getTimer(linter)));
}
void addSimpleFormalParameter(LintRule linter, AstVisitor visitor) {
_forSimpleFormalParameter
.add(_Subscription(linter, visitor, _getTimer(linter)));
@@ -374,8 +374,6 @@ class AstTextPrinter extends ThrowingAstVisitor<void> {
node.typeParameters?.accept(this);
_token(node.onKeyword);
node.extendedType.accept(this);
node.showClause?.accept(this);
node.hideClause?.accept(this);
_token(node.leftBracket);
node.members.accept(this);
_token(node.rightBracket);
@@ -1132,86 +1132,6 @@ $code
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationHideClause_empty() {
final code = 'extension E on C hide B {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_ambiguousElement() {
final code = 'extension E on C show foo {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_empty() {
final code = 'extension E on C show B {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_getterElement() {
final code = 'extension E on C show get foo {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_operatorElement() {
final code = 'extension E on C show operator * {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_parameters() {
final code = 'extension E<T> on C show B {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_qualifiedTypeElement() {
final code = 'extension E on C show prefix.B {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_setterElement() {
final code = 'extension E on C show set foo {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowClause_typeWithArgumentsElement() {
final code = 'extension E on C show B<int, String> {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionDeclarationShowHideClause_empty() {
final code = 'extension E on C show A hide B {}';
final findNode = _parseStringToFindNode('''
$code
''');
_assertSource(code, findNode.extensionDeclaration(code));
}
void test_visitExtensionOverride_prefixedName_noTypeArgs() {
// TODO(scheglov) restore
// _assertSource(