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

Unified Diff: pkg/analyzer/lib/src/generated/ast.dart

Issue 192363003: Translate Java's @Override into Dart's @override. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 9 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/lib/src/generated/ast.dart
diff --git a/pkg/analyzer/lib/src/generated/ast.dart b/pkg/analyzer/lib/src/generated/ast.dart
index 307cf495bd688f046c444694e0ddaec25a3a6fa8..043408dd295bf1b8a45dc8f33064a4df083029ad 100644
--- a/pkg/analyzer/lib/src/generated/ast.dart
+++ b/pkg/analyzer/lib/src/generated/ast.dart
@@ -45,10 +45,13 @@ class AdjacentStrings extends StringLiteral {
this._strings.addAll(strings);
}
+ @override
accept(AstVisitor visitor) => visitor.visitAdjacentStrings(this);
+ @override
Token get beginToken => _strings.beginToken;
+ @override
Token get endToken => _strings.endToken;
/**
@@ -58,10 +61,12 @@ class AdjacentStrings extends StringLiteral {
*/
NodeList<StringLiteral> get strings => _strings;
+ @override
void visitChildren(AstVisitor visitor) {
_strings.accept(visitor);
}
+ @override
void appendStringValue(JavaStringBuilder builder) {
for (StringLiteral stringLiteral in strings) {
stringLiteral.appendStringValue(builder);
@@ -97,6 +102,7 @@ abstract class AnnotatedNode extends AstNode {
this._metadata.addAll(metadata);
}
+ @override
Token get beginToken {
if (_comment == null) {
if (_metadata.isEmpty) {
@@ -149,6 +155,7 @@ abstract class AnnotatedNode extends AstNode {
this._metadata.addAll(metadata);
}
+ @override
void visitChildren(AstVisitor visitor) {
if (_commentIsBeforeAnnotations()) {
safelyVisitChild(_comment, visitor);
@@ -264,6 +271,7 @@ class Annotation extends AstNode {
this._arguments = becomeParentOf(arguments);
}
+ @override
accept(AstVisitor visitor) => visitor.visitAnnotation(this);
/**
@@ -274,6 +282,7 @@ class Annotation extends AstNode {
*/
ArgumentList get arguments => _arguments;
+ @override
Token get beginToken => atSign;
/**
@@ -300,6 +309,7 @@ class Annotation extends AstNode {
return null;
}
+ @override
Token get endToken {
if (_arguments != null) {
return _arguments.endToken;
@@ -354,6 +364,7 @@ class Annotation extends AstNode {
this._name = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_name, visitor);
safelyVisitChild(_constructorName, visitor);
@@ -390,10 +401,13 @@ class ArgumentDefinitionTest extends Expression {
this._identifier = becomeParentOf(identifier);
}
+ @override
accept(AstVisitor visitor) => visitor.visitArgumentDefinitionTest(this);
+ @override
Token get beginToken => question;
+ @override
Token get endToken => _identifier.endToken;
/**
@@ -403,6 +417,7 @@ class ArgumentDefinitionTest extends Expression {
*/
SimpleIdentifier get identifier => _identifier;
+ @override
int get precedence => 15;
/**
@@ -414,6 +429,7 @@ class ArgumentDefinitionTest extends Expression {
this._identifier = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_identifier, visitor);
}
@@ -480,6 +496,7 @@ class ArgumentList extends AstNode {
this._rightParenthesis = rightParenthesis;
}
+ @override
accept(AstVisitor visitor) => visitor.visitArgumentList(this);
/**
@@ -491,8 +508,10 @@ class ArgumentList extends AstNode {
*/
NodeList<Expression> get arguments => _arguments;
+ @override
Token get beginToken => _leftParenthesis;
+ @override
Token get endToken => _rightParenthesis;
/**
@@ -557,6 +576,7 @@ class ArgumentList extends AstNode {
_rightParenthesis = parenthesis;
}
+ @override
void visitChildren(AstVisitor visitor) {
_arguments.accept(visitor);
}
@@ -653,10 +673,13 @@ class AsExpression extends Expression {
this._type = becomeParentOf(type);
}
+ @override
accept(AstVisitor visitor) => visitor.visitAsExpression(this);
+ @override
Token get beginToken => _expression.beginToken;
+ @override
Token get endToken => _type.endToken;
/**
@@ -666,6 +689,7 @@ class AsExpression extends Expression {
*/
Expression get expression => _expression;
+ @override
int get precedence => 7;
/**
@@ -693,6 +717,7 @@ class AsExpression extends Expression {
this._type = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
safelyVisitChild(_type, visitor);
@@ -746,8 +771,10 @@ class AssertStatement extends Statement {
this._condition = becomeParentOf(condition);
}
+ @override
accept(AstVisitor visitor) => visitor.visitAssertStatement(this);
+ @override
Token get beginToken => keyword;
/**
@@ -757,6 +784,7 @@ class AssertStatement extends Statement {
*/
Expression get condition => _condition;
+ @override
Token get endToken => semicolon;
/**
@@ -768,6 +796,7 @@ class AssertStatement extends Statement {
this._condition = becomeParentOf(condition);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_condition, visitor);
}
@@ -823,8 +852,10 @@ class AssignmentExpression extends Expression {
this._rightHandSide = becomeParentOf(rightHandSide);
}
+ @override
accept(AstVisitor visitor) => visitor.visitAssignmentExpression(this);
+ @override
Token get beginToken => _leftHandSide.beginToken;
/**
@@ -843,6 +874,7 @@ class AssignmentExpression extends Expression {
return element;
}
+ @override
Token get endToken => _rightHandSide.endToken;
/**
@@ -852,6 +884,7 @@ class AssignmentExpression extends Expression {
*/
Expression get leftHandSide => _leftHandSide;
+ @override
int get precedence => 1;
/**
@@ -919,6 +952,7 @@ class AssignmentExpression extends Expression {
_staticElement = element;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_leftHandSide, visitor);
safelyVisitChild(_rightHandSide, visitor);
@@ -1155,6 +1189,7 @@ abstract class AstNode {
return writer.toString();
}
+ @override
String toString() => toSource();
/**
@@ -1463,8 +1498,10 @@ class BinaryExpression extends Expression {
this._rightOperand = becomeParentOf(rightOperand);
}
+ @override
accept(AstVisitor visitor) => visitor.visitBinaryExpression(this);
+ @override
Token get beginToken => _leftOperand.beginToken;
/**
@@ -1483,6 +1520,7 @@ class BinaryExpression extends Expression {
return element;
}
+ @override
Token get endToken => _rightOperand.endToken;
/**
@@ -1492,6 +1530,7 @@ class BinaryExpression extends Expression {
*/
Expression get leftOperand => _leftOperand;
+ @override
int get precedence => operator.type.precedence;
/**
@@ -1559,6 +1598,7 @@ class BinaryExpression extends Expression {
_staticElement = element;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_leftOperand, visitor);
safelyVisitChild(_rightOperand, visitor);
@@ -1643,10 +1683,13 @@ class Block extends Statement {
this._statements.addAll(statements);
}
+ @override
accept(AstVisitor visitor) => visitor.visitBlock(this);
+ @override
Token get beginToken => leftBracket;
+ @override
Token get endToken => rightBracket;
/**
@@ -1656,6 +1699,7 @@ class Block extends Statement {
*/
NodeList<Statement> get statements => _statements;
+ @override
void visitChildren(AstVisitor visitor) {
_statements.accept(visitor);
}
@@ -1685,8 +1729,10 @@ class BlockFunctionBody extends FunctionBody {
this._block = becomeParentOf(block);
}
+ @override
accept(AstVisitor visitor) => visitor.visitBlockFunctionBody(this);
+ @override
Token get beginToken => _block.beginToken;
/**
@@ -1696,6 +1742,7 @@ class BlockFunctionBody extends FunctionBody {
*/
Block get block => _block;
+ @override
Token get endToken => _block.endToken;
/**
@@ -1707,6 +1754,7 @@ class BlockFunctionBody extends FunctionBody {
this._block = becomeParentOf(block);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_block, visitor);
}
@@ -1739,14 +1787,19 @@ class BooleanLiteral extends Literal {
*/
BooleanLiteral(this.literal, this.value);
+ @override
accept(AstVisitor visitor) => visitor.visitBooleanLiteral(this);
+ @override
Token get beginToken => literal;
+ @override
Token get endToken => literal;
+ @override
bool get isSynthetic => literal.isSynthetic;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -1786,10 +1839,13 @@ class BreakStatement extends Statement {
this._label = becomeParentOf(label);
}
+ @override
accept(AstVisitor visitor) => visitor.visitBreakStatement(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => semicolon;
/**
@@ -1808,6 +1864,7 @@ class BreakStatement extends Statement {
_label = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_label, visitor);
}
@@ -1854,8 +1911,10 @@ class CascadeExpression extends Expression {
this._cascadeSections.addAll(cascadeSections);
}
+ @override
accept(AstVisitor visitor) => visitor.visitCascadeExpression(this);
+ @override
Token get beginToken => _target.beginToken;
/**
@@ -1865,8 +1924,10 @@ class CascadeExpression extends Expression {
*/
NodeList<Expression> get cascadeSections => _cascadeSections;
+ @override
Token get endToken => _cascadeSections.endToken;
+ @override
int get precedence => 2;
/**
@@ -1885,6 +1946,7 @@ class CascadeExpression extends Expression {
this._target = becomeParentOf(target);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_target, visitor);
_cascadeSections.accept(visitor);
@@ -1974,8 +2036,10 @@ class CatchClause extends AstNode {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitCatchClause(this);
+ @override
Token get beginToken {
if (onKeyword != null) {
return onKeyword;
@@ -1990,6 +2054,7 @@ class CatchClause extends AstNode {
*/
Block get body => _body;
+ @override
Token get endToken => _body.endToken;
/**
@@ -2068,6 +2133,7 @@ class CatchClause extends AstNode {
_stackTraceParameter = becomeParentOf(parameter);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(exceptionType, visitor);
safelyVisitChild(_exceptionParameter, visitor);
@@ -2171,6 +2237,7 @@ class ClassDeclaration extends CompilationUnitMember {
this._members.addAll(members);
}
+ @override
accept(AstVisitor visitor) => visitor.visitClassDeclaration(this);
/**
@@ -2195,8 +2262,10 @@ class ClassDeclaration extends CompilationUnitMember {
return null;
}
+ @override
ClassElement get element => _name != null ? (_name.staticElement as ClassElement) : null;
+ @override
Token get endToken => rightBracket;
/**
@@ -2313,6 +2382,7 @@ class ClassDeclaration extends CompilationUnitMember {
this._withClause = becomeParentOf(withClause);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_name, visitor);
@@ -2324,6 +2394,7 @@ class ClassDeclaration extends CompilationUnitMember {
members.accept(visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (abstractKeyword != null) {
return abstractKeyword;
@@ -2418,8 +2489,10 @@ class ClassTypeAlias extends TypeAlias {
this._implementsClause = becomeParentOf(implementsClause);
}
+ @override
accept(AstVisitor visitor) => visitor.visitClassTypeAlias(this);
+ @override
ClassElement get element => _name != null ? (_name.staticElement as ClassElement) : null;
/**
@@ -2503,6 +2576,7 @@ class ClassTypeAlias extends TypeAlias {
this._withClause = becomeParentOf(withClause);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_name, visitor);
@@ -2537,6 +2611,7 @@ abstract class Combinator extends AstNode {
*/
Combinator(this.keyword);
+ @override
Token get beginToken => keyword;
}
@@ -2623,10 +2698,13 @@ class Comment extends AstNode {
this._references.addAll(references);
}
+ @override
accept(AstVisitor visitor) => visitor.visitComment(this);
+ @override
Token get beginToken => tokens[0];
+ @override
Token get endToken => tokens[tokens.length - 1];
/**
@@ -2657,6 +2735,7 @@ class Comment extends AstNode {
*/
bool get isEndOfLine => identical(_type, CommentType.END_OF_LINE);
+ @override
void visitChildren(AstVisitor visitor) {
_references.accept(visitor);
}
@@ -2717,10 +2796,13 @@ class CommentReference extends AstNode {
this._identifier = becomeParentOf(identifier);
}
+ @override
accept(AstVisitor visitor) => visitor.visitCommentReference(this);
+ @override
Token get beginToken => _identifier.beginToken;
+ @override
Token get endToken => _identifier.endToken;
/**
@@ -2739,6 +2821,7 @@ class CommentReference extends AstNode {
identifier = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_identifier, visitor);
}
@@ -2824,6 +2907,7 @@ class CompilationUnit extends AstNode {
this._declarations.addAll(declarations);
}
+ @override
accept(AstVisitor visitor) => visitor.visitCompilationUnit(this);
/**
@@ -2840,6 +2924,7 @@ class CompilationUnit extends AstNode {
*/
NodeList<Directive> get directives => _directives;
+ @override
int get length {
Token endToken = this.endToken;
if (endToken == null) {
@@ -2848,6 +2933,7 @@ class CompilationUnit extends AstNode {
return endToken.offset + endToken.length;
}
+ @override
int get offset => 0;
/**
@@ -2867,6 +2953,7 @@ class CompilationUnit extends AstNode {
this._scriptTag = becomeParentOf(scriptTag);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_scriptTag, visitor);
if (_directivesAreBeforeDeclarations()) {
@@ -2985,8 +3072,10 @@ class ConditionalExpression extends Expression {
this._elseExpression = becomeParentOf(elseExpression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitConditionalExpression(this);
+ @override
Token get beginToken => _condition.beginToken;
/**
@@ -3003,8 +3092,10 @@ class ConditionalExpression extends Expression {
*/
Expression get elseExpression => _elseExpression;
+ @override
Token get endToken => _elseExpression.endToken;
+ @override
int get precedence => 3;
/**
@@ -3044,6 +3135,7 @@ class ConditionalExpression extends Expression {
_thenExpression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_condition, visitor);
safelyVisitChild(_thenExpression, visitor);
@@ -3170,6 +3262,7 @@ class ConstructorDeclaration extends ClassMember {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitConstructorDeclaration(this);
/**
@@ -3179,6 +3272,7 @@ class ConstructorDeclaration extends ClassMember {
*/
FunctionBody get body => _body;
+ @override
Token get endToken {
if (_body != null) {
return _body.endToken;
@@ -3274,6 +3368,7 @@ class ConstructorDeclaration extends ClassMember {
_returnType = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_returnType, visitor);
@@ -3284,6 +3379,7 @@ class ConstructorDeclaration extends ClassMember {
safelyVisitChild(_body, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
Token leftMost = _leftMost([externalKeyword, constKeyword, factoryKeyword]);
if (leftMost != null) {
@@ -3362,8 +3458,10 @@ class ConstructorFieldInitializer extends ConstructorInitializer {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitConstructorFieldInitializer(this);
+ @override
Token get beginToken {
if (keyword != null) {
return keyword;
@@ -3371,6 +3469,7 @@ class ConstructorFieldInitializer extends ConstructorInitializer {
return _fieldName.beginToken;
}
+ @override
Token get endToken => _expression.endToken;
/**
@@ -3406,6 +3505,7 @@ class ConstructorFieldInitializer extends ConstructorInitializer {
_fieldName = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_fieldName, visitor);
safelyVisitChild(_expression, visitor);
@@ -3470,10 +3570,13 @@ class ConstructorName extends AstNode {
this._name = becomeParentOf(name);
}
+ @override
accept(AstVisitor visitor) => visitor.visitConstructorName(this);
+ @override
Token get beginToken => _type.beginToken;
+ @override
Token get endToken {
if (_name != null) {
return _name.endToken;
@@ -3533,6 +3636,7 @@ class ConstructorName extends AstNode {
this._type = becomeParentOf(type);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_type, visitor);
safelyVisitChild(_name, visitor);
@@ -3574,10 +3678,13 @@ class ContinueStatement extends Statement {
this._label = becomeParentOf(label);
}
+ @override
accept(AstVisitor visitor) => visitor.visitContinueStatement(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => semicolon;
/**
@@ -3596,6 +3703,7 @@ class ContinueStatement extends Statement {
_label = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_label, visitor);
}
@@ -3664,8 +3772,10 @@ class DeclaredIdentifier extends Declaration {
this._identifier = becomeParentOf(identifier);
}
+ @override
accept(AstVisitor visitor) => visitor.visitDeclaredIdentifier(this);
+ @override
LocalVariableElement get element {
SimpleIdentifier identifier = this.identifier;
if (identifier == null) {
@@ -3674,6 +3784,7 @@ class DeclaredIdentifier extends Declaration {
return identifier.staticElement as LocalVariableElement;
}
+ @override
Token get endToken => _identifier.endToken;
/**
@@ -3716,12 +3827,14 @@ class DeclaredIdentifier extends Declaration {
_type = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_type, visitor);
safelyVisitChild(_identifier, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (keyword != null) {
return keyword;
@@ -3781,8 +3894,10 @@ class DefaultFormalParameter extends FormalParameter {
this._defaultValue = becomeParentOf(defaultValue);
}
+ @override
accept(AstVisitor visitor) => visitor.visitDefaultFormalParameter(this);
+ @override
Token get beginToken => _parameter.beginToken;
/**
@@ -3793,6 +3908,7 @@ class DefaultFormalParameter extends FormalParameter {
*/
Expression get defaultValue => _defaultValue;
+ @override
Token get endToken {
if (_defaultValue != null) {
return _defaultValue.endToken;
@@ -3800,6 +3916,7 @@ class DefaultFormalParameter extends FormalParameter {
return _parameter.endToken;
}
+ @override
SimpleIdentifier get identifier => _parameter.identifier;
/**
@@ -3809,8 +3926,10 @@ class DefaultFormalParameter extends FormalParameter {
*/
NormalFormalParameter get parameter => _parameter;
+ @override
bool get isConst => _parameter != null && _parameter.isConst;
+ @override
bool get isFinal => _parameter != null && _parameter.isFinal;
/**
@@ -3831,6 +3950,7 @@ class DefaultFormalParameter extends FormalParameter {
_parameter = becomeParentOf(formalParameter);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_parameter, visitor);
safelyVisitChild(_defaultValue, visitor);
@@ -3954,8 +4074,10 @@ class DoStatement extends Statement {
this._rightParenthesis = rightParenthesis;
}
+ @override
accept(AstVisitor visitor) => visitor.visitDoStatement(this);
+ @override
Token get beginToken => doKeyword;
/**
@@ -3972,6 +4094,7 @@ class DoStatement extends Statement {
*/
Expression get condition => _condition;
+ @override
Token get endToken => semicolon;
/**
@@ -4024,6 +4147,7 @@ class DoStatement extends Statement {
_rightParenthesis = parenthesis;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_body, visitor);
safelyVisitChild(_condition, visitor);
@@ -4061,12 +4185,16 @@ class DoubleLiteral extends Literal {
*/
DoubleLiteral(this.literal, this.value);
+ @override
accept(AstVisitor visitor) => visitor.visitDoubleLiteral(this);
+ @override
Token get beginToken => literal;
+ @override
Token get endToken => literal;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -4093,12 +4221,16 @@ class EmptyFunctionBody extends FunctionBody {
*/
EmptyFunctionBody(this.semicolon);
+ @override
accept(AstVisitor visitor) => visitor.visitEmptyFunctionBody(this);
+ @override
Token get beginToken => semicolon;
+ @override
Token get endToken => semicolon;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -4124,12 +4256,16 @@ class EmptyStatement extends Statement {
*/
EmptyStatement(this.semicolon);
+ @override
accept(AstVisitor visitor) => visitor.visitEmptyStatement(this);
+ @override
Token get beginToken => semicolon;
+ @override
Token get endToken => semicolon;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -4164,10 +4300,13 @@ class ExportDirective extends NamespaceDirective {
*/
ExportDirective(Comment comment, List<Annotation> metadata, Token keyword, StringLiteral libraryUri, List<Combinator> combinators, Token semicolon) : super(comment, metadata, keyword, libraryUri, combinators, semicolon);
+ @override
accept(AstVisitor visitor) => visitor.visitExportDirective(this);
+ @override
ExportElement get element => super.element as ExportElement;
+ @override
LibraryElement get uriElement {
ExportElement exportElement = element;
if (exportElement != null) {
@@ -4176,6 +4315,7 @@ class ExportDirective extends NamespaceDirective {
return null;
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
combinators.accept(visitor);
@@ -4376,10 +4516,13 @@ class ExpressionFunctionBody extends FunctionBody {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitExpressionFunctionBody(this);
+ @override
Token get beginToken => functionDefinition;
+ @override
Token get endToken {
if (semicolon != null) {
return semicolon;
@@ -4403,6 +4546,7 @@ class ExpressionFunctionBody extends FunctionBody {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -4438,10 +4582,13 @@ class ExpressionStatement extends Statement {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitExpressionStatement(this);
+ @override
Token get beginToken => _expression.beginToken;
+ @override
Token get endToken {
if (semicolon != null) {
return semicolon;
@@ -4456,6 +4603,7 @@ class ExpressionStatement extends Statement {
*/
Expression get expression => _expression;
+ @override
bool get isSynthetic => _expression.isSynthetic && semicolon.isSynthetic;
/**
@@ -4467,6 +4615,7 @@ class ExpressionStatement extends Statement {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -4502,10 +4651,13 @@ class ExtendsClause extends AstNode {
this._superclass = becomeParentOf(superclass);
}
+ @override
accept(AstVisitor visitor) => visitor.visitExtendsClause(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => _superclass.endToken;
/**
@@ -4524,6 +4676,7 @@ class ExtendsClause extends AstNode {
_superclass = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_superclass, visitor);
}
@@ -4567,10 +4720,13 @@ class FieldDeclaration extends ClassMember {
this._fieldList = becomeParentOf(fieldList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFieldDeclaration(this);
+ @override
Element get element => null;
+ @override
Token get endToken => semicolon;
/**
@@ -4596,11 +4752,13 @@ class FieldDeclaration extends ClassMember {
fieldList = becomeParentOf(fieldList);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_fieldList, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (staticKeyword != null) {
return staticKeyword;
@@ -4664,8 +4822,10 @@ class FieldFormalParameter extends NormalFormalParameter {
this._parameters = becomeParentOf(parameters);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFieldFormalParameter(this);
+ @override
Token get beginToken {
if (keyword != null) {
return keyword;
@@ -4675,6 +4835,7 @@ class FieldFormalParameter extends NormalFormalParameter {
return thisToken;
}
+ @override
Token get endToken => identifier.endToken;
/**
@@ -4694,8 +4855,10 @@ class FieldFormalParameter extends NormalFormalParameter {
*/
TypeName get type => _type;
+ @override
bool get isConst => (keyword is KeywordToken) && identical((keyword as KeywordToken).keyword, Keyword.CONST);
+ @override
bool get isFinal => (keyword is KeywordToken) && identical((keyword as KeywordToken).keyword, Keyword.FINAL);
/**
@@ -4716,6 +4879,7 @@ class FieldFormalParameter extends NormalFormalParameter {
_type = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_type, visitor);
@@ -4807,8 +4971,10 @@ class ForEachStatement extends Statement {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitForEachStatement(this);
+ @override
Token get beginToken => forKeyword;
/**
@@ -4818,6 +4984,7 @@ class ForEachStatement extends Statement {
*/
Statement get body => _body;
+ @override
Token get endToken => _body.endToken;
/**
@@ -4878,6 +5045,7 @@ class ForEachStatement extends Statement {
_loopVariable = becomeParentOf(variable);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_loopVariable, visitor);
safelyVisitChild(_identifier, visitor);
@@ -4980,8 +5148,10 @@ class ForStatement extends Statement {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitForStatement(this);
+ @override
Token get beginToken => forKeyword;
/**
@@ -4999,6 +5169,7 @@ class ForStatement extends Statement {
*/
Expression get condition => _condition;
+ @override
Token get endToken => _body.endToken;
/**
@@ -5058,6 +5229,7 @@ class ForStatement extends Statement {
variableList = becomeParentOf(variableList);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_variableList, visitor);
safelyVisitChild(_initialization, visitor);
@@ -5199,10 +5371,13 @@ class FormalParameterList extends AstNode {
this._rightParenthesis = rightParenthesis;
}
+ @override
accept(AstVisitor visitor) => visitor.visitFormalParameterList(this);
+ @override
Token get beginToken => _leftParenthesis;
+ @override
Token get endToken => _rightParenthesis;
/**
@@ -5297,6 +5472,7 @@ class FormalParameterList extends AstNode {
_rightParenthesis = parenthesis;
}
+ @override
void visitChildren(AstVisitor visitor) {
_parameters.accept(visitor);
}
@@ -5373,10 +5549,13 @@ class FunctionDeclaration extends CompilationUnitMember {
this._functionExpression = becomeParentOf(functionExpression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionDeclaration(this);
+ @override
ExecutableElement get element => _name != null ? (_name.staticElement as ExecutableElement) : null;
+ @override
Token get endToken => _functionExpression.endToken;
/**
@@ -5441,6 +5620,7 @@ class FunctionDeclaration extends CompilationUnitMember {
_returnType = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_returnType, visitor);
@@ -5448,6 +5628,7 @@ class FunctionDeclaration extends CompilationUnitMember {
safelyVisitChild(_functionExpression, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (externalKeyword != null) {
return externalKeyword;
@@ -5482,10 +5663,13 @@ class FunctionDeclarationStatement extends Statement {
this._functionDeclaration = becomeParentOf(functionDeclaration);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionDeclarationStatement(this);
+ @override
Token get beginToken => _functionDeclaration.beginToken;
+ @override
Token get endToken => _functionDeclaration.endToken;
/**
@@ -5504,6 +5688,7 @@ class FunctionDeclarationStatement extends Statement {
this._functionDeclaration = becomeParentOf(functionDeclaration);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_functionDeclaration, visitor);
}
@@ -5545,8 +5730,10 @@ class FunctionExpression extends Expression {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionExpression(this);
+ @override
Token get beginToken {
if (_parameters != null) {
return _parameters.beginToken;
@@ -5565,6 +5752,7 @@ class FunctionExpression extends Expression {
*/
FunctionBody get body => _body;
+ @override
Token get endToken {
if (_body != null) {
return _body.endToken;
@@ -5583,6 +5771,7 @@ class FunctionExpression extends Expression {
*/
FormalParameterList get parameters => _parameters;
+ @override
int get precedence => 16;
/**
@@ -5603,6 +5792,7 @@ class FunctionExpression extends Expression {
this._parameters = becomeParentOf(parameters);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_parameters, visitor);
safelyVisitChild(_body, visitor);
@@ -5655,6 +5845,7 @@ class FunctionExpressionInvocation extends Expression {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionExpressionInvocation(this);
/**
@@ -5664,6 +5855,7 @@ class FunctionExpressionInvocation extends Expression {
*/
ArgumentList get argumentList => _argumentList;
+ @override
Token get beginToken => _function.beginToken;
/**
@@ -5682,6 +5874,7 @@ class FunctionExpressionInvocation extends Expression {
return element;
}
+ @override
Token get endToken => _argumentList.endToken;
/**
@@ -5691,6 +5884,7 @@ class FunctionExpressionInvocation extends Expression {
*/
Expression get function => _function;
+ @override
int get precedence => 15;
/**
@@ -5731,6 +5925,7 @@ class FunctionExpressionInvocation extends Expression {
_propagatedElement = element;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_function, visitor);
safelyVisitChild(_argumentList, visitor);
@@ -5790,8 +5985,10 @@ class FunctionTypeAlias extends TypeAlias {
this._parameters = becomeParentOf(parameters);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionTypeAlias(this);
+ @override
FunctionTypeAliasElement get element => _name != null ? (_name.staticElement as FunctionTypeAliasElement) : null;
/**
@@ -5860,6 +6057,7 @@ class FunctionTypeAlias extends TypeAlias {
this._typeParameters = becomeParentOf(typeParameters);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_returnType, visitor);
@@ -5904,8 +6102,10 @@ class FunctionTypedFormalParameter extends NormalFormalParameter {
this._parameters = becomeParentOf(parameters);
}
+ @override
accept(AstVisitor visitor) => visitor.visitFunctionTypedFormalParameter(this);
+ @override
Token get beginToken {
if (_returnType != null) {
return _returnType.beginToken;
@@ -5913,6 +6113,7 @@ class FunctionTypedFormalParameter extends NormalFormalParameter {
return identifier.beginToken;
}
+ @override
Token get endToken => _parameters.endToken;
/**
@@ -5930,8 +6131,10 @@ class FunctionTypedFormalParameter extends NormalFormalParameter {
*/
TypeName get returnType => _returnType;
+ @override
bool get isConst => false;
+ @override
bool get isFinal => false;
/**
@@ -5952,6 +6155,7 @@ class FunctionTypedFormalParameter extends NormalFormalParameter {
this._returnType = becomeParentOf(returnType);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_returnType, visitor);
@@ -5986,8 +6190,10 @@ class HideCombinator extends Combinator {
this._hiddenNames.addAll(hiddenNames);
}
+ @override
accept(AstVisitor visitor) => visitor.visitHideCombinator(this);
+ @override
Token get endToken => _hiddenNames.endToken;
/**
@@ -5997,6 +6203,7 @@ class HideCombinator extends Combinator {
*/
NodeList<SimpleIdentifier> get hiddenNames => _hiddenNames;
+ @override
void visitChildren(AstVisitor visitor) {
_hiddenNames.accept(visitor);
}
@@ -6059,6 +6266,7 @@ abstract class Identifier extends Expression {
*/
Element get staticElement;
+ @override
bool get isAssignable => true;
}
@@ -6124,8 +6332,10 @@ class IfStatement extends Statement {
this._elseStatement = becomeParentOf(elseStatement);
}
+ @override
accept(AstVisitor visitor) => visitor.visitIfStatement(this);
+ @override
Token get beginToken => ifKeyword;
/**
@@ -6143,6 +6353,7 @@ class IfStatement extends Statement {
*/
Statement get elseStatement => _elseStatement;
+ @override
Token get endToken {
if (_elseStatement != null) {
return _elseStatement.endToken;
@@ -6187,6 +6398,7 @@ class IfStatement extends Statement {
_thenStatement = becomeParentOf(statement);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_condition, visitor);
safelyVisitChild(_thenStatement, visitor);
@@ -6225,10 +6437,13 @@ class ImplementsClause extends AstNode {
this._interfaces.addAll(interfaces);
}
+ @override
accept(AstVisitor visitor) => visitor.visitImplementsClause(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => _interfaces.endToken;
/**
@@ -6238,6 +6453,7 @@ class ImplementsClause extends AstNode {
*/
NodeList<TypeName> get interfaces => _interfaces;
+ @override
void visitChildren(AstVisitor visitor) {
_interfaces.accept(visitor);
}
@@ -6370,8 +6586,10 @@ class ImportDirective extends NamespaceDirective {
this._prefix = becomeParentOf(prefix);
}
+ @override
accept(AstVisitor visitor) => visitor.visitImportDirective(this);
+ @override
ImportElement get element => super.element as ImportElement;
/**
@@ -6382,6 +6600,7 @@ class ImportDirective extends NamespaceDirective {
*/
SimpleIdentifier get prefix => _prefix;
+ @override
LibraryElement get uriElement {
ImportElement element = this.element;
if (element == null) {
@@ -6399,6 +6618,7 @@ class ImportDirective extends NamespaceDirective {
this._prefix = becomeParentOf(prefix);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_prefix, visitor);
@@ -6492,8 +6712,10 @@ class IndexExpression extends Expression {
this._rightBracket = rightBracket;
}
+ @override
accept(AstVisitor visitor) => visitor.visitIndexExpression(this);
+ @override
Token get beginToken {
if (_target != null) {
return _target.beginToken;
@@ -6517,6 +6739,7 @@ class IndexExpression extends Expression {
return element;
}
+ @override
Token get endToken => _rightBracket;
/**
@@ -6533,6 +6756,7 @@ class IndexExpression extends Expression {
*/
Token get leftBracket => _leftBracket;
+ @override
int get precedence => 15;
/**
@@ -6636,6 +6860,7 @@ class IndexExpression extends Expression {
return false;
}
+ @override
bool get isAssignable => true;
/**
@@ -6703,6 +6928,7 @@ class IndexExpression extends Expression {
_target = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_target, visitor);
safelyVisitChild(_index, visitor);
@@ -6794,6 +7020,7 @@ class InstanceCreationExpression extends Expression {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitInstanceCreationExpression(this);
/**
@@ -6803,10 +7030,13 @@ class InstanceCreationExpression extends Expression {
*/
ArgumentList get argumentList => _argumentList;
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => _argumentList.endToken;
+ @override
int get precedence => 15;
/**
@@ -6825,6 +7055,7 @@ class InstanceCreationExpression extends Expression {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(constructorName, visitor);
safelyVisitChild(_argumentList, visitor);
@@ -6866,12 +7097,16 @@ class IntegerLiteral extends Literal {
*/
IntegerLiteral(this.literal, this.value);
+ @override
accept(AstVisitor visitor) => visitor.visitIntegerLiteral(this);
+ @override
Token get beginToken => literal;
+ @override
Token get endToken => literal;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -6927,10 +7162,13 @@ class InterpolationExpression extends InterpolationElement {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitInterpolationExpression(this);
+ @override
Token get beginToken => leftBracket;
+ @override
Token get endToken {
if (rightBracket != null) {
return rightBracket;
@@ -6955,6 +7193,7 @@ class InterpolationExpression extends InterpolationElement {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -6991,8 +7230,10 @@ class InterpolationString extends InterpolationElement {
this._value = value;
}
+ @override
accept(AstVisitor visitor) => visitor.visitInterpolationString(this);
+ @override
Token get beginToken => _contents;
/**
@@ -7002,6 +7243,7 @@ class InterpolationString extends InterpolationElement {
*/
Token get contents => _contents;
+ @override
Token get endToken => _contents;
/**
@@ -7029,6 +7271,7 @@ class InterpolationString extends InterpolationElement {
_value = string;
}
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -7075,10 +7318,13 @@ class IsExpression extends Expression {
this._type = becomeParentOf(type);
}
+ @override
accept(AstVisitor visitor) => visitor.visitIsExpression(this);
+ @override
Token get beginToken => _expression.beginToken;
+ @override
Token get endToken => _type.endToken;
/**
@@ -7088,6 +7334,7 @@ class IsExpression extends Expression {
*/
Expression get expression => _expression;
+ @override
int get precedence => 7;
/**
@@ -7116,6 +7363,7 @@ class IsExpression extends Expression {
this._type = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
safelyVisitChild(_type, visitor);
@@ -7151,10 +7399,13 @@ class Label extends AstNode {
this._label = becomeParentOf(label);
}
+ @override
accept(AstVisitor visitor) => visitor.visitLabel(this);
+ @override
Token get beginToken => _label.beginToken;
+ @override
Token get endToken => colon;
/**
@@ -7173,6 +7424,7 @@ class Label extends AstNode {
this._label = becomeParentOf(label);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_label, visitor);
}
@@ -7210,8 +7462,10 @@ class LabeledStatement extends Statement {
this._statement = becomeParentOf(statement);
}
+ @override
accept(AstVisitor visitor) => visitor.visitLabeledStatement(this);
+ @override
Token get beginToken {
if (!_labels.isEmpty) {
return _labels.beginToken;
@@ -7219,6 +7473,7 @@ class LabeledStatement extends Statement {
return _statement.beginToken;
}
+ @override
Token get endToken => _statement.endToken;
/**
@@ -7244,6 +7499,7 @@ class LabeledStatement extends Statement {
this._statement = becomeParentOf(statement);
}
+ @override
void visitChildren(AstVisitor visitor) {
_labels.accept(visitor);
safelyVisitChild(_statement, visitor);
@@ -7287,10 +7543,13 @@ class LibraryDirective extends Directive {
this._name = becomeParentOf(name);
}
+ @override
accept(AstVisitor visitor) => visitor.visitLibraryDirective(this);
+ @override
Token get endToken => semicolon;
+ @override
Token get keyword => libraryToken;
/**
@@ -7309,11 +7568,13 @@ class LibraryDirective extends Directive {
this._name = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_name, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata => libraryToken;
}
@@ -7341,10 +7602,13 @@ class LibraryIdentifier extends Identifier {
this._components.addAll(components);
}
+ @override
accept(AstVisitor visitor) => visitor.visitLibraryIdentifier(this);
+ @override
Token get beginToken => _components.beginToken;
+ @override
Element get bestElement => staticElement;
/**
@@ -7354,8 +7618,10 @@ class LibraryIdentifier extends Identifier {
*/
NodeList<SimpleIdentifier> get components => _components;
+ @override
Token get endToken => _components.endToken;
+ @override
String get name {
JavaStringBuilder builder = new JavaStringBuilder();
bool needsPeriod = false;
@@ -7370,12 +7636,16 @@ class LibraryIdentifier extends Identifier {
return builder.toString();
}
+ @override
int get precedence => 15;
+ @override
Element get propagatedElement => null;
+ @override
Element get staticElement => null;
+ @override
void visitChildren(AstVisitor visitor) {
_components.accept(visitor);
}
@@ -7422,8 +7692,10 @@ class ListLiteral extends TypedLiteral {
this._rightBracket = rightBracket;
}
+ @override
accept(AstVisitor visitor) => visitor.visitListLiteral(this);
+ @override
Token get beginToken {
Token token = constKeyword;
if (token != null) {
@@ -7443,6 +7715,7 @@ class ListLiteral extends TypedLiteral {
*/
NodeList<Expression> get elements => _elements;
+ @override
Token get endToken => _rightBracket;
/**
@@ -7477,6 +7750,7 @@ class ListLiteral extends TypedLiteral {
_rightBracket = bracket;
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
_elements.accept(visitor);
@@ -7499,6 +7773,7 @@ class ListLiteral extends TypedLiteral {
* </pre>
*/
abstract class Literal extends Expression {
+ @override
int get precedence => 16;
}
@@ -7543,8 +7818,10 @@ class MapLiteral extends TypedLiteral {
this._rightBracket = rightBracket;
}
+ @override
accept(AstVisitor visitor) => visitor.visitMapLiteral(this);
+ @override
Token get beginToken {
Token token = constKeyword;
if (token != null) {
@@ -7557,6 +7834,7 @@ class MapLiteral extends TypedLiteral {
return _leftBracket;
}
+ @override
Token get endToken => _rightBracket;
/**
@@ -7598,6 +7876,7 @@ class MapLiteral extends TypedLiteral {
_rightBracket = bracket;
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
_entries.accept(visitor);
@@ -7641,10 +7920,13 @@ class MapLiteralEntry extends AstNode {
this._value = becomeParentOf(value);
}
+ @override
accept(AstVisitor visitor) => visitor.visitMapLiteralEntry(this);
+ @override
Token get beginToken => _key.beginToken;
+ @override
Token get endToken => _value.endToken;
/**
@@ -7681,6 +7963,7 @@ class MapLiteralEntry extends AstNode {
_value = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_key, visitor);
safelyVisitChild(_value, visitor);
@@ -7769,6 +8052,7 @@ class MethodDeclaration extends ClassMember {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitMethodDeclaration(this);
/**
@@ -7786,8 +8070,10 @@ class MethodDeclaration extends ClassMember {
*
* @return the element associated with this method
*/
+ @override
ExecutableElement get element => _name != null ? (_name.staticElement as ExecutableElement) : null;
+ @override
Token get endToken => _body.endToken;
/**
@@ -7883,6 +8169,7 @@ class MethodDeclaration extends ClassMember {
_returnType = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_returnType, visitor);
@@ -7891,6 +8178,7 @@ class MethodDeclaration extends ClassMember {
safelyVisitChild(_body, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (modifierKeyword != null) {
return modifierKeyword;
@@ -7954,6 +8242,7 @@ class MethodInvocation extends Expression {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitMethodInvocation(this);
/**
@@ -7963,6 +8252,7 @@ class MethodInvocation extends Expression {
*/
ArgumentList get argumentList => _argumentList;
+ @override
Token get beginToken {
if (_target != null) {
return _target.beginToken;
@@ -7972,6 +8262,7 @@ class MethodInvocation extends Expression {
return _methodName.beginToken;
}
+ @override
Token get endToken => _argumentList.endToken;
/**
@@ -7981,6 +8272,7 @@ class MethodInvocation extends Expression {
*/
SimpleIdentifier get methodName => _methodName;
+ @override
int get precedence => 15;
/**
@@ -8052,6 +8344,7 @@ class MethodInvocation extends Expression {
_target = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_target, visitor);
safelyVisitChild(_methodName, visitor);
@@ -8090,8 +8383,10 @@ class NamedExpression extends Expression {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitNamedExpression(this);
+ @override
Token get beginToken => _name.beginToken;
/**
@@ -8109,6 +8404,7 @@ class NamedExpression extends Expression {
return null;
}
+ @override
Token get endToken => _expression.endToken;
/**
@@ -8125,6 +8421,7 @@ class NamedExpression extends Expression {
*/
Label get name => _name;
+ @override
int get precedence => 0;
/**
@@ -8145,6 +8442,7 @@ class NamedExpression extends Expression {
_name = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_name, visitor);
safelyVisitChild(_expression, visitor);
@@ -8199,10 +8497,13 @@ abstract class NamespaceDirective extends UriBasedDirective {
*/
NodeList<Combinator> get combinators => _combinators;
+ @override
Token get endToken => semicolon;
+ @override
LibraryElement get uriElement;
+ @override
Token get firstTokenAfterCommentAndMetadata => keyword;
}
@@ -8234,12 +8535,16 @@ class NativeClause extends AstNode {
*/
NativeClause(this.keyword, this.name);
+ @override
accept(AstVisitor visitor) => visitor.visitNativeClause(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => name.endToken;
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(name, visitor);
}
@@ -8282,10 +8587,13 @@ class NativeFunctionBody extends FunctionBody {
this._stringLiteral = becomeParentOf(stringLiteral);
}
+ @override
accept(AstVisitor visitor) => visitor.visitNativeFunctionBody(this);
+ @override
Token get beginToken => nativeToken;
+ @override
Token get endToken => semicolon;
/**
@@ -8295,6 +8603,7 @@ class NativeFunctionBody extends FunctionBody {
*/
StringLiteral get stringLiteral => _stringLiteral;
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_stringLiteral, visitor);
}
@@ -8350,8 +8659,10 @@ abstract class NormalFormalParameter extends FormalParameter {
*/
Comment get documentationComment => _comment;
+ @override
SimpleIdentifier get identifier => _identifier;
+ @override
ParameterKind get kind {
AstNode parent = this.parent;
if (parent is DefaultFormalParameter) {
@@ -8385,6 +8696,7 @@ abstract class NormalFormalParameter extends FormalParameter {
this._identifier = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
//
// Note that subclasses are responsible for visiting the identifier because they often need to
@@ -8453,12 +8765,16 @@ class NullLiteral extends Literal {
this.literal = token;
}
+ @override
accept(AstVisitor visitor) => visitor.visitNullLiteral(this);
+ @override
Token get beginToken => literal;
+ @override
Token get endToken => literal;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -8500,10 +8816,13 @@ class ParenthesizedExpression extends Expression {
this._rightParenthesis = rightParenthesis;
}
+ @override
accept(AstVisitor visitor) => visitor.visitParenthesizedExpression(this);
+ @override
Token get beginToken => _leftParenthesis;
+ @override
Token get endToken => _rightParenthesis;
/**
@@ -8520,6 +8839,7 @@ class ParenthesizedExpression extends Expression {
*/
Token get leftParenthesis => _leftParenthesis;
+ @override
int get precedence => 15;
/**
@@ -8556,6 +8876,7 @@ class ParenthesizedExpression extends Expression {
_rightParenthesis = parenthesis;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -8591,14 +8912,19 @@ class PartDirective extends UriBasedDirective {
*/
PartDirective(Comment comment, List<Annotation> metadata, this.partToken, StringLiteral partUri, this.semicolon) : super(comment, metadata, partUri);
+ @override
accept(AstVisitor visitor) => visitor.visitPartDirective(this);
+ @override
Token get endToken => semicolon;
+ @override
Token get keyword => partToken;
+ @override
CompilationUnitElement get uriElement => element as CompilationUnitElement;
+ @override
Token get firstTokenAfterCommentAndMetadata => partToken;
}
@@ -8645,10 +8971,13 @@ class PartOfDirective extends Directive {
this._libraryName = becomeParentOf(libraryName);
}
+ @override
accept(AstVisitor visitor) => visitor.visitPartOfDirective(this);
+ @override
Token get endToken => semicolon;
+ @override
Token get keyword => partToken;
/**
@@ -8667,11 +8996,13 @@ class PartOfDirective extends Directive {
this._libraryName = becomeParentOf(libraryName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_libraryName, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata => partToken;
}
@@ -8718,8 +9049,10 @@ class PostfixExpression extends Expression {
this._operand = becomeParentOf(operand);
}
+ @override
accept(AstVisitor visitor) => visitor.visitPostfixExpression(this);
+ @override
Token get beginToken => _operand.beginToken;
/**
@@ -8738,6 +9071,7 @@ class PostfixExpression extends Expression {
return element;
}
+ @override
Token get endToken => operator;
/**
@@ -8747,6 +9081,7 @@ class PostfixExpression extends Expression {
*/
Expression get operand => _operand;
+ @override
int get precedence => 15;
/**
@@ -8798,6 +9133,7 @@ class PostfixExpression extends Expression {
_staticElement = element;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_operand, visitor);
}
@@ -8888,8 +9224,10 @@ class PrefixExpression extends Expression {
this._operand = becomeParentOf(operand);
}
+ @override
accept(AstVisitor visitor) => visitor.visitPrefixExpression(this);
+ @override
Token get beginToken => operator;
/**
@@ -8908,6 +9246,7 @@ class PrefixExpression extends Expression {
return element;
}
+ @override
Token get endToken => _operand.endToken;
/**
@@ -8917,6 +9256,7 @@ class PrefixExpression extends Expression {
*/
Expression get operand => _operand;
+ @override
int get precedence => 14;
/**
@@ -8968,6 +9308,7 @@ class PrefixExpression extends Expression {
_staticElement = element;
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_operand, visitor);
}
@@ -9053,10 +9394,13 @@ class PrefixedIdentifier extends Identifier {
this._identifier = becomeParentOf(identifier);
}
+ @override
accept(AstVisitor visitor) => visitor.visitPrefixedIdentifier(this);
+ @override
Token get beginToken => _prefix.beginToken;
+ @override
Element get bestElement {
if (_identifier == null) {
return null;
@@ -9064,6 +9408,7 @@ class PrefixedIdentifier extends Identifier {
return _identifier.bestElement;
}
+ @override
Token get endToken => _identifier.endToken;
/**
@@ -9073,8 +9418,10 @@ class PrefixedIdentifier extends Identifier {
*/
SimpleIdentifier get identifier => _identifier;
+ @override
String get name => "${_prefix.name}.${_identifier.name}";
+ @override
int get precedence => 15;
/**
@@ -9084,6 +9431,7 @@ class PrefixedIdentifier extends Identifier {
*/
SimpleIdentifier get prefix => _prefix;
+ @override
Element get propagatedElement {
if (_identifier == null) {
return null;
@@ -9091,6 +9439,7 @@ class PrefixedIdentifier extends Identifier {
return _identifier.propagatedElement;
}
+ @override
Element get staticElement {
if (_identifier == null) {
return null;
@@ -9117,6 +9466,7 @@ class PrefixedIdentifier extends Identifier {
_prefix = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_prefix, visitor);
safelyVisitChild(_identifier, visitor);
@@ -9163,8 +9513,10 @@ class PropertyAccess extends Expression {
this._propertyName = becomeParentOf(propertyName);
}
+ @override
accept(AstVisitor visitor) => visitor.visitPropertyAccess(this);
+ @override
Token get beginToken {
if (_target != null) {
return _target.beginToken;
@@ -9172,8 +9524,10 @@ class PropertyAccess extends Expression {
return operator;
}
+ @override
Token get endToken => _propertyName.endToken;
+ @override
int get precedence => 15;
/**
@@ -9215,6 +9569,7 @@ class PropertyAccess extends Expression {
*/
Expression get target => _target;
+ @override
bool get isAssignable => true;
/**
@@ -9245,6 +9600,7 @@ class PropertyAccess extends Expression {
_target = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_target, visitor);
safelyVisitChild(_propertyName, visitor);
@@ -9303,6 +9659,7 @@ class RedirectingConstructorInvocation extends ConstructorInitializer {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitRedirectingConstructorInvocation(this);
/**
@@ -9312,6 +9669,7 @@ class RedirectingConstructorInvocation extends ConstructorInitializer {
*/
ArgumentList get argumentList => _argumentList;
+ @override
Token get beginToken => keyword;
/**
@@ -9322,6 +9680,7 @@ class RedirectingConstructorInvocation extends ConstructorInitializer {
*/
SimpleIdentifier get constructorName => _constructorName;
+ @override
Token get endToken => _argumentList.endToken;
/**
@@ -9342,6 +9701,7 @@ class RedirectingConstructorInvocation extends ConstructorInitializer {
_constructorName = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_constructorName, visitor);
safelyVisitChild(_argumentList, visitor);
@@ -9369,14 +9729,19 @@ class RethrowExpression extends Expression {
*/
RethrowExpression(this.keyword);
+ @override
accept(AstVisitor visitor) => visitor.visitRethrowExpression(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => keyword;
+ @override
int get precedence => 0;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -9417,10 +9782,13 @@ class ReturnStatement extends Statement {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitReturnStatement(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => semicolon;
/**
@@ -9440,6 +9808,7 @@ class ReturnStatement extends Statement {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -9467,12 +9836,16 @@ class ScriptTag extends AstNode {
*/
ScriptTag(this.scriptTag);
+ @override
accept(AstVisitor visitor) => visitor.visitScriptTag(this);
+ @override
Token get beginToken => scriptTag;
+ @override
Token get endToken => scriptTag;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -9503,8 +9876,10 @@ class ShowCombinator extends Combinator {
this._shownNames.addAll(shownNames);
}
+ @override
accept(AstVisitor visitor) => visitor.visitShowCombinator(this);
+ @override
Token get endToken => _shownNames.endToken;
/**
@@ -9514,6 +9889,7 @@ class ShowCombinator extends Combinator {
*/
NodeList<SimpleIdentifier> get shownNames => _shownNames;
+ @override
void visitChildren(AstVisitor visitor) {
_shownNames.accept(visitor);
}
@@ -9553,8 +9929,10 @@ class SimpleFormalParameter extends NormalFormalParameter {
this._type = becomeParentOf(type);
}
+ @override
accept(AstVisitor visitor) => visitor.visitSimpleFormalParameter(this);
+ @override
Token get beginToken {
if (keyword != null) {
return keyword;
@@ -9564,6 +9942,7 @@ class SimpleFormalParameter extends NormalFormalParameter {
return identifier.beginToken;
}
+ @override
Token get endToken => identifier.endToken;
/**
@@ -9574,8 +9953,10 @@ class SimpleFormalParameter extends NormalFormalParameter {
*/
TypeName get type => _type;
+ @override
bool get isConst => (keyword is KeywordToken) && identical((keyword as KeywordToken).keyword, Keyword.CONST);
+ @override
bool get isFinal => (keyword is KeywordToken) && identical((keyword as KeywordToken).keyword, Keyword.FINAL);
/**
@@ -9587,6 +9968,7 @@ class SimpleFormalParameter extends NormalFormalParameter {
_type = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_type, visitor);
@@ -9639,10 +10021,13 @@ class SimpleIdentifier extends Identifier {
*/
SimpleIdentifier(this.token);
+ @override
accept(AstVisitor visitor) => visitor.visitSimpleIdentifier(this);
+ @override
Token get beginToken => token;
+ @override
Element get bestElement {
if (_propagatedElement == null) {
return _staticElement;
@@ -9650,14 +10035,19 @@ class SimpleIdentifier extends Identifier {
return _propagatedElement;
}
+ @override
Token get endToken => token;
+ @override
String get name => token.lexeme;
+ @override
int get precedence => 16;
+ @override
Element get propagatedElement => _propagatedElement;
+ @override
Element get staticElement => _staticElement;
/**
@@ -9778,6 +10168,7 @@ class SimpleIdentifier extends Identifier {
return false;
}
+ @override
bool get isSynthetic => token.isSynthetic;
/**
@@ -9800,6 +10191,7 @@ class SimpleIdentifier extends Identifier {
_staticElement = _validateElement(element);
}
+ @override
void visitChildren(AstVisitor visitor) {
}
@@ -9906,10 +10298,13 @@ class SimpleStringLiteral extends StringLiteral {
this._value = StringUtilities.intern(value);
}
+ @override
accept(AstVisitor visitor) => visitor.visitSimpleStringLiteral(this);
+ @override
Token get beginToken => literal;
+ @override
Token get endToken => literal;
/**
@@ -9964,6 +10359,7 @@ class SimpleStringLiteral extends StringLiteral {
*/
bool get isRaw => literal.lexeme.codeUnitAt(0) == 0x72;
+ @override
bool get isSynthetic => literal.isSynthetic;
/**
@@ -9984,9 +10380,11 @@ class SimpleStringLiteral extends StringLiteral {
_value = StringUtilities.intern(_value);
}
+ @override
void visitChildren(AstVisitor visitor) {
}
+ @override
void appendStringValue(JavaStringBuilder builder) {
builder.append(value);
}
@@ -10042,8 +10440,10 @@ class StringInterpolation extends StringLiteral {
this._elements.addAll(elements);
}
+ @override
accept(AstVisitor visitor) => visitor.visitStringInterpolation(this);
+ @override
Token get beginToken => _elements.beginToken;
/**
@@ -10053,12 +10453,15 @@ class StringInterpolation extends StringLiteral {
*/
NodeList<InterpolationElement> get elements => _elements;
+ @override
Token get endToken => _elements.endToken;
+ @override
void visitChildren(AstVisitor visitor) {
_elements.accept(visitor);
}
+ @override
void appendStringValue(JavaStringBuilder builder) {
throw new IllegalArgumentException();
}
@@ -10153,6 +10556,7 @@ class SuperConstructorInvocation extends ConstructorInitializer {
this._argumentList = becomeParentOf(argumentList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitSuperConstructorInvocation(this);
/**
@@ -10162,6 +10566,7 @@ class SuperConstructorInvocation extends ConstructorInitializer {
*/
ArgumentList get argumentList => _argumentList;
+ @override
Token get beginToken => keyword;
/**
@@ -10172,6 +10577,7 @@ class SuperConstructorInvocation extends ConstructorInitializer {
*/
SimpleIdentifier get constructorName => _constructorName;
+ @override
Token get endToken => _argumentList.endToken;
/**
@@ -10192,6 +10598,7 @@ class SuperConstructorInvocation extends ConstructorInitializer {
_constructorName = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_constructorName, visitor);
safelyVisitChild(_argumentList, visitor);
@@ -10219,14 +10626,19 @@ class SuperExpression extends Expression {
*/
SuperExpression(this.keyword);
+ @override
accept(AstVisitor visitor) => visitor.visitSuperExpression(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => keyword;
+ @override
int get precedence => 16;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -10258,6 +10670,7 @@ class SwitchCase extends SwitchMember {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitSwitchCase(this);
/**
@@ -10276,6 +10689,7 @@ class SwitchCase extends SwitchMember {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
labels.accept(visitor);
safelyVisitChild(_expression, visitor);
@@ -10302,8 +10716,10 @@ class SwitchDefault extends SwitchMember {
*/
SwitchDefault(List<Label> labels, Token keyword, Token colon, List<Statement> statements) : super(labels, keyword, colon, statements);
+ @override
accept(AstVisitor visitor) => visitor.visitSwitchDefault(this);
+ @override
void visitChildren(AstVisitor visitor) {
labels.accept(visitor);
statements.accept(visitor);
@@ -10356,6 +10772,7 @@ abstract class SwitchMember extends AstNode {
this._statements.addAll(statements);
}
+ @override
Token get beginToken {
if (!_labels.isEmpty) {
return _labels.beginToken;
@@ -10363,6 +10780,7 @@ abstract class SwitchMember extends AstNode {
return keyword;
}
+ @override
Token get endToken {
if (!_statements.isEmpty) {
return _statements.endToken;
@@ -10446,10 +10864,13 @@ class SwitchStatement extends Statement {
this._members.addAll(members);
}
+ @override
accept(AstVisitor visitor) => visitor.visitSwitchStatement(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => rightBracket;
/**
@@ -10476,6 +10897,7 @@ class SwitchStatement extends Statement {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
_members.accept(visitor);
@@ -10509,12 +10931,16 @@ class SymbolLiteral extends Literal {
*/
SymbolLiteral(this.poundSign, this.components);
+ @override
accept(AstVisitor visitor) => visitor.visitSymbolLiteral(this);
+ @override
Token get beginToken => poundSign;
+ @override
Token get endToken => components[components.length - 1];
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -10540,14 +10966,19 @@ class ThisExpression extends Expression {
*/
ThisExpression(this.keyword);
+ @override
accept(AstVisitor visitor) => visitor.visitThisExpression(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken => keyword;
+ @override
int get precedence => 16;
+ @override
void visitChildren(AstVisitor visitor) {
}
}
@@ -10581,10 +11012,13 @@ class ThrowExpression extends Expression {
this._expression = becomeParentOf(expression);
}
+ @override
accept(AstVisitor visitor) => visitor.visitThrowExpression(this);
+ @override
Token get beginToken => keyword;
+ @override
Token get endToken {
if (_expression != null) {
return _expression.endToken;
@@ -10599,6 +11033,7 @@ class ThrowExpression extends Expression {
*/
Expression get expression => _expression;
+ @override
int get precedence => 0;
/**
@@ -10610,6 +11045,7 @@ class ThrowExpression extends Expression {
this._expression = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_expression, visitor);
}
@@ -10648,10 +11084,13 @@ class TopLevelVariableDeclaration extends CompilationUnitMember {
this._variableList = becomeParentOf(variableList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTopLevelVariableDeclaration(this);
+ @override
Element get element => null;
+ @override
Token get endToken => semicolon;
/**
@@ -10670,11 +11109,13 @@ class TopLevelVariableDeclaration extends CompilationUnitMember {
variableList = becomeParentOf(variableList);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_variableList, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata => _variableList.beginToken;
}
@@ -10733,8 +11174,10 @@ class TryStatement extends Statement {
this._finallyBlock = becomeParentOf(finallyBlock);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTryStatement(this);
+ @override
Token get beginToken => tryKeyword;
/**
@@ -10751,6 +11194,7 @@ class TryStatement extends Statement {
*/
NodeList<CatchClause> get catchClauses => _catchClauses;
+ @override
Token get endToken {
if (_finallyBlock != null) {
return _finallyBlock.endToken;
@@ -10788,6 +11232,7 @@ class TryStatement extends Statement {
_finallyBlock = becomeParentOf(block);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_body, visitor);
_catchClauses.accept(visitor);
@@ -10828,8 +11273,10 @@ abstract class TypeAlias extends CompilationUnitMember {
*/
TypeAlias(Comment comment, List<Annotation> metadata, this.keyword, this.semicolon) : super(comment, metadata);
+ @override
Token get endToken => semicolon;
+ @override
Token get firstTokenAfterCommentAndMetadata => keyword;
}
@@ -10869,6 +11316,7 @@ class TypeArgumentList extends AstNode {
this._arguments.addAll(arguments);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTypeArgumentList(this);
/**
@@ -10878,10 +11326,13 @@ class TypeArgumentList extends AstNode {
*/
NodeList<TypeName> get arguments => _arguments;
+ @override
Token get beginToken => leftBracket;
+ @override
Token get endToken => rightBracket;
+ @override
void visitChildren(AstVisitor visitor) {
_arguments.accept(visitor);
}
@@ -10924,10 +11375,13 @@ class TypeName extends AstNode {
this._typeArguments = becomeParentOf(typeArguments);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTypeName(this);
+ @override
Token get beginToken => _name.beginToken;
+ @override
Token get endToken {
if (_typeArguments != null) {
return _typeArguments.endToken;
@@ -10950,6 +11404,7 @@ class TypeName extends AstNode {
*/
TypeArgumentList get typeArguments => _typeArguments;
+ @override
bool get isSynthetic => _name.isSynthetic && _typeArguments == null;
/**
@@ -10970,6 +11425,7 @@ class TypeName extends AstNode {
this._typeArguments = becomeParentOf(typeArguments);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_name, visitor);
safelyVisitChild(_typeArguments, visitor);
@@ -11016,6 +11472,7 @@ class TypeParameter extends Declaration {
this._bound = becomeParentOf(bound);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTypeParameter(this);
/**
@@ -11026,8 +11483,10 @@ class TypeParameter extends Declaration {
*/
TypeName get bound => _bound;
+ @override
TypeParameterElement get element => _name != null ? (_name.staticElement as TypeParameterElement) : null;
+ @override
Token get endToken {
if (_bound == null) {
return _name.endToken;
@@ -11060,12 +11519,14 @@ class TypeParameter extends Declaration {
_name = becomeParentOf(identifier);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_name, visitor);
safelyVisitChild(_bound, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata => _name.beginToken;
}
@@ -11105,10 +11566,13 @@ class TypeParameterList extends AstNode {
this._typeParameters.addAll(typeParameters);
}
+ @override
accept(AstVisitor visitor) => visitor.visitTypeParameterList(this);
+ @override
Token get beginToken => leftBracket;
+ @override
Token get endToken => rightBracket;
/**
@@ -11118,6 +11582,7 @@ class TypeParameterList extends AstNode {
*/
NodeList<TypeParameter> get typeParameters => _typeParameters;
+ @override
void visitChildren(AstVisitor visitor) {
_typeParameters.accept(visitor);
}
@@ -11156,6 +11621,7 @@ abstract class TypedLiteral extends Literal {
this.typeArguments = becomeParentOf(typeArguments);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(typeArguments, visitor);
}
@@ -11214,6 +11680,7 @@ abstract class UriBasedDirective extends Directive {
this._uri = becomeParentOf(uri);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_uri, visitor);
@@ -11262,12 +11729,14 @@ class VariableDeclaration extends Declaration {
this._initializer = becomeParentOf(initializer);
}
+ @override
accept(AstVisitor visitor) => visitor.visitVariableDeclaration(this);
/**
* This overridden implementation of getDocumentationComment() looks in the grandparent node for
* dartdoc comments if no documentation is specifically available on the node.
*/
+ @override
Comment get documentationComment {
Comment comment = super.documentationComment;
if (comment == null) {
@@ -11281,8 +11750,10 @@ class VariableDeclaration extends Declaration {
return comment;
}
+ @override
VariableElement get element => _name != null ? (_name.staticElement as VariableElement) : null;
+ @override
Token get endToken {
if (_initializer != null) {
return _initializer.endToken;
@@ -11345,12 +11816,14 @@ class VariableDeclaration extends Declaration {
this._name = becomeParentOf(name);
}
+ @override
void visitChildren(AstVisitor visitor) {
super.visitChildren(visitor);
safelyVisitChild(_name, visitor);
safelyVisitChild(_initializer, visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata => _name.beginToken;
}
@@ -11401,8 +11874,10 @@ class VariableDeclarationList extends AnnotatedNode {
this._variables.addAll(variables);
}
+ @override
accept(AstVisitor visitor) => visitor.visitVariableDeclarationList(this);
+ @override
Token get endToken => _variables.endToken;
/**
@@ -11444,11 +11919,13 @@ class VariableDeclarationList extends AnnotatedNode {
_type = becomeParentOf(typeName);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_type, visitor);
_variables.accept(visitor);
}
+ @override
Token get firstTokenAfterCommentAndMetadata {
if (keyword != null) {
return keyword;
@@ -11489,10 +11966,13 @@ class VariableDeclarationStatement extends Statement {
this._variableList = becomeParentOf(variableList);
}
+ @override
accept(AstVisitor visitor) => visitor.visitVariableDeclarationStatement(this);
+ @override
Token get beginToken => _variableList.beginToken;
+ @override
Token get endToken => semicolon;
/**
@@ -11511,6 +11991,7 @@ class VariableDeclarationStatement extends Statement {
this._variableList = becomeParentOf(variableList);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_variableList, visitor);
}
@@ -11564,8 +12045,10 @@ class WhileStatement extends Statement {
this._body = becomeParentOf(body);
}
+ @override
accept(AstVisitor visitor) => visitor.visitWhileStatement(this);
+ @override
Token get beginToken => keyword;
/**
@@ -11582,6 +12065,7 @@ class WhileStatement extends Statement {
*/
Expression get condition => _condition;
+ @override
Token get endToken => _body.endToken;
/**
@@ -11603,6 +12087,7 @@ class WhileStatement extends Statement {
_condition = becomeParentOf(expression);
}
+ @override
void visitChildren(AstVisitor visitor) {
safelyVisitChild(_condition, visitor);
safelyVisitChild(_body, visitor);
@@ -11640,10 +12125,13 @@ class WithClause extends AstNode {
this._mixinTypes.addAll(mixinTypes);
}
+ @override
accept(AstVisitor visitor) => visitor.visitWithClause(this);
+ @override
Token get beginToken => _withKeyword;
+ @override
Token get endToken => _mixinTypes.endToken;
/**
@@ -11669,6 +12157,7 @@ class WithClause extends AstNode {
this._withKeyword = withKeyword;
}
+ @override
void visitChildren(AstVisitor visitor) {
_mixinTypes.accept(visitor);
}
@@ -11715,6 +12204,7 @@ class BreadthFirstVisitor<R> extends GeneralizingAstVisitor<R> {
}
}
+ @override
R visitNode(AstNode node) {
node.visitChildren(_childVisitor);
return null;
@@ -11730,6 +12220,7 @@ class GeneralizingAstVisitor_BreadthFirstVisitor extends GeneralizingAstVisitor<
GeneralizingAstVisitor_BreadthFirstVisitor(this.BreadthFirstVisitor_this) : super();
+ @override
Object visitNode(AstNode node) {
BreadthFirstVisitor_this._queue.add(node);
return null;
@@ -11780,6 +12271,7 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
*/
static Object NOT_A_CONSTANT = new Object();
+ @override
Object visitAdjacentStrings(AdjacentStrings node) {
JavaStringBuilder builder = new JavaStringBuilder();
for (StringLiteral string in node.strings) {
@@ -11792,6 +12284,7 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return builder.toString();
}
+ @override
Object visitBinaryExpression(BinaryExpression node) {
Object leftOperand = node.leftOperand.accept(this);
if (identical(leftOperand, NOT_A_CONSTANT)) {
@@ -11945,12 +12438,16 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return visitExpression(node);
}
+ @override
Object visitBooleanLiteral(BooleanLiteral node) => node.value ? true : false;
+ @override
Object visitDoubleLiteral(DoubleLiteral node) => node.value;
+ @override
Object visitIntegerLiteral(IntegerLiteral node) => node.value;
+ @override
Object visitInterpolationExpression(InterpolationExpression node) {
Object value = node.expression.accept(this);
if (value == null || value is bool || value is String || value is int || value is double) {
@@ -11959,8 +12456,10 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return NOT_A_CONSTANT;
}
+ @override
Object visitInterpolationString(InterpolationString node) => node.value;
+ @override
Object visitListLiteral(ListLiteral node) {
List<Object> list = new List<Object>();
for (Expression element in node.elements) {
@@ -11973,6 +12472,7 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return list;
}
+ @override
Object visitMapLiteral(MapLiteral node) {
Map<String, Object> map = new Map<String, Object>();
for (MapLiteralEntry entry in node.entries) {
@@ -11986,16 +12486,22 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return map;
}
+ @override
Object visitMethodInvocation(MethodInvocation node) => visitNode(node);
+ @override
Object visitNode(AstNode node) => NOT_A_CONSTANT;
+ @override
Object visitNullLiteral(NullLiteral node) => null;
+ @override
Object visitParenthesizedExpression(ParenthesizedExpression node) => node.expression.accept(this);
+ @override
Object visitPrefixedIdentifier(PrefixedIdentifier node) => _getConstantValue(null);
+ @override
Object visitPrefixExpression(PrefixExpression node) {
Object operand = node.operand.accept(this);
if (identical(operand, NOT_A_CONSTANT)) {
@@ -12027,12 +12533,16 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return NOT_A_CONSTANT;
}
+ @override
Object visitPropertyAccess(PropertyAccess node) => _getConstantValue(null);
+ @override
Object visitSimpleIdentifier(SimpleIdentifier node) => _getConstantValue(null);
+ @override
Object visitSimpleStringLiteral(SimpleStringLiteral node) => node.value;
+ @override
Object visitStringInterpolation(StringInterpolation node) {
JavaStringBuilder builder = new JavaStringBuilder();
for (InterpolationElement element in node.elements) {
@@ -12045,6 +12555,7 @@ class ConstantEvaluator extends GeneralizingAstVisitor<Object> {
return builder.toString();
}
+ @override
Object visitSymbolLiteral(SymbolLiteral node) {
// TODO(brianwilkerson) This isn't optimal because a Symbol is not a String.
JavaStringBuilder builder = new JavaStringBuilder();
@@ -12121,18 +12632,25 @@ class ElementLocator {
* Visitor that maps nodes to elements.
*/
class ElementLocator_ElementMapper extends GeneralizingAstVisitor<Element> {
+ @override
Element visitAssignmentExpression(AssignmentExpression node) => node.bestElement;
+ @override
Element visitBinaryExpression(BinaryExpression node) => node.bestElement;
+ @override
Element visitClassDeclaration(ClassDeclaration node) => node.element;
+ @override
Element visitCompilationUnit(CompilationUnit node) => node.element;
+ @override
Element visitConstructorDeclaration(ConstructorDeclaration node) => node.element;
+ @override
Element visitFunctionDeclaration(FunctionDeclaration node) => node.element;
+ @override
Element visitIdentifier(Identifier node) {
AstNode parent = node.parent;
// Type name in InstanceCreationExpression
@@ -12185,24 +12703,34 @@ class ElementLocator_ElementMapper extends GeneralizingAstVisitor<Element> {
return element;
}
+ @override
Element visitImportDirective(ImportDirective node) => node.element;
+ @override
Element visitIndexExpression(IndexExpression node) => node.bestElement;
+ @override
Element visitInstanceCreationExpression(InstanceCreationExpression node) => node.staticElement;
+ @override
Element visitLibraryDirective(LibraryDirective node) => node.element;
+ @override
Element visitMethodDeclaration(MethodDeclaration node) => node.element;
+ @override
Element visitMethodInvocation(MethodInvocation node) => node.methodName.bestElement;
+ @override
Element visitPostfixExpression(PostfixExpression node) => node.bestElement;
+ @override
Element visitPrefixedIdentifier(PrefixedIdentifier node) => node.bestElement;
+ @override
Element visitPrefixExpression(PrefixExpression node) => node.bestElement;
+ @override
Element visitStringLiteral(StringLiteral node) {
AstNode parent = node.parent;
if (parent is UriBasedDirective) {
@@ -12211,6 +12739,7 @@ class ElementLocator_ElementMapper extends GeneralizingAstVisitor<Element> {
return null;
}
+ @override
Element visitVariableDeclaration(VariableDeclaration node) => node.element;
}
@@ -12231,166 +12760,233 @@ class ElementLocator_ElementMapper extends GeneralizingAstVisitor<Element> {
* not be visited.
*/
class GeneralizingAstVisitor<R> implements AstVisitor<R> {
+ @override
R visitAdjacentStrings(AdjacentStrings node) => visitStringLiteral(node);
R visitAnnotatedNode(AnnotatedNode node) => visitNode(node);
+ @override
R visitAnnotation(Annotation node) => visitNode(node);
+ @override
R visitArgumentDefinitionTest(ArgumentDefinitionTest node) => visitExpression(node);
+ @override
R visitArgumentList(ArgumentList node) => visitNode(node);
+ @override
R visitAsExpression(AsExpression node) => visitExpression(node);
+ @override
R visitAssertStatement(AssertStatement node) => visitStatement(node);
+ @override
R visitAssignmentExpression(AssignmentExpression node) => visitExpression(node);
+ @override
R visitBinaryExpression(BinaryExpression node) => visitExpression(node);
+ @override
R visitBlock(Block node) => visitStatement(node);
+ @override
R visitBlockFunctionBody(BlockFunctionBody node) => visitFunctionBody(node);
+ @override
R visitBooleanLiteral(BooleanLiteral node) => visitLiteral(node);
+ @override
R visitBreakStatement(BreakStatement node) => visitStatement(node);
+ @override
R visitCascadeExpression(CascadeExpression node) => visitExpression(node);
+ @override
R visitCatchClause(CatchClause node) => visitNode(node);
+ @override
R visitClassDeclaration(ClassDeclaration node) => visitCompilationUnitMember(node);
R visitClassMember(ClassMember node) => visitDeclaration(node);
+ @override
R visitClassTypeAlias(ClassTypeAlias node) => visitTypeAlias(node);
R visitCombinator(Combinator node) => visitNode(node);
+ @override
R visitComment(Comment node) => visitNode(node);
+ @override
R visitCommentReference(CommentReference node) => visitNode(node);
+ @override
R visitCompilationUnit(CompilationUnit node) => visitNode(node);
R visitCompilationUnitMember(CompilationUnitMember node) => visitDeclaration(node);
+ @override
R visitConditionalExpression(ConditionalExpression node) => visitExpression(node);
+ @override
R visitConstructorDeclaration(ConstructorDeclaration node) => visitClassMember(node);
+ @override
R visitConstructorFieldInitializer(ConstructorFieldInitializer node) => visitConstructorInitializer(node);
R visitConstructorInitializer(ConstructorInitializer node) => visitNode(node);
+ @override
R visitConstructorName(ConstructorName node) => visitNode(node);
+ @override
R visitContinueStatement(ContinueStatement node) => visitStatement(node);
R visitDeclaration(Declaration node) => visitAnnotatedNode(node);
+ @override
R visitDeclaredIdentifier(DeclaredIdentifier node) => visitDeclaration(node);
+ @override
R visitDefaultFormalParameter(DefaultFormalParameter node) => visitFormalParameter(node);
R visitDirective(Directive node) => visitAnnotatedNode(node);
+ @override
R visitDoStatement(DoStatement node) => visitStatement(node);
+ @override
R visitDoubleLiteral(DoubleLiteral node) => visitLiteral(node);
+ @override
R visitEmptyFunctionBody(EmptyFunctionBody node) => visitFunctionBody(node);
+ @override
R visitEmptyStatement(EmptyStatement node) => visitStatement(node);
+ @override
R visitExportDirective(ExportDirective node) => visitNamespaceDirective(node);
R visitExpression(Expression node) => visitNode(node);
+ @override
R visitExpressionFunctionBody(ExpressionFunctionBody node) => visitFunctionBody(node);
+ @override
R visitExpressionStatement(ExpressionStatement node) => visitStatement(node);
+ @override
R visitExtendsClause(ExtendsClause node) => visitNode(node);
+ @override
R visitFieldDeclaration(FieldDeclaration node) => visitClassMember(node);
+ @override
R visitFieldFormalParameter(FieldFormalParameter node) => visitNormalFormalParameter(node);
+ @override
R visitForEachStatement(ForEachStatement node) => visitStatement(node);
R visitFormalParameter(FormalParameter node) => visitNode(node);
+ @override
R visitFormalParameterList(FormalParameterList node) => visitNode(node);
+ @override
R visitForStatement(ForStatement node) => visitStatement(node);
R visitFunctionBody(FunctionBody node) => visitNode(node);
+ @override
R visitFunctionDeclaration(FunctionDeclaration node) => visitCompilationUnitMember(node);
+ @override
R visitFunctionDeclarationStatement(FunctionDeclarationStatement node) => visitStatement(node);
+ @override
R visitFunctionExpression(FunctionExpression node) => visitExpression(node);
+ @override
R visitFunctionExpressionInvocation(FunctionExpressionInvocation node) => visitExpression(node);
+ @override
R visitFunctionTypeAlias(FunctionTypeAlias node) => visitTypeAlias(node);
+ @override
R visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) => visitNormalFormalParameter(node);
+ @override
R visitHideCombinator(HideCombinator node) => visitCombinator(node);
R visitIdentifier(Identifier node) => visitExpression(node);
+ @override
R visitIfStatement(IfStatement node) => visitStatement(node);
+ @override
R visitImplementsClause(ImplementsClause node) => visitNode(node);
+ @override
R visitImportDirective(ImportDirective node) => visitNamespaceDirective(node);
+ @override
R visitIndexExpression(IndexExpression node) => visitExpression(node);
+ @override
R visitInstanceCreationExpression(InstanceCreationExpression node) => visitExpression(node);
+ @override
R visitIntegerLiteral(IntegerLiteral node) => visitLiteral(node);
R visitInterpolationElement(InterpolationElement node) => visitNode(node);
+ @override
R visitInterpolationExpression(InterpolationExpression node) => visitInterpolationElement(node);
+ @override
R visitInterpolationString(InterpolationString node) => visitInterpolationElement(node);
+ @override
R visitIsExpression(IsExpression node) => visitExpression(node);
+ @override
R visitLabel(Label node) => visitNode(node);
+ @override
R visitLabeledStatement(LabeledStatement node) => visitStatement(node);
+ @override
R visitLibraryDirective(LibraryDirective node) => visitDirective(node);
+ @override
R visitLibraryIdentifier(LibraryIdentifier node) => visitIdentifier(node);
+ @override
R visitListLiteral(ListLiteral node) => visitTypedLiteral(node);
R visitLiteral(Literal node) => visitExpression(node);
+ @override
R visitMapLiteral(MapLiteral node) => visitTypedLiteral(node);
+ @override
R visitMapLiteralEntry(MapLiteralEntry node) => visitNode(node);
+ @override
R visitMethodDeclaration(MethodDeclaration node) => visitClassMember(node);
+ @override
R visitMethodInvocation(MethodInvocation node) => visitExpression(node);
+ @override
R visitNamedExpression(NamedExpression node) => visitExpression(node);
R visitNamespaceDirective(NamespaceDirective node) => visitUriBasedDirective(node);
+ @override
R visitNativeClause(NativeClause node) => visitNode(node);
+ @override
R visitNativeFunctionBody(NativeFunctionBody node) => visitFunctionBody(node);
R visitNode(AstNode node) {
@@ -12400,88 +12996,124 @@ class GeneralizingAstVisitor<R> implements AstVisitor<R> {
R visitNormalFormalParameter(NormalFormalParameter node) => visitFormalParameter(node);
+ @override
R visitNullLiteral(NullLiteral node) => visitLiteral(node);
+ @override
R visitParenthesizedExpression(ParenthesizedExpression node) => visitExpression(node);
+ @override
R visitPartDirective(PartDirective node) => visitUriBasedDirective(node);
+ @override
R visitPartOfDirective(PartOfDirective node) => visitDirective(node);
+ @override
R visitPostfixExpression(PostfixExpression node) => visitExpression(node);
+ @override
R visitPrefixedIdentifier(PrefixedIdentifier node) => visitIdentifier(node);
+ @override
R visitPrefixExpression(PrefixExpression node) => visitExpression(node);
+ @override
R visitPropertyAccess(PropertyAccess node) => visitExpression(node);
+ @override
R visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) => visitConstructorInitializer(node);
+ @override
R visitRethrowExpression(RethrowExpression node) => visitExpression(node);
+ @override
R visitReturnStatement(ReturnStatement node) => visitStatement(node);
+ @override
R visitScriptTag(ScriptTag scriptTag) => visitNode(scriptTag);
+ @override
R visitShowCombinator(ShowCombinator node) => visitCombinator(node);
+ @override
R visitSimpleFormalParameter(SimpleFormalParameter node) => visitNormalFormalParameter(node);
+ @override
R visitSimpleIdentifier(SimpleIdentifier node) => visitIdentifier(node);
+ @override
R visitSimpleStringLiteral(SimpleStringLiteral node) => visitStringLiteral(node);
R visitStatement(Statement node) => visitNode(node);
+ @override
R visitStringInterpolation(StringInterpolation node) => visitStringLiteral(node);
R visitStringLiteral(StringLiteral node) => visitLiteral(node);
+ @override
R visitSuperConstructorInvocation(SuperConstructorInvocation node) => visitConstructorInitializer(node);
+ @override
R visitSuperExpression(SuperExpression node) => visitExpression(node);
+ @override
R visitSwitchCase(SwitchCase node) => visitSwitchMember(node);
+ @override
R visitSwitchDefault(SwitchDefault node) => visitSwitchMember(node);
R visitSwitchMember(SwitchMember node) => visitNode(node);
+ @override
R visitSwitchStatement(SwitchStatement node) => visitStatement(node);
+ @override
R visitSymbolLiteral(SymbolLiteral node) => visitLiteral(node);
+ @override
R visitThisExpression(ThisExpression node) => visitExpression(node);
+ @override
R visitThrowExpression(ThrowExpression node) => visitExpression(node);
+ @override
R visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) => visitCompilationUnitMember(node);
+ @override
R visitTryStatement(TryStatement node) => visitStatement(node);
R visitTypeAlias(TypeAlias node) => visitCompilationUnitMember(node);
+ @override
R visitTypeArgumentList(TypeArgumentList node) => visitNode(node);
R visitTypedLiteral(TypedLiteral node) => visitLiteral(node);
+ @override
R visitTypeName(TypeName node) => visitNode(node);
+ @override
R visitTypeParameter(TypeParameter node) => visitNode(node);
+ @override
R visitTypeParameterList(TypeParameterList node) => visitNode(node);
R visitUriBasedDirective(UriBasedDirective node) => visitDirective(node);
+ @override
R visitVariableDeclaration(VariableDeclaration node) => visitDeclaration(node);
+ @override
R visitVariableDeclarationList(VariableDeclarationList node) => visitNode(node);
+ @override
R visitVariableDeclarationStatement(VariableDeclarationStatement node) => visitStatement(node);
+ @override
R visitWhileStatement(WhileStatement node) => visitStatement(node);
+ @override
R visitWithClause(WithClause node) => visitNode(node);
}
@@ -12558,6 +13190,7 @@ class NodeLocator extends UnifyingAstVisitor<Object> {
return _foundNode;
}
+ @override
Object visitNode(AstNode node) {
int start = node.offset;
int end = start + node.length;
@@ -12601,516 +13234,619 @@ class NodeLocator_NodeFoundException extends RuntimeException {
* of the visited node to not be visited.
*/
class RecursiveAstVisitor<R> implements AstVisitor<R> {
+ @override
R visitAdjacentStrings(AdjacentStrings node) {
node.visitChildren(this);
return null;
}
+ @override
R visitAnnotation(Annotation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitArgumentDefinitionTest(ArgumentDefinitionTest node) {
node.visitChildren(this);
return null;
}
+ @override
R visitArgumentList(ArgumentList node) {
node.visitChildren(this);
return null;
}
+ @override
R visitAsExpression(AsExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitAssertStatement(AssertStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitAssignmentExpression(AssignmentExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitBinaryExpression(BinaryExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitBlock(Block node) {
node.visitChildren(this);
return null;
}
+ @override
R visitBlockFunctionBody(BlockFunctionBody node) {
node.visitChildren(this);
return null;
}
+ @override
R visitBooleanLiteral(BooleanLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitBreakStatement(BreakStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitCascadeExpression(CascadeExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitCatchClause(CatchClause node) {
node.visitChildren(this);
return null;
}
+ @override
R visitClassDeclaration(ClassDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitClassTypeAlias(ClassTypeAlias node) {
node.visitChildren(this);
return null;
}
+ @override
R visitComment(Comment node) {
node.visitChildren(this);
return null;
}
+ @override
R visitCommentReference(CommentReference node) {
node.visitChildren(this);
return null;
}
+ @override
R visitCompilationUnit(CompilationUnit node) {
node.visitChildren(this);
return null;
}
+ @override
R visitConditionalExpression(ConditionalExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitConstructorDeclaration(ConstructorDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitConstructorFieldInitializer(ConstructorFieldInitializer node) {
node.visitChildren(this);
return null;
}
+ @override
R visitConstructorName(ConstructorName node) {
node.visitChildren(this);
return null;
}
+ @override
R visitContinueStatement(ContinueStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitDeclaredIdentifier(DeclaredIdentifier node) {
node.visitChildren(this);
return null;
}
+ @override
R visitDefaultFormalParameter(DefaultFormalParameter node) {
node.visitChildren(this);
return null;
}
+ @override
R visitDoStatement(DoStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitDoubleLiteral(DoubleLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitEmptyFunctionBody(EmptyFunctionBody node) {
node.visitChildren(this);
return null;
}
+ @override
R visitEmptyStatement(EmptyStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitExportDirective(ExportDirective node) {
node.visitChildren(this);
return null;
}
+ @override
R visitExpressionFunctionBody(ExpressionFunctionBody node) {
node.visitChildren(this);
return null;
}
+ @override
R visitExpressionStatement(ExpressionStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitExtendsClause(ExtendsClause node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFieldDeclaration(FieldDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFieldFormalParameter(FieldFormalParameter node) {
node.visitChildren(this);
return null;
}
+ @override
R visitForEachStatement(ForEachStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFormalParameterList(FormalParameterList node) {
node.visitChildren(this);
return null;
}
+ @override
R visitForStatement(ForStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionDeclaration(FunctionDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionDeclarationStatement(FunctionDeclarationStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionExpression(FunctionExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionExpressionInvocation(FunctionExpressionInvocation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionTypeAlias(FunctionTypeAlias node) {
node.visitChildren(this);
return null;
}
+ @override
R visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) {
node.visitChildren(this);
return null;
}
+ @override
R visitHideCombinator(HideCombinator node) {
node.visitChildren(this);
return null;
}
+ @override
R visitIfStatement(IfStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitImplementsClause(ImplementsClause node) {
node.visitChildren(this);
return null;
}
+ @override
R visitImportDirective(ImportDirective node) {
node.visitChildren(this);
return null;
}
+ @override
R visitIndexExpression(IndexExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitInstanceCreationExpression(InstanceCreationExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitIntegerLiteral(IntegerLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitInterpolationExpression(InterpolationExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitInterpolationString(InterpolationString node) {
node.visitChildren(this);
return null;
}
+ @override
R visitIsExpression(IsExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitLabel(Label node) {
node.visitChildren(this);
return null;
}
+ @override
R visitLabeledStatement(LabeledStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitLibraryDirective(LibraryDirective node) {
node.visitChildren(this);
return null;
}
+ @override
R visitLibraryIdentifier(LibraryIdentifier node) {
node.visitChildren(this);
return null;
}
+ @override
R visitListLiteral(ListLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitMapLiteral(MapLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitMapLiteralEntry(MapLiteralEntry node) {
node.visitChildren(this);
return null;
}
+ @override
R visitMethodDeclaration(MethodDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitMethodInvocation(MethodInvocation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitNamedExpression(NamedExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitNativeClause(NativeClause node) {
node.visitChildren(this);
return null;
}
+ @override
R visitNativeFunctionBody(NativeFunctionBody node) {
node.visitChildren(this);
return null;
}
+ @override
R visitNullLiteral(NullLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitParenthesizedExpression(ParenthesizedExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPartDirective(PartDirective node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPartOfDirective(PartOfDirective node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPostfixExpression(PostfixExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPrefixedIdentifier(PrefixedIdentifier node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPrefixExpression(PrefixExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitPropertyAccess(PropertyAccess node) {
node.visitChildren(this);
return null;
}
+ @override
R visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitRethrowExpression(RethrowExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitReturnStatement(ReturnStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitScriptTag(ScriptTag node) {
node.visitChildren(this);
return null;
}
+ @override
R visitShowCombinator(ShowCombinator node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSimpleFormalParameter(SimpleFormalParameter node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSimpleIdentifier(SimpleIdentifier node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSimpleStringLiteral(SimpleStringLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitStringInterpolation(StringInterpolation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSuperConstructorInvocation(SuperConstructorInvocation node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSuperExpression(SuperExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSwitchCase(SwitchCase node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSwitchDefault(SwitchDefault node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSwitchStatement(SwitchStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitSymbolLiteral(SymbolLiteral node) {
node.visitChildren(this);
return null;
}
+ @override
R visitThisExpression(ThisExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitThrowExpression(ThrowExpression node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTryStatement(TryStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTypeArgumentList(TypeArgumentList node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTypeName(TypeName node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTypeParameter(TypeParameter node) {
node.visitChildren(this);
return null;
}
+ @override
R visitTypeParameterList(TypeParameterList node) {
node.visitChildren(this);
return null;
}
+ @override
R visitVariableDeclaration(VariableDeclaration node) {
node.visitChildren(this);
return null;
}
+ @override
R visitVariableDeclarationList(VariableDeclarationList node) {
node.visitChildren(this);
return null;
}
+ @override
R visitVariableDeclarationStatement(VariableDeclarationStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitWhileStatement(WhileStatement node) {
node.visitChildren(this);
return null;
}
+ @override
R visitWithClause(WithClause node) {
node.visitChildren(this);
return null;
@@ -13124,210 +13860,313 @@ class RecursiveAstVisitor<R> implements AstVisitor<R> {
* structure) and that only need to visit a small number of node types.
*/
class SimpleAstVisitor<R> implements AstVisitor<R> {
+ @override
R visitAdjacentStrings(AdjacentStrings node) => null;
+ @override
R visitAnnotation(Annotation node) => null;
+ @override
R visitArgumentDefinitionTest(ArgumentDefinitionTest node) => null;
+ @override
R visitArgumentList(ArgumentList node) => null;
+ @override
R visitAsExpression(AsExpression node) => null;
+ @override
R visitAssertStatement(AssertStatement node) => null;
+ @override
R visitAssignmentExpression(AssignmentExpression node) => null;
+ @override
R visitBinaryExpression(BinaryExpression node) => null;
+ @override
R visitBlock(Block node) => null;
+ @override
R visitBlockFunctionBody(BlockFunctionBody node) => null;
+ @override
R visitBooleanLiteral(BooleanLiteral node) => null;
+ @override
R visitBreakStatement(BreakStatement node) => null;
+ @override
R visitCascadeExpression(CascadeExpression node) => null;
+ @override
R visitCatchClause(CatchClause node) => null;
+ @override
R visitClassDeclaration(ClassDeclaration node) => null;
+ @override
R visitClassTypeAlias(ClassTypeAlias node) => null;
+ @override
R visitComment(Comment node) => null;
+ @override
R visitCommentReference(CommentReference node) => null;
+ @override
R visitCompilationUnit(CompilationUnit node) => null;
+ @override
R visitConditionalExpression(ConditionalExpression node) => null;
+ @override
R visitConstructorDeclaration(ConstructorDeclaration node) => null;
+ @override
R visitConstructorFieldInitializer(ConstructorFieldInitializer node) => null;
+ @override
R visitConstructorName(ConstructorName node) => null;
+ @override
R visitContinueStatement(ContinueStatement node) => null;
+ @override
R visitDeclaredIdentifier(DeclaredIdentifier node) => null;
+ @override
R visitDefaultFormalParameter(DefaultFormalParameter node) => null;
+ @override
R visitDoStatement(DoStatement node) => null;
+ @override
R visitDoubleLiteral(DoubleLiteral node) => null;
+ @override
R visitEmptyFunctionBody(EmptyFunctionBody node) => null;
+ @override
R visitEmptyStatement(EmptyStatement node) => null;
+ @override
R visitExportDirective(ExportDirective node) => null;
+ @override
R visitExpressionFunctionBody(ExpressionFunctionBody node) => null;
+ @override
R visitExpressionStatement(ExpressionStatement node) => null;
+ @override
R visitExtendsClause(ExtendsClause node) => null;
+ @override
R visitFieldDeclaration(FieldDeclaration node) => null;
+ @override
R visitFieldFormalParameter(FieldFormalParameter node) => null;
+ @override
R visitForEachStatement(ForEachStatement node) => null;
+ @override
R visitFormalParameterList(FormalParameterList node) => null;
+ @override
R visitForStatement(ForStatement node) => null;
+ @override
R visitFunctionDeclaration(FunctionDeclaration node) => null;
+ @override
R visitFunctionDeclarationStatement(FunctionDeclarationStatement node) => null;
+ @override
R visitFunctionExpression(FunctionExpression node) => null;
+ @override
R visitFunctionExpressionInvocation(FunctionExpressionInvocation node) => null;
+ @override
R visitFunctionTypeAlias(FunctionTypeAlias node) => null;
+ @override
R visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) => null;
+ @override
R visitHideCombinator(HideCombinator node) => null;
+ @override
R visitIfStatement(IfStatement node) => null;
+ @override
R visitImplementsClause(ImplementsClause node) => null;
+ @override
R visitImportDirective(ImportDirective node) => null;
+ @override
R visitIndexExpression(IndexExpression node) => null;
+ @override
R visitInstanceCreationExpression(InstanceCreationExpression node) => null;
+ @override
R visitIntegerLiteral(IntegerLiteral node) => null;
+ @override
R visitInterpolationExpression(InterpolationExpression node) => null;
+ @override
R visitInterpolationString(InterpolationString node) => null;
+ @override
R visitIsExpression(IsExpression node) => null;
+ @override
R visitLabel(Label node) => null;
+ @override
R visitLabeledStatement(LabeledStatement node) => null;
+ @override
R visitLibraryDirective(LibraryDirective node) => null;
+ @override
R visitLibraryIdentifier(LibraryIdentifier node) => null;
+ @override
R visitListLiteral(ListLiteral node) => null;
+ @override
R visitMapLiteral(MapLiteral node) => null;
+ @override
R visitMapLiteralEntry(MapLiteralEntry node) => null;
+ @override
R visitMethodDeclaration(MethodDeclaration node) => null;
+ @override
R visitMethodInvocation(MethodInvocation node) => null;
+ @override
R visitNamedExpression(NamedExpression node) => null;
+ @override
R visitNativeClause(NativeClause node) => null;
+ @override
R visitNativeFunctionBody(NativeFunctionBody node) => null;
+ @override
R visitNullLiteral(NullLiteral node) => null;
+ @override
R visitParenthesizedExpression(ParenthesizedExpression node) => null;
+ @override
R visitPartDirective(PartDirective node) => null;
+ @override
R visitPartOfDirective(PartOfDirective node) => null;
+ @override
R visitPostfixExpression(PostfixExpression node) => null;
+ @override
R visitPrefixedIdentifier(PrefixedIdentifier node) => null;
+ @override
R visitPrefixExpression(PrefixExpression node) => null;
+ @override
R visitPropertyAccess(PropertyAccess node) => null;
+ @override
R visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) => null;
+ @override
R visitRethrowExpression(RethrowExpression node) => null;
+ @override
R visitReturnStatement(ReturnStatement node) => null;
+ @override
R visitScriptTag(ScriptTag node) => null;
+ @override
R visitShowCombinator(ShowCombinator node) => null;
+ @override
R visitSimpleFormalParameter(SimpleFormalParameter node) => null;
+ @override
R visitSimpleIdentifier(SimpleIdentifier node) => null;
+ @override
R visitSimpleStringLiteral(SimpleStringLiteral node) => null;
+ @override
R visitStringInterpolation(StringInterpolation node) => null;
+ @override
R visitSuperConstructorInvocation(SuperConstructorInvocation node) => null;
+ @override
R visitSuperExpression(SuperExpression node) => null;
+ @override
R visitSwitchCase(SwitchCase node) => null;
+ @override
R visitSwitchDefault(SwitchDefault node) => null;
+ @override
R visitSwitchStatement(SwitchStatement node) => null;
+ @override
R visitSymbolLiteral(SymbolLiteral node) => null;
+ @override
R visitThisExpression(ThisExpression node) => null;
+ @override
R visitThrowExpression(ThrowExpression node) => null;
+ @override
R visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) => null;
+ @override
R visitTryStatement(TryStatement node) => null;
+ @override
R visitTypeArgumentList(TypeArgumentList node) => null;
+ @override
R visitTypeName(TypeName node) => null;
+ @override
R visitTypeParameter(TypeParameter node) => null;
+ @override
R visitTypeParameterList(TypeParameterList node) => null;
+ @override
R visitVariableDeclaration(VariableDeclaration node) => null;
+ @override
R visitVariableDeclarationList(VariableDeclarationList node) => null;
+ @override
R visitVariableDeclarationStatement(VariableDeclarationStatement node) => null;
+ @override
R visitWhileStatement(WhileStatement node) => null;
+ @override
R visitWithClause(WithClause node) => null;
}
@@ -13351,11 +14190,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
this._writer = writer;
}
+ @override
Object visitAdjacentStrings(AdjacentStrings node) {
_visitNodeListWithSeparator(node.strings, " ");
return null;
}
+ @override
Object visitAnnotation(Annotation node) {
_writer.print('@');
_visitNode(node.name);
@@ -13364,12 +14205,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitArgumentDefinitionTest(ArgumentDefinitionTest node) {
_writer.print('?');
_visitNode(node.identifier);
return null;
}
+ @override
Object visitArgumentList(ArgumentList node) {
_writer.print('(');
_visitNodeListWithSeparator(node.arguments, ", ");
@@ -13377,6 +14220,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitAsExpression(AsExpression node) {
_visitNode(node.expression);
_writer.print(" as ");
@@ -13384,6 +14228,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitAssertStatement(AssertStatement node) {
_writer.print("assert (");
_visitNode(node.condition);
@@ -13391,6 +14236,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitAssignmentExpression(AssignmentExpression node) {
_visitNode(node.leftHandSide);
_writer.print(' ');
@@ -13400,6 +14246,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitBinaryExpression(BinaryExpression node) {
_visitNode(node.leftOperand);
_writer.print(' ');
@@ -13409,6 +14256,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitBlock(Block node) {
_writer.print('{');
_visitNodeListWithSeparator(node.statements, " ");
@@ -13416,16 +14264,19 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitBlockFunctionBody(BlockFunctionBody node) {
_visitNode(node.block);
return null;
}
+ @override
Object visitBooleanLiteral(BooleanLiteral node) {
_writer.print(node.literal.lexeme);
return null;
}
+ @override
Object visitBreakStatement(BreakStatement node) {
_writer.print("break");
_visitNodeWithPrefix(" ", node.label);
@@ -13433,12 +14284,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitCascadeExpression(CascadeExpression node) {
_visitNode(node.target);
_visitNodeList(node.cascadeSections);
return null;
}
+ @override
Object visitCatchClause(CatchClause node) {
_visitNodeWithPrefix("on ", node.exceptionType);
if (node.catchKeyword != null) {
@@ -13456,6 +14309,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitClassDeclaration(ClassDeclaration node) {
_visitTokenWithSuffix(node.abstractKeyword, " ");
_writer.print("class ");
@@ -13470,6 +14324,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitClassTypeAlias(ClassTypeAlias node) {
if (node.abstractKeyword != null) {
_writer.print("abstract ");
@@ -13485,10 +14340,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitComment(Comment node) => null;
+ @override
Object visitCommentReference(CommentReference node) => null;
+ @override
Object visitCompilationUnit(CompilationUnit node) {
ScriptTag scriptTag = node.scriptTag;
NodeList<Directive> directives = node.directives;
@@ -13500,6 +14358,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitConditionalExpression(ConditionalExpression node) {
_visitNode(node.condition);
_writer.print(" ? ");
@@ -13509,6 +14368,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitConstructorDeclaration(ConstructorDeclaration node) {
_visitTokenWithSuffix(node.externalKeyword, " ");
_visitTokenWithSuffix(node.constKeyword, " ");
@@ -13522,6 +14382,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitConstructorFieldInitializer(ConstructorFieldInitializer node) {
_visitTokenWithSuffix(node.keyword, ".");
_visitNode(node.fieldName);
@@ -13530,12 +14391,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitConstructorName(ConstructorName node) {
_visitNode(node.type);
_visitNodeWithPrefix(".", node.name);
return null;
}
+ @override
Object visitContinueStatement(ContinueStatement node) {
_writer.print("continue");
_visitNodeWithPrefix(" ", node.label);
@@ -13543,6 +14406,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitDeclaredIdentifier(DeclaredIdentifier node) {
_visitTokenWithSuffix(node.keyword, " ");
_visitNodeWithSuffix(node.type, " ");
@@ -13550,6 +14414,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitDefaultFormalParameter(DefaultFormalParameter node) {
_visitNode(node.parameter);
if (node.separator != null) {
@@ -13560,6 +14425,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitDoStatement(DoStatement node) {
_writer.print("do ");
_visitNode(node.body);
@@ -13569,21 +14435,25 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitDoubleLiteral(DoubleLiteral node) {
_writer.print(node.literal.lexeme);
return null;
}
+ @override
Object visitEmptyFunctionBody(EmptyFunctionBody node) {
_writer.print(';');
return null;
}
+ @override
Object visitEmptyStatement(EmptyStatement node) {
_writer.print(';');
return null;
}
+ @override
Object visitExportDirective(ExportDirective node) {
_writer.print("export ");
_visitNode(node.uri);
@@ -13592,6 +14462,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitExpressionFunctionBody(ExpressionFunctionBody node) {
_writer.print("=> ");
_visitNode(node.expression);
@@ -13601,18 +14472,21 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitExpressionStatement(ExpressionStatement node) {
_visitNode(node.expression);
_writer.print(';');
return null;
}
+ @override
Object visitExtendsClause(ExtendsClause node) {
_writer.print("extends ");
_visitNode(node.superclass);
return null;
}
+ @override
Object visitFieldDeclaration(FieldDeclaration node) {
_visitTokenWithSuffix(node.staticKeyword, " ");
_visitNode(node.fields);
@@ -13620,6 +14494,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFieldFormalParameter(FieldFormalParameter node) {
_visitTokenWithSuffix(node.keyword, " ");
_visitNodeWithSuffix(node.type, " ");
@@ -13629,6 +14504,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitForEachStatement(ForEachStatement node) {
DeclaredIdentifier loopVariable = node.loopVariable;
_writer.print("for (");
@@ -13644,6 +14520,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFormalParameterList(FormalParameterList node) {
String groupEnd = null;
_writer.print('(');
@@ -13672,6 +14549,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitForStatement(ForStatement node) {
Expression initialization = node.initialization;
_writer.print("for (");
@@ -13689,6 +14567,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFunctionDeclaration(FunctionDeclaration node) {
_visitNodeWithSuffix(node.returnType, " ");
_visitTokenWithSuffix(node.propertyKeyword, " ");
@@ -13697,12 +14576,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFunctionDeclarationStatement(FunctionDeclarationStatement node) {
_visitNode(node.functionDeclaration);
_writer.print(';');
return null;
}
+ @override
Object visitFunctionExpression(FunctionExpression node) {
_visitNode(node.parameters);
_writer.print(' ');
@@ -13710,12 +14591,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFunctionExpressionInvocation(FunctionExpressionInvocation node) {
_visitNode(node.function);
_visitNode(node.argumentList);
return null;
}
+ @override
Object visitFunctionTypeAlias(FunctionTypeAlias node) {
_writer.print("typedef ");
_visitNodeWithSuffix(node.returnType, " ");
@@ -13726,6 +14609,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) {
_visitNodeWithSuffix(node.returnType, " ");
_visitNode(node.identifier);
@@ -13733,12 +14617,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitHideCombinator(HideCombinator node) {
_writer.print("hide ");
_visitNodeListWithSeparator(node.hiddenNames, ", ");
return null;
}
+ @override
Object visitIfStatement(IfStatement node) {
_writer.print("if (");
_visitNode(node.condition);
@@ -13748,12 +14634,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitImplementsClause(ImplementsClause node) {
_writer.print("implements ");
_visitNodeListWithSeparator(node.interfaces, ", ");
return null;
}
+ @override
Object visitImportDirective(ImportDirective node) {
_writer.print("import ");
_visitNode(node.uri);
@@ -13763,6 +14651,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitIndexExpression(IndexExpression node) {
if (node.isCascaded) {
_writer.print("..");
@@ -13775,6 +14664,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitInstanceCreationExpression(InstanceCreationExpression node) {
_visitTokenWithSuffix(node.keyword, " ");
_visitNode(node.constructorName);
@@ -13782,11 +14672,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitIntegerLiteral(IntegerLiteral node) {
_writer.print(node.literal.lexeme);
return null;
}
+ @override
Object visitInterpolationExpression(InterpolationExpression node) {
if (node.rightBracket != null) {
_writer.print("\${");
@@ -13799,11 +14691,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitInterpolationString(InterpolationString node) {
_writer.print(node.contents.lexeme);
return null;
}
+ @override
Object visitIsExpression(IsExpression node) {
_visitNode(node.expression);
if (node.notOperator == null) {
@@ -13815,18 +14709,21 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitLabel(Label node) {
_visitNode(node.label);
_writer.print(":");
return null;
}
+ @override
Object visitLabeledStatement(LabeledStatement node) {
_visitNodeListWithSeparatorAndSuffix(node.labels, " ", " ");
_visitNode(node.statement);
return null;
}
+ @override
Object visitLibraryDirective(LibraryDirective node) {
_writer.print("library ");
_visitNode(node.name);
@@ -13834,11 +14731,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitLibraryIdentifier(LibraryIdentifier node) {
_writer.print(node.name);
return null;
}
+ @override
Object visitListLiteral(ListLiteral node) {
if (node.constKeyword != null) {
_writer.print(node.constKeyword.lexeme);
@@ -13851,6 +14750,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitMapLiteral(MapLiteral node) {
if (node.constKeyword != null) {
_writer.print(node.constKeyword.lexeme);
@@ -13863,6 +14763,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitMapLiteralEntry(MapLiteralEntry node) {
_visitNode(node.key);
_writer.print(" : ");
@@ -13870,6 +14771,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitMethodDeclaration(MethodDeclaration node) {
_visitTokenWithSuffix(node.externalKeyword, " ");
_visitTokenWithSuffix(node.modifierKeyword, " ");
@@ -13884,6 +14786,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitMethodInvocation(MethodInvocation node) {
if (node.isCascaded) {
_writer.print("..");
@@ -13895,18 +14798,21 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitNamedExpression(NamedExpression node) {
_visitNode(node.name);
_visitNodeWithPrefix(" ", node.expression);
return null;
}
+ @override
Object visitNativeClause(NativeClause node) {
_writer.print("native ");
_visitNode(node.name);
return null;
}
+ @override
Object visitNativeFunctionBody(NativeFunctionBody node) {
_writer.print("native ");
_visitNode(node.stringLiteral);
@@ -13914,11 +14820,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitNullLiteral(NullLiteral node) {
_writer.print("null");
return null;
}
+ @override
Object visitParenthesizedExpression(ParenthesizedExpression node) {
_writer.print('(');
_visitNode(node.expression);
@@ -13926,6 +14834,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitPartDirective(PartDirective node) {
_writer.print("part ");
_visitNode(node.uri);
@@ -13933,6 +14842,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitPartOfDirective(PartOfDirective node) {
_writer.print("part of ");
_visitNode(node.libraryName);
@@ -13940,12 +14850,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitPostfixExpression(PostfixExpression node) {
_visitNode(node.operand);
_writer.print(node.operator.lexeme);
return null;
}
+ @override
Object visitPrefixedIdentifier(PrefixedIdentifier node) {
_visitNode(node.prefix);
_writer.print('.');
@@ -13953,12 +14865,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitPrefixExpression(PrefixExpression node) {
_writer.print(node.operator.lexeme);
_visitNode(node.operand);
return null;
}
+ @override
Object visitPropertyAccess(PropertyAccess node) {
if (node.isCascaded) {
_writer.print("..");
@@ -13970,6 +14884,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) {
_writer.print("this");
_visitNodeWithPrefix(".", node.constructorName);
@@ -13977,11 +14892,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitRethrowExpression(RethrowExpression node) {
_writer.print("rethrow");
return null;
}
+ @override
Object visitReturnStatement(ReturnStatement node) {
Expression expression = node.expression;
if (expression == null) {
@@ -13994,17 +14911,20 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitScriptTag(ScriptTag node) {
_writer.print(node.scriptTag.lexeme);
return null;
}
+ @override
Object visitShowCombinator(ShowCombinator node) {
_writer.print("show ");
_visitNodeListWithSeparator(node.shownNames, ", ");
return null;
}
+ @override
Object visitSimpleFormalParameter(SimpleFormalParameter node) {
_visitTokenWithSuffix(node.keyword, " ");
_visitNodeWithSuffix(node.type, " ");
@@ -14012,21 +14932,25 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitSimpleIdentifier(SimpleIdentifier node) {
_writer.print(node.token.lexeme);
return null;
}
+ @override
Object visitSimpleStringLiteral(SimpleStringLiteral node) {
_writer.print(node.literal.lexeme);
return null;
}
+ @override
Object visitStringInterpolation(StringInterpolation node) {
_visitNodeList(node.elements);
return null;
}
+ @override
Object visitSuperConstructorInvocation(SuperConstructorInvocation node) {
_writer.print("super");
_visitNodeWithPrefix(".", node.constructorName);
@@ -14034,11 +14958,13 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitSuperExpression(SuperExpression node) {
_writer.print("super");
return null;
}
+ @override
Object visitSwitchCase(SwitchCase node) {
_visitNodeListWithSeparatorAndSuffix(node.labels, " ", " ");
_writer.print("case ");
@@ -14048,6 +14974,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitSwitchDefault(SwitchDefault node) {
_visitNodeListWithSeparatorAndSuffix(node.labels, " ", " ");
_writer.print("default: ");
@@ -14055,6 +14982,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitSwitchStatement(SwitchStatement node) {
_writer.print("switch (");
_visitNode(node.expression);
@@ -14064,6 +14992,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitSymbolLiteral(SymbolLiteral node) {
_writer.print("#");
List<Token> components = node.components;
@@ -14076,22 +15005,26 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitThisExpression(ThisExpression node) {
_writer.print("this");
return null;
}
+ @override
Object visitThrowExpression(ThrowExpression node) {
_writer.print("throw ");
_visitNode(node.expression);
return null;
}
+ @override
Object visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) {
_visitNodeWithSuffix(node.variables, ";");
return null;
}
+ @override
Object visitTryStatement(TryStatement node) {
_writer.print("try ");
_visitNode(node.body);
@@ -14100,6 +15033,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitTypeArgumentList(TypeArgumentList node) {
_writer.print('<');
_visitNodeListWithSeparator(node.arguments, ", ");
@@ -14107,18 +15041,21 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitTypeName(TypeName node) {
_visitNode(node.name);
_visitNode(node.typeArguments);
return null;
}
+ @override
Object visitTypeParameter(TypeParameter node) {
_visitNode(node.name);
_visitNodeWithPrefix(" extends ", node.bound);
return null;
}
+ @override
Object visitTypeParameterList(TypeParameterList node) {
_writer.print('<');
_visitNodeListWithSeparator(node.typeParameters, ", ");
@@ -14126,12 +15063,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitVariableDeclaration(VariableDeclaration node) {
_visitNode(node.name);
_visitNodeWithPrefix(" = ", node.initializer);
return null;
}
+ @override
Object visitVariableDeclarationList(VariableDeclarationList node) {
_visitTokenWithSuffix(node.keyword, " ");
_visitNodeWithSuffix(node.type, " ");
@@ -14139,12 +15078,14 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitVariableDeclarationStatement(VariableDeclarationStatement node) {
_visitNode(node.variables);
_writer.print(";");
return null;
}
+ @override
Object visitWhileStatement(WhileStatement node) {
_writer.print("while (");
_visitNode(node.condition);
@@ -14153,6 +15094,7 @@ class ToSourceVisitor implements AstVisitor<Object> {
return null;
}
+ @override
Object visitWithClause(WithClause node) {
_writer.print("with ");
_visitNodeListWithSeparator(node.mixinTypes, ", ");
@@ -14306,138 +15248,205 @@ class ToSourceVisitor implements AstVisitor<Object> {
* cause the children of the visited node to not be visited.
*/
class UnifyingAstVisitor<R> implements AstVisitor<R> {
+ @override
R visitAdjacentStrings(AdjacentStrings node) => visitNode(node);
+ @override
R visitAnnotation(Annotation node) => visitNode(node);
+ @override
R visitArgumentDefinitionTest(ArgumentDefinitionTest node) => visitNode(node);
+ @override
R visitArgumentList(ArgumentList node) => visitNode(node);
+ @override
R visitAsExpression(AsExpression node) => visitNode(node);
+ @override
R visitAssertStatement(AssertStatement node) => visitNode(node);
+ @override
R visitAssignmentExpression(AssignmentExpression node) => visitNode(node);
+ @override
R visitBinaryExpression(BinaryExpression node) => visitNode(node);
+ @override
R visitBlock(Block node) => visitNode(node);
+ @override
R visitBlockFunctionBody(BlockFunctionBody node) => visitNode(node);
+ @override
R visitBooleanLiteral(BooleanLiteral node) => visitNode(node);
+ @override
R visitBreakStatement(BreakStatement node) => visitNode(node);
+ @override
R visitCascadeExpression(CascadeExpression node) => visitNode(node);
+ @override
R visitCatchClause(CatchClause node) => visitNode(node);
+ @override
R visitClassDeclaration(ClassDeclaration node) => visitNode(node);
+ @override
R visitClassTypeAlias(ClassTypeAlias node) => visitNode(node);
+ @override
R visitComment(Comment node) => visitNode(node);
+ @override
R visitCommentReference(CommentReference node) => visitNode(node);
+ @override
R visitCompilationUnit(CompilationUnit node) => visitNode(node);
+ @override
R visitConditionalExpression(ConditionalExpression node) => visitNode(node);
+ @override
R visitConstructorDeclaration(ConstructorDeclaration node) => visitNode(node);
+ @override
R visitConstructorFieldInitializer(ConstructorFieldInitializer node) => visitNode(node);
+ @override
R visitConstructorName(ConstructorName node) => visitNode(node);
+ @override
R visitContinueStatement(ContinueStatement node) => visitNode(node);
+ @override
R visitDeclaredIdentifier(DeclaredIdentifier node) => visitNode(node);
+ @override
R visitDefaultFormalParameter(DefaultFormalParameter node) => visitNode(node);
+ @override
R visitDoStatement(DoStatement node) => visitNode(node);
+ @override
R visitDoubleLiteral(DoubleLiteral node) => visitNode(node);
+ @override
R visitEmptyFunctionBody(EmptyFunctionBody node) => visitNode(node);
+ @override
R visitEmptyStatement(EmptyStatement node) => visitNode(node);
+ @override
R visitExportDirective(ExportDirective node) => visitNode(node);
+ @override
R visitExpressionFunctionBody(ExpressionFunctionBody node) => visitNode(node);
+ @override
R visitExpressionStatement(ExpressionStatement node) => visitNode(node);
+ @override
R visitExtendsClause(ExtendsClause node) => visitNode(node);
+ @override
R visitFieldDeclaration(FieldDeclaration node) => visitNode(node);
+ @override
R visitFieldFormalParameter(FieldFormalParameter node) => visitNode(node);
+ @override
R visitForEachStatement(ForEachStatement node) => visitNode(node);
+ @override
R visitFormalParameterList(FormalParameterList node) => visitNode(node);
+ @override
R visitForStatement(ForStatement node) => visitNode(node);
+ @override
R visitFunctionDeclaration(FunctionDeclaration node) => visitNode(node);
+ @override
R visitFunctionDeclarationStatement(FunctionDeclarationStatement node) => visitNode(node);
+ @override
R visitFunctionExpression(FunctionExpression node) => visitNode(node);
+ @override
R visitFunctionExpressionInvocation(FunctionExpressionInvocation node) => visitNode(node);
+ @override
R visitFunctionTypeAlias(FunctionTypeAlias node) => visitNode(node);
+ @override
R visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) => visitNode(node);
+ @override
R visitHideCombinator(HideCombinator node) => visitNode(node);
+ @override
R visitIfStatement(IfStatement node) => visitNode(node);
+ @override
R visitImplementsClause(ImplementsClause node) => visitNode(node);
+ @override
R visitImportDirective(ImportDirective node) => visitNode(node);
+ @override
R visitIndexExpression(IndexExpression node) => visitNode(node);
+ @override
R visitInstanceCreationExpression(InstanceCreationExpression node) => visitNode(node);
+ @override
R visitIntegerLiteral(IntegerLiteral node) => visitNode(node);
+ @override
R visitInterpolationExpression(InterpolationExpression node) => visitNode(node);
+ @override
R visitInterpolationString(InterpolationString node) => visitNode(node);
+ @override
R visitIsExpression(IsExpression node) => visitNode(node);
+ @override
R visitLabel(Label node) => visitNode(node);
+ @override
R visitLabeledStatement(LabeledStatement node) => visitNode(node);
+ @override
R visitLibraryDirective(LibraryDirective node) => visitNode(node);
+ @override
R visitLibraryIdentifier(LibraryIdentifier node) => visitNode(node);
+ @override
R visitListLiteral(ListLiteral node) => visitNode(node);
+ @override
R visitMapLiteral(MapLiteral node) => visitNode(node);
+ @override
R visitMapLiteralEntry(MapLiteralEntry node) => visitNode(node);
+ @override
R visitMethodDeclaration(MethodDeclaration node) => visitNode(node);
+ @override
R visitMethodInvocation(MethodInvocation node) => visitNode(node);
+ @override
R visitNamedExpression(NamedExpression node) => visitNode(node);
+ @override
R visitNativeClause(NativeClause node) => visitNode(node);
+ @override
R visitNativeFunctionBody(NativeFunctionBody node) => visitNode(node);
R visitNode(AstNode node) {
@@ -14445,76 +15454,112 @@ class UnifyingAstVisitor<R> implements AstVisitor<R> {
return null;
}
+ @override
R visitNullLiteral(NullLiteral node) => visitNode(node);
+ @override
R visitParenthesizedExpression(ParenthesizedExpression node) => visitNode(node);
+ @override
R visitPartDirective(PartDirective node) => visitNode(node);
+ @override
R visitPartOfDirective(PartOfDirective node) => visitNode(node);
+ @override
R visitPostfixExpression(PostfixExpression node) => visitNode(node);
+ @override
R visitPrefixedIdentifier(PrefixedIdentifier node) => visitNode(node);
+ @override
R visitPrefixExpression(PrefixExpression node) => visitNode(node);
+ @override
R visitPropertyAccess(PropertyAccess node) => visitNode(node);
+ @override
R visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) => visitNode(node);
+ @override
R visitRethrowExpression(RethrowExpression node) => visitNode(node);
+ @override
R visitReturnStatement(ReturnStatement node) => visitNode(node);
+ @override
R visitScriptTag(ScriptTag scriptTag) => visitNode(scriptTag);
+ @override
R visitShowCombinator(ShowCombinator node) => visitNode(node);
+ @override
R visitSimpleFormalParameter(SimpleFormalParameter node) => visitNode(node);
+ @override
R visitSimpleIdentifier(SimpleIdentifier node) => visitNode(node);
+ @override
R visitSimpleStringLiteral(SimpleStringLiteral node) => visitNode(node);
+ @override
R visitStringInterpolation(StringInterpolation node) => visitNode(node);
+ @override
R visitSuperConstructorInvocation(SuperConstructorInvocation node) => visitNode(node);
+ @override
R visitSuperExpression(SuperExpression node) => visitNode(node);
+ @override
R visitSwitchCase(SwitchCase node) => visitNode(node);
+ @override
R visitSwitchDefault(SwitchDefault node) => visitNode(node);
+ @override
R visitSwitchStatement(SwitchStatement node) => visitNode(node);
+ @override
R visitSymbolLiteral(SymbolLiteral node) => visitNode(node);
+ @override
R visitThisExpression(ThisExpression node) => visitNode(node);
+ @override
R visitThrowExpression(ThrowExpression node) => visitNode(node);
+ @override
R visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) => visitNode(node);
+ @override
R visitTryStatement(TryStatement node) => visitNode(node);
+ @override
R visitTypeArgumentList(TypeArgumentList node) => visitNode(node);
+ @override
R visitTypeName(TypeName node) => visitNode(node);
+ @override
R visitTypeParameter(TypeParameter node) => visitNode(node);
+ @override
R visitTypeParameterList(TypeParameterList node) => visitNode(node);
+ @override
R visitVariableDeclaration(VariableDeclaration node) => visitNode(node);
+ @override
R visitVariableDeclarationList(VariableDeclarationList node) => visitNode(node);
+ @override
R visitVariableDeclarationStatement(VariableDeclarationStatement node) => visitNode(node);
+ @override
R visitWhileStatement(WhileStatement node) => visitNode(node);
+ @override
R visitWithClause(WithClause node) => visitNode(node);
}
@@ -14524,42 +15569,59 @@ class UnifyingAstVisitor<R> implements AstVisitor<R> {
* results or properties associated with the nodes.
*/
class AstCloner implements AstVisitor<AstNode> {
+ @override
AdjacentStrings visitAdjacentStrings(AdjacentStrings node) => new AdjacentStrings(_cloneNodeList(node.strings));
+ @override
Annotation visitAnnotation(Annotation node) => new Annotation(node.atSign, _cloneNode(node.name), node.period, _cloneNode(node.constructorName), _cloneNode(node.arguments));
+ @override
ArgumentDefinitionTest visitArgumentDefinitionTest(ArgumentDefinitionTest node) => new ArgumentDefinitionTest(node.question, _cloneNode(node.identifier));
+ @override
ArgumentList visitArgumentList(ArgumentList node) => new ArgumentList(node.leftParenthesis, _cloneNodeList(node.arguments), node.rightParenthesis);
+ @override
AsExpression visitAsExpression(AsExpression node) => new AsExpression(_cloneNode(node.expression), node.asOperator, _cloneNode(node.type));
+ @override
AstNode visitAssertStatement(AssertStatement node) => new AssertStatement(node.keyword, node.leftParenthesis, _cloneNode(node.condition), node.rightParenthesis, node.semicolon);
+ @override
AssignmentExpression visitAssignmentExpression(AssignmentExpression node) => new AssignmentExpression(_cloneNode(node.leftHandSide), node.operator, _cloneNode(node.rightHandSide));
+ @override
BinaryExpression visitBinaryExpression(BinaryExpression node) => new BinaryExpression(_cloneNode(node.leftOperand), node.operator, _cloneNode(node.rightOperand));
+ @override
Block visitBlock(Block node) => new Block(node.leftBracket, _cloneNodeList(node.statements), node.rightBracket);
+ @override
BlockFunctionBody visitBlockFunctionBody(BlockFunctionBody node) => new BlockFunctionBody(_cloneNode(node.block));
+ @override
BooleanLiteral visitBooleanLiteral(BooleanLiteral node) => new BooleanLiteral(node.literal, node.value);
+ @override
BreakStatement visitBreakStatement(BreakStatement node) => new BreakStatement(node.keyword, _cloneNode(node.label), node.semicolon);
+ @override
CascadeExpression visitCascadeExpression(CascadeExpression node) => new CascadeExpression(_cloneNode(node.target), _cloneNodeList(node.cascadeSections));
+ @override
CatchClause visitCatchClause(CatchClause node) => new CatchClause(node.onKeyword, _cloneNode(node.exceptionType), node.catchKeyword, node.leftParenthesis, _cloneNode(node.exceptionParameter), node.comma, _cloneNode(node.stackTraceParameter), node.rightParenthesis, _cloneNode(node.body));
+ @override
ClassDeclaration visitClassDeclaration(ClassDeclaration node) {
ClassDeclaration copy = new ClassDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.abstractKeyword, node.classKeyword, _cloneNode(node.name), _cloneNode(node.typeParameters), _cloneNode(node.extendsClause), _cloneNode(node.withClause), _cloneNode(node.implementsClause), node.leftBracket, _cloneNodeList(node.members), node.rightBracket);
copy.nativeClause = _cloneNode(node.nativeClause);
return copy;
}
+ @override
ClassTypeAlias visitClassTypeAlias(ClassTypeAlias node) => new ClassTypeAlias(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.name), _cloneNode(node.typeParameters), node.equals, node.abstractKeyword, _cloneNode(node.superclass), _cloneNode(node.withClause), _cloneNode(node.implementsClause), node.semicolon);
+ @override
Comment visitComment(Comment node) {
if (node.isDocumentation) {
return Comment.createDocumentationCommentWithReferences(node.tokens, _cloneNodeList(node.references));
@@ -14569,48 +15631,68 @@ class AstCloner implements AstVisitor<AstNode> {
return Comment.createEndOfLineComment(node.tokens);
}
+ @override
CommentReference visitCommentReference(CommentReference node) => new CommentReference(node.newKeyword, _cloneNode(node.identifier));
+ @override
CompilationUnit visitCompilationUnit(CompilationUnit node) {
CompilationUnit clone = new CompilationUnit(node.beginToken, _cloneNode(node.scriptTag), _cloneNodeList(node.directives), _cloneNodeList(node.declarations), node.endToken);
clone.lineInfo = node.lineInfo;
return clone;
}
+ @override
ConditionalExpression visitConditionalExpression(ConditionalExpression node) => new ConditionalExpression(_cloneNode(node.condition), node.question, _cloneNode(node.thenExpression), node.colon, _cloneNode(node.elseExpression));
+ @override
ConstructorDeclaration visitConstructorDeclaration(ConstructorDeclaration node) => new ConstructorDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.externalKeyword, node.constKeyword, node.factoryKeyword, _cloneNode(node.returnType), node.period, _cloneNode(node.name), _cloneNode(node.parameters), node.separator, _cloneNodeList(node.initializers), _cloneNode(node.redirectedConstructor), _cloneNode(node.body));
+ @override
ConstructorFieldInitializer visitConstructorFieldInitializer(ConstructorFieldInitializer node) => new ConstructorFieldInitializer(node.keyword, node.period, _cloneNode(node.fieldName), node.equals, _cloneNode(node.expression));
+ @override
ConstructorName visitConstructorName(ConstructorName node) => new ConstructorName(_cloneNode(node.type), node.period, _cloneNode(node.name));
+ @override
ContinueStatement visitContinueStatement(ContinueStatement node) => new ContinueStatement(node.keyword, _cloneNode(node.label), node.semicolon);
+ @override
DeclaredIdentifier visitDeclaredIdentifier(DeclaredIdentifier node) => new DeclaredIdentifier(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.type), _cloneNode(node.identifier));
+ @override
DefaultFormalParameter visitDefaultFormalParameter(DefaultFormalParameter node) => new DefaultFormalParameter(_cloneNode(node.parameter), node.kind, node.separator, _cloneNode(node.defaultValue));
+ @override
DoStatement visitDoStatement(DoStatement node) => new DoStatement(node.doKeyword, _cloneNode(node.body), node.whileKeyword, node.leftParenthesis, _cloneNode(node.condition), node.rightParenthesis, node.semicolon);
+ @override
DoubleLiteral visitDoubleLiteral(DoubleLiteral node) => new DoubleLiteral(node.literal, node.value);
+ @override
EmptyFunctionBody visitEmptyFunctionBody(EmptyFunctionBody node) => new EmptyFunctionBody(node.semicolon);
+ @override
EmptyStatement visitEmptyStatement(EmptyStatement node) => new EmptyStatement(node.semicolon);
+ @override
ExportDirective visitExportDirective(ExportDirective node) => new ExportDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.uri), _cloneNodeList(node.combinators), node.semicolon);
+ @override
ExpressionFunctionBody visitExpressionFunctionBody(ExpressionFunctionBody node) => new ExpressionFunctionBody(node.functionDefinition, _cloneNode(node.expression), node.semicolon);
+ @override
ExpressionStatement visitExpressionStatement(ExpressionStatement node) => new ExpressionStatement(_cloneNode(node.expression), node.semicolon);
+ @override
ExtendsClause visitExtendsClause(ExtendsClause node) => new ExtendsClause(node.keyword, _cloneNode(node.superclass));
+ @override
FieldDeclaration visitFieldDeclaration(FieldDeclaration node) => new FieldDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.staticKeyword, _cloneNode(node.fields), node.semicolon);
+ @override
FieldFormalParameter visitFieldFormalParameter(FieldFormalParameter node) => new FieldFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.type), node.thisToken, node.period, _cloneNode(node.identifier), _cloneNode(node.parameters));
+ @override
ForEachStatement visitForEachStatement(ForEachStatement node) {
DeclaredIdentifier loopVariable = node.loopVariable;
if (loopVariable == null) {
@@ -14619,30 +15701,43 @@ class AstCloner implements AstVisitor<AstNode> {
return new ForEachStatement.con1(node.forKeyword, node.leftParenthesis, _cloneNode(loopVariable), node.inKeyword, _cloneNode(node.iterator), node.rightParenthesis, _cloneNode(node.body));
}
+ @override
FormalParameterList visitFormalParameterList(FormalParameterList node) => new FormalParameterList(node.leftParenthesis, _cloneNodeList(node.parameters), node.leftDelimiter, node.rightDelimiter, node.rightParenthesis);
+ @override
ForStatement visitForStatement(ForStatement node) => new ForStatement(node.forKeyword, node.leftParenthesis, _cloneNode(node.variables), _cloneNode(node.initialization), node.leftSeparator, _cloneNode(node.condition), node.rightSeparator, _cloneNodeList(node.updaters), node.rightParenthesis, _cloneNode(node.body));
+ @override
FunctionDeclaration visitFunctionDeclaration(FunctionDeclaration node) => new FunctionDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.externalKeyword, _cloneNode(node.returnType), node.propertyKeyword, _cloneNode(node.name), _cloneNode(node.functionExpression));
+ @override
FunctionDeclarationStatement visitFunctionDeclarationStatement(FunctionDeclarationStatement node) => new FunctionDeclarationStatement(_cloneNode(node.functionDeclaration));
+ @override
FunctionExpression visitFunctionExpression(FunctionExpression node) => new FunctionExpression(_cloneNode(node.parameters), _cloneNode(node.body));
+ @override
FunctionExpressionInvocation visitFunctionExpressionInvocation(FunctionExpressionInvocation node) => new FunctionExpressionInvocation(_cloneNode(node.function), _cloneNode(node.argumentList));
+ @override
FunctionTypeAlias visitFunctionTypeAlias(FunctionTypeAlias node) => new FunctionTypeAlias(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.returnType), _cloneNode(node.name), _cloneNode(node.typeParameters), _cloneNode(node.parameters), node.semicolon);
+ @override
FunctionTypedFormalParameter visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) => new FunctionTypedFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.returnType), _cloneNode(node.identifier), _cloneNode(node.parameters));
+ @override
HideCombinator visitHideCombinator(HideCombinator node) => new HideCombinator(node.keyword, _cloneNodeList(node.hiddenNames));
+ @override
IfStatement visitIfStatement(IfStatement node) => new IfStatement(node.ifKeyword, node.leftParenthesis, _cloneNode(node.condition), node.rightParenthesis, _cloneNode(node.thenStatement), node.elseKeyword, _cloneNode(node.elseStatement));
+ @override
ImplementsClause visitImplementsClause(ImplementsClause node) => new ImplementsClause(node.keyword, _cloneNodeList(node.interfaces));
+ @override
ImportDirective visitImportDirective(ImportDirective node) => new ImportDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.uri), node.asToken, _cloneNode(node.prefix), _cloneNodeList(node.combinators), node.semicolon);
+ @override
IndexExpression visitIndexExpression(IndexExpression node) {
Token period = node.period;
if (period == null) {
@@ -14652,110 +15747,163 @@ class AstCloner implements AstVisitor<AstNode> {
}
}
+ @override
InstanceCreationExpression visitInstanceCreationExpression(InstanceCreationExpression node) => new InstanceCreationExpression(node.keyword, _cloneNode(node.constructorName), _cloneNode(node.argumentList));
+ @override
IntegerLiteral visitIntegerLiteral(IntegerLiteral node) => new IntegerLiteral(node.literal, node.value);
+ @override
InterpolationExpression visitInterpolationExpression(InterpolationExpression node) => new InterpolationExpression(node.leftBracket, _cloneNode(node.expression), node.rightBracket);
+ @override
InterpolationString visitInterpolationString(InterpolationString node) => new InterpolationString(node.contents, node.value);
+ @override
IsExpression visitIsExpression(IsExpression node) => new IsExpression(_cloneNode(node.expression), node.isOperator, node.notOperator, _cloneNode(node.type));
+ @override
Label visitLabel(Label node) => new Label(_cloneNode(node.label), node.colon);
+ @override
LabeledStatement visitLabeledStatement(LabeledStatement node) => new LabeledStatement(_cloneNodeList(node.labels), _cloneNode(node.statement));
+ @override
LibraryDirective visitLibraryDirective(LibraryDirective node) => new LibraryDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.libraryToken, _cloneNode(node.name), node.semicolon);
+ @override
LibraryIdentifier visitLibraryIdentifier(LibraryIdentifier node) => new LibraryIdentifier(_cloneNodeList(node.components));
+ @override
ListLiteral visitListLiteral(ListLiteral node) => new ListLiteral(node.constKeyword, _cloneNode(node.typeArguments), node.leftBracket, _cloneNodeList(node.elements), node.rightBracket);
+ @override
MapLiteral visitMapLiteral(MapLiteral node) => new MapLiteral(node.constKeyword, _cloneNode(node.typeArguments), node.leftBracket, _cloneNodeList(node.entries), node.rightBracket);
+ @override
MapLiteralEntry visitMapLiteralEntry(MapLiteralEntry node) => new MapLiteralEntry(_cloneNode(node.key), node.separator, _cloneNode(node.value));
+ @override
MethodDeclaration visitMethodDeclaration(MethodDeclaration node) => new MethodDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.externalKeyword, node.modifierKeyword, _cloneNode(node.returnType), node.propertyKeyword, node.operatorKeyword, _cloneNode(node.name), _cloneNode(node.parameters), _cloneNode(node.body));
+ @override
MethodInvocation visitMethodInvocation(MethodInvocation node) => new MethodInvocation(_cloneNode(node.target), node.period, _cloneNode(node.methodName), _cloneNode(node.argumentList));
+ @override
NamedExpression visitNamedExpression(NamedExpression node) => new NamedExpression(_cloneNode(node.name), _cloneNode(node.expression));
+ @override
AstNode visitNativeClause(NativeClause node) => new NativeClause(node.keyword, _cloneNode(node.name));
+ @override
NativeFunctionBody visitNativeFunctionBody(NativeFunctionBody node) => new NativeFunctionBody(node.nativeToken, _cloneNode(node.stringLiteral), node.semicolon);
+ @override
NullLiteral visitNullLiteral(NullLiteral node) => new NullLiteral(node.literal);
+ @override
ParenthesizedExpression visitParenthesizedExpression(ParenthesizedExpression node) => new ParenthesizedExpression(node.leftParenthesis, _cloneNode(node.expression), node.rightParenthesis);
+ @override
PartDirective visitPartDirective(PartDirective node) => new PartDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.partToken, _cloneNode(node.uri), node.semicolon);
+ @override
PartOfDirective visitPartOfDirective(PartOfDirective node) => new PartOfDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.partToken, node.ofToken, _cloneNode(node.libraryName), node.semicolon);
+ @override
PostfixExpression visitPostfixExpression(PostfixExpression node) => new PostfixExpression(_cloneNode(node.operand), node.operator);
+ @override
PrefixedIdentifier visitPrefixedIdentifier(PrefixedIdentifier node) => new PrefixedIdentifier(_cloneNode(node.prefix), node.period, _cloneNode(node.identifier));
+ @override
PrefixExpression visitPrefixExpression(PrefixExpression node) => new PrefixExpression(node.operator, _cloneNode(node.operand));
+ @override
PropertyAccess visitPropertyAccess(PropertyAccess node) => new PropertyAccess(_cloneNode(node.target), node.operator, _cloneNode(node.propertyName));
+ @override
RedirectingConstructorInvocation visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) => new RedirectingConstructorInvocation(node.keyword, node.period, _cloneNode(node.constructorName), _cloneNode(node.argumentList));
+ @override
RethrowExpression visitRethrowExpression(RethrowExpression node) => new RethrowExpression(node.keyword);
+ @override
ReturnStatement visitReturnStatement(ReturnStatement node) => new ReturnStatement(node.keyword, _cloneNode(node.expression), node.semicolon);
+ @override
ScriptTag visitScriptTag(ScriptTag node) => new ScriptTag(node.scriptTag);
+ @override
ShowCombinator visitShowCombinator(ShowCombinator node) => new ShowCombinator(node.keyword, _cloneNodeList(node.shownNames));
+ @override
SimpleFormalParameter visitSimpleFormalParameter(SimpleFormalParameter node) => new SimpleFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.type), _cloneNode(node.identifier));
+ @override
SimpleIdentifier visitSimpleIdentifier(SimpleIdentifier node) => new SimpleIdentifier(node.token);
+ @override
SimpleStringLiteral visitSimpleStringLiteral(SimpleStringLiteral node) => new SimpleStringLiteral(node.literal, node.value);
+ @override
StringInterpolation visitStringInterpolation(StringInterpolation node) => new StringInterpolation(_cloneNodeList(node.elements));
+ @override
SuperConstructorInvocation visitSuperConstructorInvocation(SuperConstructorInvocation node) => new SuperConstructorInvocation(node.keyword, node.period, _cloneNode(node.constructorName), _cloneNode(node.argumentList));
+ @override
SuperExpression visitSuperExpression(SuperExpression node) => new SuperExpression(node.keyword);
+ @override
SwitchCase visitSwitchCase(SwitchCase node) => new SwitchCase(_cloneNodeList(node.labels), node.keyword, _cloneNode(node.expression), node.colon, _cloneNodeList(node.statements));
+ @override
SwitchDefault visitSwitchDefault(SwitchDefault node) => new SwitchDefault(_cloneNodeList(node.labels), node.keyword, node.colon, _cloneNodeList(node.statements));
+ @override
SwitchStatement visitSwitchStatement(SwitchStatement node) => new SwitchStatement(node.keyword, node.leftParenthesis, _cloneNode(node.expression), node.rightParenthesis, node.leftBracket, _cloneNodeList(node.members), node.rightBracket);
+ @override
AstNode visitSymbolLiteral(SymbolLiteral node) => new SymbolLiteral(node.poundSign, node.components);
+ @override
ThisExpression visitThisExpression(ThisExpression node) => new ThisExpression(node.keyword);
+ @override
ThrowExpression visitThrowExpression(ThrowExpression node) => new ThrowExpression(node.keyword, _cloneNode(node.expression));
+ @override
TopLevelVariableDeclaration visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) => new TopLevelVariableDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.variables), node.semicolon);
+ @override
TryStatement visitTryStatement(TryStatement node) => new TryStatement(node.tryKeyword, _cloneNode(node.body), _cloneNodeList(node.catchClauses), node.finallyKeyword, _cloneNode(node.finallyBlock));
+ @override
TypeArgumentList visitTypeArgumentList(TypeArgumentList node) => new TypeArgumentList(node.leftBracket, _cloneNodeList(node.arguments), node.rightBracket);
+ @override
TypeName visitTypeName(TypeName node) => new TypeName(_cloneNode(node.name), _cloneNode(node.typeArguments));
+ @override
TypeParameter visitTypeParameter(TypeParameter node) => new TypeParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.name), node.keyword, _cloneNode(node.bound));
+ @override
TypeParameterList visitTypeParameterList(TypeParameterList node) => new TypeParameterList(node.leftBracket, _cloneNodeList(node.typeParameters), node.rightBracket);
+ @override
VariableDeclaration visitVariableDeclaration(VariableDeclaration node) => new VariableDeclaration(null, _cloneNodeList(node.metadata), _cloneNode(node.name), node.equals, _cloneNode(node.initializer));
+ @override
VariableDeclarationList visitVariableDeclarationList(VariableDeclarationList node) => new VariableDeclarationList(null, _cloneNodeList(node.metadata), node.keyword, _cloneNode(node.type), _cloneNodeList(node.variables));
+ @override
VariableDeclarationStatement visitVariableDeclarationStatement(VariableDeclarationStatement node) => new VariableDeclarationStatement(_cloneNode(node.variables), node.semicolon);
+ @override
WhileStatement visitWhileStatement(WhileStatement node) => new WhileStatement(node.keyword, node.leftParenthesis, _cloneNode(node.condition), node.rightParenthesis, _cloneNode(node.body));
+ @override
WithClause visitWithClause(WithClause node) => new WithClause(node.withKeyword, _cloneNodeList(node.mixinTypes));
AstNode _cloneNode(AstNode node) {
@@ -14798,516 +15946,619 @@ class AstComparator implements AstVisitor<bool> {
*/
AstNode _other;
+ @override
bool visitAdjacentStrings(AdjacentStrings node) {
AdjacentStrings other = this._other as AdjacentStrings;
return _isEqualNodeLists(node.strings, other.strings);
}
+ @override
bool visitAnnotation(Annotation node) {
Annotation other = this._other as Annotation;
return _isEqualTokens(node.atSign, other.atSign) && _isEqualNodes(node.name, other.name) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.constructorName, other.constructorName) && _isEqualNodes(node.arguments, other.arguments);
}
+ @override
bool visitArgumentDefinitionTest(ArgumentDefinitionTest node) {
ArgumentDefinitionTest other = this._other as ArgumentDefinitionTest;
return _isEqualTokens(node.question, other.question) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitArgumentList(ArgumentList node) {
ArgumentList other = this._other as ArgumentList;
return _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodeLists(node.arguments, other.arguments) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis);
}
+ @override
bool visitAsExpression(AsExpression node) {
AsExpression other = this._other as AsExpression;
return _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.asOperator, other.asOperator) && _isEqualNodes(node.type, other.type);
}
+ @override
bool visitAssertStatement(AssertStatement node) {
AssertStatement other = this._other as AssertStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitAssignmentExpression(AssignmentExpression node) {
AssignmentExpression other = this._other as AssignmentExpression;
return _isEqualNodes(node.leftHandSide, other.leftHandSide) && _isEqualTokens(node.operator, other.operator) && _isEqualNodes(node.rightHandSide, other.rightHandSide);
}
+ @override
bool visitBinaryExpression(BinaryExpression node) {
BinaryExpression other = this._other as BinaryExpression;
return _isEqualNodes(node.leftOperand, other.leftOperand) && _isEqualTokens(node.operator, other.operator) && _isEqualNodes(node.rightOperand, other.rightOperand);
}
+ @override
bool visitBlock(Block node) {
Block other = this._other as Block;
return _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.statements, other.statements) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitBlockFunctionBody(BlockFunctionBody node) {
BlockFunctionBody other = this._other as BlockFunctionBody;
return _isEqualNodes(node.block, other.block);
}
+ @override
bool visitBooleanLiteral(BooleanLiteral node) {
BooleanLiteral other = this._other as BooleanLiteral;
return _isEqualTokens(node.literal, other.literal) && identical(node.value, other.value);
}
+ @override
bool visitBreakStatement(BreakStatement node) {
BreakStatement other = this._other as BreakStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.label, other.label) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitCascadeExpression(CascadeExpression node) {
CascadeExpression other = this._other as CascadeExpression;
return _isEqualNodes(node.target, other.target) && _isEqualNodeLists(node.cascadeSections, other.cascadeSections);
}
+ @override
bool visitCatchClause(CatchClause node) {
CatchClause other = this._other as CatchClause;
return _isEqualTokens(node.onKeyword, other.onKeyword) && _isEqualNodes(node.exceptionType, other.exceptionType) && _isEqualTokens(node.catchKeyword, other.catchKeyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.exceptionParameter, other.exceptionParameter) && _isEqualTokens(node.comma, other.comma) && _isEqualNodes(node.stackTraceParameter, other.stackTraceParameter) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitClassDeclaration(ClassDeclaration node) {
ClassDeclaration other = this._other as ClassDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.abstractKeyword, other.abstractKeyword) && _isEqualTokens(node.classKeyword, other.classKeyword) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.typeParameters, other.typeParameters) && _isEqualNodes(node.extendsClause, other.extendsClause) && _isEqualNodes(node.withClause, other.withClause) && _isEqualNodes(node.implementsClause, other.implementsClause) && _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.members, other.members) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitClassTypeAlias(ClassTypeAlias node) {
ClassTypeAlias other = this._other as ClassTypeAlias;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.typeParameters, other.typeParameters) && _isEqualTokens(node.equals, other.equals) && _isEqualTokens(node.abstractKeyword, other.abstractKeyword) && _isEqualNodes(node.superclass, other.superclass) && _isEqualNodes(node.withClause, other.withClause) && _isEqualNodes(node.implementsClause, other.implementsClause) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitComment(Comment node) {
Comment other = this._other as Comment;
return _isEqualNodeLists(node.references, other.references);
}
+ @override
bool visitCommentReference(CommentReference node) {
CommentReference other = this._other as CommentReference;
return _isEqualTokens(node.newKeyword, other.newKeyword) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitCompilationUnit(CompilationUnit node) {
CompilationUnit other = this._other as CompilationUnit;
return _isEqualTokens(node.beginToken, other.beginToken) && _isEqualNodes(node.scriptTag, other.scriptTag) && _isEqualNodeLists(node.directives, other.directives) && _isEqualNodeLists(node.declarations, other.declarations) && _isEqualTokens(node.endToken, other.endToken);
}
+ @override
bool visitConditionalExpression(ConditionalExpression node) {
ConditionalExpression other = this._other as ConditionalExpression;
return _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.question, other.question) && _isEqualNodes(node.thenExpression, other.thenExpression) && _isEqualTokens(node.colon, other.colon) && _isEqualNodes(node.elseExpression, other.elseExpression);
}
+ @override
bool visitConstructorDeclaration(ConstructorDeclaration node) {
ConstructorDeclaration other = this._other as ConstructorDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.externalKeyword, other.externalKeyword) && _isEqualTokens(node.constKeyword, other.constKeyword) && _isEqualTokens(node.factoryKeyword, other.factoryKeyword) && _isEqualNodes(node.returnType, other.returnType) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.parameters, other.parameters) && _isEqualTokens(node.separator, other.separator) && _isEqualNodeLists(node.initializers, other.initializers) && _isEqualNodes(node.redirectedConstructor, other.redirectedConstructor) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitConstructorFieldInitializer(ConstructorFieldInitializer node) {
ConstructorFieldInitializer other = this._other as ConstructorFieldInitializer;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.fieldName, other.fieldName) && _isEqualTokens(node.equals, other.equals) && _isEqualNodes(node.expression, other.expression);
}
+ @override
bool visitConstructorName(ConstructorName node) {
ConstructorName other = this._other as ConstructorName;
return _isEqualNodes(node.type, other.type) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.name, other.name);
}
+ @override
bool visitContinueStatement(ContinueStatement node) {
ContinueStatement other = this._other as ContinueStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.label, other.label) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitDeclaredIdentifier(DeclaredIdentifier node) {
DeclaredIdentifier other = this._other as DeclaredIdentifier;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.type, other.type) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitDefaultFormalParameter(DefaultFormalParameter node) {
DefaultFormalParameter other = this._other as DefaultFormalParameter;
return _isEqualNodes(node.parameter, other.parameter) && identical(node.kind, other.kind) && _isEqualTokens(node.separator, other.separator) && _isEqualNodes(node.defaultValue, other.defaultValue);
}
+ @override
bool visitDoStatement(DoStatement node) {
DoStatement other = this._other as DoStatement;
return _isEqualTokens(node.doKeyword, other.doKeyword) && _isEqualNodes(node.body, other.body) && _isEqualTokens(node.whileKeyword, other.whileKeyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitDoubleLiteral(DoubleLiteral node) {
DoubleLiteral other = this._other as DoubleLiteral;
return _isEqualTokens(node.literal, other.literal) && node.value == other.value;
}
+ @override
bool visitEmptyFunctionBody(EmptyFunctionBody node) {
EmptyFunctionBody other = this._other as EmptyFunctionBody;
return _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitEmptyStatement(EmptyStatement node) {
EmptyStatement other = this._other as EmptyStatement;
return _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitExportDirective(ExportDirective node) {
ExportDirective other = this._other as ExportDirective;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.uri, other.uri) && _isEqualNodeLists(node.combinators, other.combinators) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitExpressionFunctionBody(ExpressionFunctionBody node) {
ExpressionFunctionBody other = this._other as ExpressionFunctionBody;
return _isEqualTokens(node.functionDefinition, other.functionDefinition) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitExpressionStatement(ExpressionStatement node) {
ExpressionStatement other = this._other as ExpressionStatement;
return _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitExtendsClause(ExtendsClause node) {
ExtendsClause other = this._other as ExtendsClause;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.superclass, other.superclass);
}
+ @override
bool visitFieldDeclaration(FieldDeclaration node) {
FieldDeclaration other = this._other as FieldDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.staticKeyword, other.staticKeyword) && _isEqualNodes(node.fields, other.fields) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitFieldFormalParameter(FieldFormalParameter node) {
FieldFormalParameter other = this._other as FieldFormalParameter;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.type, other.type) && _isEqualTokens(node.thisToken, other.thisToken) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitForEachStatement(ForEachStatement node) {
ForEachStatement other = this._other as ForEachStatement;
return _isEqualTokens(node.forKeyword, other.forKeyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.loopVariable, other.loopVariable) && _isEqualTokens(node.inKeyword, other.inKeyword) && _isEqualNodes(node.iterator, other.iterator) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitFormalParameterList(FormalParameterList node) {
FormalParameterList other = this._other as FormalParameterList;
return _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodeLists(node.parameters, other.parameters) && _isEqualTokens(node.leftDelimiter, other.leftDelimiter) && _isEqualTokens(node.rightDelimiter, other.rightDelimiter) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis);
}
+ @override
bool visitForStatement(ForStatement node) {
ForStatement other = this._other as ForStatement;
return _isEqualTokens(node.forKeyword, other.forKeyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.variables, other.variables) && _isEqualNodes(node.initialization, other.initialization) && _isEqualTokens(node.leftSeparator, other.leftSeparator) && _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.rightSeparator, other.rightSeparator) && _isEqualNodeLists(node.updaters, other.updaters) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitFunctionDeclaration(FunctionDeclaration node) {
FunctionDeclaration other = this._other as FunctionDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.externalKeyword, other.externalKeyword) && _isEqualNodes(node.returnType, other.returnType) && _isEqualTokens(node.propertyKeyword, other.propertyKeyword) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.functionExpression, other.functionExpression);
}
+ @override
bool visitFunctionDeclarationStatement(FunctionDeclarationStatement node) {
FunctionDeclarationStatement other = this._other as FunctionDeclarationStatement;
return _isEqualNodes(node.functionDeclaration, other.functionDeclaration);
}
+ @override
bool visitFunctionExpression(FunctionExpression node) {
FunctionExpression other = this._other as FunctionExpression;
return _isEqualNodes(node.parameters, other.parameters) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitFunctionExpressionInvocation(FunctionExpressionInvocation node) {
FunctionExpressionInvocation other = this._other as FunctionExpressionInvocation;
return _isEqualNodes(node.function, other.function) && _isEqualNodes(node.argumentList, other.argumentList);
}
+ @override
bool visitFunctionTypeAlias(FunctionTypeAlias node) {
FunctionTypeAlias other = this._other as FunctionTypeAlias;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.returnType, other.returnType) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.typeParameters, other.typeParameters) && _isEqualNodes(node.parameters, other.parameters) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) {
FunctionTypedFormalParameter other = this._other as FunctionTypedFormalParameter;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualNodes(node.returnType, other.returnType) && _isEqualNodes(node.identifier, other.identifier) && _isEqualNodes(node.parameters, other.parameters);
}
+ @override
bool visitHideCombinator(HideCombinator node) {
HideCombinator other = this._other as HideCombinator;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodeLists(node.hiddenNames, other.hiddenNames);
}
+ @override
bool visitIfStatement(IfStatement node) {
IfStatement other = this._other as IfStatement;
return _isEqualTokens(node.ifKeyword, other.ifKeyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualNodes(node.thenStatement, other.thenStatement) && _isEqualTokens(node.elseKeyword, other.elseKeyword) && _isEqualNodes(node.elseStatement, other.elseStatement);
}
+ @override
bool visitImplementsClause(ImplementsClause node) {
ImplementsClause other = this._other as ImplementsClause;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodeLists(node.interfaces, other.interfaces);
}
+ @override
bool visitImportDirective(ImportDirective node) {
ImportDirective other = this._other as ImportDirective;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.uri, other.uri) && _isEqualTokens(node.asToken, other.asToken) && _isEqualNodes(node.prefix, other.prefix) && _isEqualNodeLists(node.combinators, other.combinators) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitIndexExpression(IndexExpression node) {
IndexExpression other = this._other as IndexExpression;
return _isEqualNodes(node.target, other.target) && _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodes(node.index, other.index) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitInstanceCreationExpression(InstanceCreationExpression node) {
InstanceCreationExpression other = this._other as InstanceCreationExpression;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.constructorName, other.constructorName) && _isEqualNodes(node.argumentList, other.argumentList);
}
+ @override
bool visitIntegerLiteral(IntegerLiteral node) {
IntegerLiteral other = this._other as IntegerLiteral;
return _isEqualTokens(node.literal, other.literal) && (node.value == other.value);
}
+ @override
bool visitInterpolationExpression(InterpolationExpression node) {
InterpolationExpression other = this._other as InterpolationExpression;
return _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitInterpolationString(InterpolationString node) {
InterpolationString other = this._other as InterpolationString;
return _isEqualTokens(node.contents, other.contents) && node.value == other.value;
}
+ @override
bool visitIsExpression(IsExpression node) {
IsExpression other = this._other as IsExpression;
return _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.isOperator, other.isOperator) && _isEqualTokens(node.notOperator, other.notOperator) && _isEqualNodes(node.type, other.type);
}
+ @override
bool visitLabel(Label node) {
Label other = this._other as Label;
return _isEqualNodes(node.label, other.label) && _isEqualTokens(node.colon, other.colon);
}
+ @override
bool visitLabeledStatement(LabeledStatement node) {
LabeledStatement other = this._other as LabeledStatement;
return _isEqualNodeLists(node.labels, other.labels) && _isEqualNodes(node.statement, other.statement);
}
+ @override
bool visitLibraryDirective(LibraryDirective node) {
LibraryDirective other = this._other as LibraryDirective;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.libraryToken, other.libraryToken) && _isEqualNodes(node.name, other.name) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitLibraryIdentifier(LibraryIdentifier node) {
LibraryIdentifier other = this._other as LibraryIdentifier;
return _isEqualNodeLists(node.components, other.components);
}
+ @override
bool visitListLiteral(ListLiteral node) {
ListLiteral other = this._other as ListLiteral;
return _isEqualTokens(node.constKeyword, other.constKeyword) && _isEqualNodes(node.typeArguments, other.typeArguments) && _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.elements, other.elements) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitMapLiteral(MapLiteral node) {
MapLiteral other = this._other as MapLiteral;
return _isEqualTokens(node.constKeyword, other.constKeyword) && _isEqualNodes(node.typeArguments, other.typeArguments) && _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.entries, other.entries) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitMapLiteralEntry(MapLiteralEntry node) {
MapLiteralEntry other = this._other as MapLiteralEntry;
return _isEqualNodes(node.key, other.key) && _isEqualTokens(node.separator, other.separator) && _isEqualNodes(node.value, other.value);
}
+ @override
bool visitMethodDeclaration(MethodDeclaration node) {
MethodDeclaration other = this._other as MethodDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.externalKeyword, other.externalKeyword) && _isEqualTokens(node.modifierKeyword, other.modifierKeyword) && _isEqualNodes(node.returnType, other.returnType) && _isEqualTokens(node.propertyKeyword, other.propertyKeyword) && _isEqualTokens(node.propertyKeyword, other.propertyKeyword) && _isEqualNodes(node.name, other.name) && _isEqualNodes(node.parameters, other.parameters) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitMethodInvocation(MethodInvocation node) {
MethodInvocation other = this._other as MethodInvocation;
return _isEqualNodes(node.target, other.target) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.methodName, other.methodName) && _isEqualNodes(node.argumentList, other.argumentList);
}
+ @override
bool visitNamedExpression(NamedExpression node) {
NamedExpression other = this._other as NamedExpression;
return _isEqualNodes(node.name, other.name) && _isEqualNodes(node.expression, other.expression);
}
+ @override
bool visitNativeClause(NativeClause node) {
NativeClause other = this._other as NativeClause;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.name, other.name);
}
+ @override
bool visitNativeFunctionBody(NativeFunctionBody node) {
NativeFunctionBody other = this._other as NativeFunctionBody;
return _isEqualTokens(node.nativeToken, other.nativeToken) && _isEqualNodes(node.stringLiteral, other.stringLiteral) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitNullLiteral(NullLiteral node) {
NullLiteral other = this._other as NullLiteral;
return _isEqualTokens(node.literal, other.literal);
}
+ @override
bool visitParenthesizedExpression(ParenthesizedExpression node) {
ParenthesizedExpression other = this._other as ParenthesizedExpression;
return _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis);
}
+ @override
bool visitPartDirective(PartDirective node) {
PartDirective other = this._other as PartDirective;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.partToken, other.partToken) && _isEqualNodes(node.uri, other.uri) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitPartOfDirective(PartOfDirective node) {
PartOfDirective other = this._other as PartOfDirective;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.partToken, other.partToken) && _isEqualTokens(node.ofToken, other.ofToken) && _isEqualNodes(node.libraryName, other.libraryName) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitPostfixExpression(PostfixExpression node) {
PostfixExpression other = this._other as PostfixExpression;
return _isEqualNodes(node.operand, other.operand) && _isEqualTokens(node.operator, other.operator);
}
+ @override
bool visitPrefixedIdentifier(PrefixedIdentifier node) {
PrefixedIdentifier other = this._other as PrefixedIdentifier;
return _isEqualNodes(node.prefix, other.prefix) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitPrefixExpression(PrefixExpression node) {
PrefixExpression other = this._other as PrefixExpression;
return _isEqualTokens(node.operator, other.operator) && _isEqualNodes(node.operand, other.operand);
}
+ @override
bool visitPropertyAccess(PropertyAccess node) {
PropertyAccess other = this._other as PropertyAccess;
return _isEqualNodes(node.target, other.target) && _isEqualTokens(node.operator, other.operator) && _isEqualNodes(node.propertyName, other.propertyName);
}
+ @override
bool visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) {
RedirectingConstructorInvocation other = this._other as RedirectingConstructorInvocation;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.constructorName, other.constructorName) && _isEqualNodes(node.argumentList, other.argumentList);
}
+ @override
bool visitRethrowExpression(RethrowExpression node) {
RethrowExpression other = this._other as RethrowExpression;
return _isEqualTokens(node.keyword, other.keyword);
}
+ @override
bool visitReturnStatement(ReturnStatement node) {
ReturnStatement other = this._other as ReturnStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitScriptTag(ScriptTag node) {
ScriptTag other = this._other as ScriptTag;
return _isEqualTokens(node.scriptTag, other.scriptTag);
}
+ @override
bool visitShowCombinator(ShowCombinator node) {
ShowCombinator other = this._other as ShowCombinator;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodeLists(node.shownNames, other.shownNames);
}
+ @override
bool visitSimpleFormalParameter(SimpleFormalParameter node) {
SimpleFormalParameter other = this._other as SimpleFormalParameter;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.type, other.type) && _isEqualNodes(node.identifier, other.identifier);
}
+ @override
bool visitSimpleIdentifier(SimpleIdentifier node) {
SimpleIdentifier other = this._other as SimpleIdentifier;
return _isEqualTokens(node.token, other.token);
}
+ @override
bool visitSimpleStringLiteral(SimpleStringLiteral node) {
SimpleStringLiteral other = this._other as SimpleStringLiteral;
return _isEqualTokens(node.literal, other.literal) && (node.value == other.value);
}
+ @override
bool visitStringInterpolation(StringInterpolation node) {
StringInterpolation other = this._other as StringInterpolation;
return _isEqualNodeLists(node.elements, other.elements);
}
+ @override
bool visitSuperConstructorInvocation(SuperConstructorInvocation node) {
SuperConstructorInvocation other = this._other as SuperConstructorInvocation;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.period, other.period) && _isEqualNodes(node.constructorName, other.constructorName) && _isEqualNodes(node.argumentList, other.argumentList);
}
+ @override
bool visitSuperExpression(SuperExpression node) {
SuperExpression other = this._other as SuperExpression;
return _isEqualTokens(node.keyword, other.keyword);
}
+ @override
bool visitSwitchCase(SwitchCase node) {
SwitchCase other = this._other as SwitchCase;
return _isEqualNodeLists(node.labels, other.labels) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.colon, other.colon) && _isEqualNodeLists(node.statements, other.statements);
}
+ @override
bool visitSwitchDefault(SwitchDefault node) {
SwitchDefault other = this._other as SwitchDefault;
return _isEqualNodeLists(node.labels, other.labels) && _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.colon, other.colon) && _isEqualNodeLists(node.statements, other.statements);
}
+ @override
bool visitSwitchStatement(SwitchStatement node) {
SwitchStatement other = this._other as SwitchStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.expression, other.expression) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.members, other.members) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitSymbolLiteral(SymbolLiteral node) {
SymbolLiteral other = this._other as SymbolLiteral;
return _isEqualTokens(node.poundSign, other.poundSign) && _isEqualTokenLists(node.components, other.components);
}
+ @override
bool visitThisExpression(ThisExpression node) {
ThisExpression other = this._other as ThisExpression;
return _isEqualTokens(node.keyword, other.keyword);
}
+ @override
bool visitThrowExpression(ThrowExpression node) {
ThrowExpression other = this._other as ThrowExpression;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.expression, other.expression);
}
+ @override
bool visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) {
TopLevelVariableDeclaration other = this._other as TopLevelVariableDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualNodes(node.variables, other.variables) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitTryStatement(TryStatement node) {
TryStatement other = this._other as TryStatement;
return _isEqualTokens(node.tryKeyword, other.tryKeyword) && _isEqualNodes(node.body, other.body) && _isEqualNodeLists(node.catchClauses, other.catchClauses) && _isEqualTokens(node.finallyKeyword, other.finallyKeyword) && _isEqualNodes(node.finallyBlock, other.finallyBlock);
}
+ @override
bool visitTypeArgumentList(TypeArgumentList node) {
TypeArgumentList other = this._other as TypeArgumentList;
return _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.arguments, other.arguments) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitTypeName(TypeName node) {
TypeName other = this._other as TypeName;
return _isEqualNodes(node.name, other.name) && _isEqualNodes(node.typeArguments, other.typeArguments);
}
+ @override
bool visitTypeParameter(TypeParameter node) {
TypeParameter other = this._other as TypeParameter;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualNodes(node.name, other.name) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.bound, other.bound);
}
+ @override
bool visitTypeParameterList(TypeParameterList node) {
TypeParameterList other = this._other as TypeParameterList;
return _isEqualTokens(node.leftBracket, other.leftBracket) && _isEqualNodeLists(node.typeParameters, other.typeParameters) && _isEqualTokens(node.rightBracket, other.rightBracket);
}
+ @override
bool visitVariableDeclaration(VariableDeclaration node) {
VariableDeclaration other = this._other as VariableDeclaration;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualNodes(node.name, other.name) && _isEqualTokens(node.equals, other.equals) && _isEqualNodes(node.initializer, other.initializer);
}
+ @override
bool visitVariableDeclarationList(VariableDeclarationList node) {
VariableDeclarationList other = this._other as VariableDeclarationList;
return _isEqualNodes(node.documentationComment, other.documentationComment) && _isEqualNodeLists(node.metadata, other.metadata) && _isEqualTokens(node.keyword, other.keyword) && _isEqualNodes(node.type, other.type) && _isEqualNodeLists(node.variables, other.variables);
}
+ @override
bool visitVariableDeclarationStatement(VariableDeclarationStatement node) {
VariableDeclarationStatement other = this._other as VariableDeclarationStatement;
return _isEqualNodes(node.variables, other.variables) && _isEqualTokens(node.semicolon, other.semicolon);
}
+ @override
bool visitWhileStatement(WhileStatement node) {
WhileStatement other = this._other as WhileStatement;
return _isEqualTokens(node.keyword, other.keyword) && _isEqualTokens(node.leftParenthesis, other.leftParenthesis) && _isEqualNodes(node.condition, other.condition) && _isEqualTokens(node.rightParenthesis, other.rightParenthesis) && _isEqualNodes(node.body, other.body);
}
+ @override
bool visitWithClause(WithClause node) {
WithClause other = this._other as WithClause;
return _isEqualTokens(node.withKeyword, other.withKeyword) && _isEqualNodeLists(node.mixinTypes, other.mixinTypes);
@@ -15434,14 +16685,17 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
this._tokenMap = tokenMap;
}
+ @override
AdjacentStrings visitAdjacentStrings(AdjacentStrings node) => new AdjacentStrings(_cloneNodeList(node.strings));
+ @override
Annotation visitAnnotation(Annotation node) {
Annotation copy = new Annotation(_mapToken(node.atSign), _cloneNode(node.name), _mapToken(node.period), _cloneNode(node.constructorName), _cloneNode(node.arguments));
copy.element = node.element;
return copy;
}
+ @override
ArgumentDefinitionTest visitArgumentDefinitionTest(ArgumentDefinitionTest node) {
ArgumentDefinitionTest copy = new ArgumentDefinitionTest(_mapToken(node.question), _cloneNode(node.identifier));
copy.propagatedType = node.propagatedType;
@@ -15449,8 +16703,10 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ArgumentList visitArgumentList(ArgumentList node) => new ArgumentList(_mapToken(node.leftParenthesis), _cloneNodeList(node.arguments), _mapToken(node.rightParenthesis));
+ @override
AsExpression visitAsExpression(AsExpression node) {
AsExpression copy = new AsExpression(_cloneNode(node.expression), _mapToken(node.asOperator), _cloneNode(node.type));
copy.propagatedType = node.propagatedType;
@@ -15458,8 +16714,10 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
AstNode visitAssertStatement(AssertStatement node) => new AssertStatement(_mapToken(node.keyword), _mapToken(node.leftParenthesis), _cloneNode(node.condition), _mapToken(node.rightParenthesis), _mapToken(node.semicolon));
+ @override
AssignmentExpression visitAssignmentExpression(AssignmentExpression node) {
AssignmentExpression copy = new AssignmentExpression(_cloneNode(node.leftHandSide), _mapToken(node.operator), _cloneNode(node.rightHandSide));
copy.propagatedElement = node.propagatedElement;
@@ -15469,6 +16727,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
BinaryExpression visitBinaryExpression(BinaryExpression node) {
BinaryExpression copy = new BinaryExpression(_cloneNode(node.leftOperand), _mapToken(node.operator), _cloneNode(node.rightOperand));
copy.propagatedElement = node.propagatedElement;
@@ -15478,10 +16737,13 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
Block visitBlock(Block node) => new Block(_mapToken(node.leftBracket), _cloneNodeList(node.statements), _mapToken(node.rightBracket));
+ @override
BlockFunctionBody visitBlockFunctionBody(BlockFunctionBody node) => new BlockFunctionBody(_cloneNode(node.block));
+ @override
BooleanLiteral visitBooleanLiteral(BooleanLiteral node) {
BooleanLiteral copy = new BooleanLiteral(_mapToken(node.literal), node.value);
copy.propagatedType = node.propagatedType;
@@ -15489,8 +16751,10 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
BreakStatement visitBreakStatement(BreakStatement node) => new BreakStatement(_mapToken(node.keyword), _cloneNode(node.label), _mapToken(node.semicolon));
+ @override
CascadeExpression visitCascadeExpression(CascadeExpression node) {
CascadeExpression copy = new CascadeExpression(_cloneNode(node.target), _cloneNodeList(node.cascadeSections));
copy.propagatedType = node.propagatedType;
@@ -15498,16 +16762,20 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
CatchClause visitCatchClause(CatchClause node) => new CatchClause(_mapToken(node.onKeyword), _cloneNode(node.exceptionType), _mapToken(node.catchKeyword), _mapToken(node.leftParenthesis), _cloneNode(node.exceptionParameter), _mapToken(node.comma), _cloneNode(node.stackTraceParameter), _mapToken(node.rightParenthesis), _cloneNode(node.body));
+ @override
ClassDeclaration visitClassDeclaration(ClassDeclaration node) {
ClassDeclaration copy = new ClassDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.abstractKeyword), _mapToken(node.classKeyword), _cloneNode(node.name), _cloneNode(node.typeParameters), _cloneNode(node.extendsClause), _cloneNode(node.withClause), _cloneNode(node.implementsClause), _mapToken(node.leftBracket), _cloneNodeList(node.members), _mapToken(node.rightBracket));
copy.nativeClause = _cloneNode(node.nativeClause);
return copy;
}
+ @override
ClassTypeAlias visitClassTypeAlias(ClassTypeAlias node) => new ClassTypeAlias(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.name), _cloneNode(node.typeParameters), _mapToken(node.equals), _mapToken(node.abstractKeyword), _cloneNode(node.superclass), _cloneNode(node.withClause), _cloneNode(node.implementsClause), _mapToken(node.semicolon));
+ @override
Comment visitComment(Comment node) {
if (node.isDocumentation) {
return Comment.createDocumentationCommentWithReferences(_mapTokens(node.tokens), _cloneNodeList(node.references));
@@ -15517,8 +16785,10 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return Comment.createEndOfLineComment(_mapTokens(node.tokens));
}
+ @override
CommentReference visitCommentReference(CommentReference node) => new CommentReference(_mapToken(node.newKeyword), _cloneNode(node.identifier));
+ @override
CompilationUnit visitCompilationUnit(CompilationUnit node) {
CompilationUnit copy = new CompilationUnit(_mapToken(node.beginToken), _cloneNode(node.scriptTag), _cloneNodeList(node.directives), _cloneNodeList(node.declarations), _mapToken(node.endToken));
copy.lineInfo = node.lineInfo;
@@ -15526,6 +16796,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ConditionalExpression visitConditionalExpression(ConditionalExpression node) {
ConditionalExpression copy = new ConditionalExpression(_cloneNode(node.condition), _mapToken(node.question), _cloneNode(node.thenExpression), _mapToken(node.colon), _cloneNode(node.elseExpression));
copy.propagatedType = node.propagatedType;
@@ -15533,28 +16804,36 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ConstructorDeclaration visitConstructorDeclaration(ConstructorDeclaration node) {
ConstructorDeclaration copy = new ConstructorDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.externalKeyword), _mapToken(node.constKeyword), _mapToken(node.factoryKeyword), _cloneNode(node.returnType), _mapToken(node.period), _cloneNode(node.name), _cloneNode(node.parameters), _mapToken(node.separator), _cloneNodeList(node.initializers), _cloneNode(node.redirectedConstructor), _cloneNode(node.body));
copy.element = node.element;
return copy;
}
+ @override
ConstructorFieldInitializer visitConstructorFieldInitializer(ConstructorFieldInitializer node) => new ConstructorFieldInitializer(_mapToken(node.keyword), _mapToken(node.period), _cloneNode(node.fieldName), _mapToken(node.equals), _cloneNode(node.expression));
+ @override
ConstructorName visitConstructorName(ConstructorName node) {
ConstructorName copy = new ConstructorName(_cloneNode(node.type), _mapToken(node.period), _cloneNode(node.name));
copy.staticElement = node.staticElement;
return copy;
}
+ @override
ContinueStatement visitContinueStatement(ContinueStatement node) => new ContinueStatement(_mapToken(node.keyword), _cloneNode(node.label), _mapToken(node.semicolon));
+ @override
DeclaredIdentifier visitDeclaredIdentifier(DeclaredIdentifier node) => new DeclaredIdentifier(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.type), _cloneNode(node.identifier));
+ @override
DefaultFormalParameter visitDefaultFormalParameter(DefaultFormalParameter node) => new DefaultFormalParameter(_cloneNode(node.parameter), node.kind, _mapToken(node.separator), _cloneNode(node.defaultValue));
+ @override
DoStatement visitDoStatement(DoStatement node) => new DoStatement(_mapToken(node.doKeyword), _cloneNode(node.body), _mapToken(node.whileKeyword), _mapToken(node.leftParenthesis), _cloneNode(node.condition), _mapToken(node.rightParenthesis), _mapToken(node.semicolon));
+ @override
DoubleLiteral visitDoubleLiteral(DoubleLiteral node) {
DoubleLiteral copy = new DoubleLiteral(_mapToken(node.literal), node.value);
copy.propagatedType = node.propagatedType;
@@ -15562,26 +16841,35 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
EmptyFunctionBody visitEmptyFunctionBody(EmptyFunctionBody node) => new EmptyFunctionBody(_mapToken(node.semicolon));
+ @override
EmptyStatement visitEmptyStatement(EmptyStatement node) => new EmptyStatement(_mapToken(node.semicolon));
+ @override
ExportDirective visitExportDirective(ExportDirective node) {
ExportDirective copy = new ExportDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.uri), _cloneNodeList(node.combinators), _mapToken(node.semicolon));
copy.element = node.element;
return copy;
}
+ @override
ExpressionFunctionBody visitExpressionFunctionBody(ExpressionFunctionBody node) => new ExpressionFunctionBody(_mapToken(node.functionDefinition), _cloneNode(node.expression), _mapToken(node.semicolon));
+ @override
ExpressionStatement visitExpressionStatement(ExpressionStatement node) => new ExpressionStatement(_cloneNode(node.expression), _mapToken(node.semicolon));
+ @override
ExtendsClause visitExtendsClause(ExtendsClause node) => new ExtendsClause(_mapToken(node.keyword), _cloneNode(node.superclass));
+ @override
FieldDeclaration visitFieldDeclaration(FieldDeclaration node) => new FieldDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.staticKeyword), _cloneNode(node.fields), _mapToken(node.semicolon));
+ @override
FieldFormalParameter visitFieldFormalParameter(FieldFormalParameter node) => new FieldFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.type), _mapToken(node.thisToken), _mapToken(node.period), _cloneNode(node.identifier), _cloneNode(node.parameters));
+ @override
ForEachStatement visitForEachStatement(ForEachStatement node) {
DeclaredIdentifier loopVariable = node.loopVariable;
if (loopVariable == null) {
@@ -15590,14 +16878,19 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return new ForEachStatement.con1(_mapToken(node.forKeyword), _mapToken(node.leftParenthesis), _cloneNode(loopVariable), _mapToken(node.inKeyword), _cloneNode(node.iterator), _mapToken(node.rightParenthesis), _cloneNode(node.body));
}
+ @override
FormalParameterList visitFormalParameterList(FormalParameterList node) => new FormalParameterList(_mapToken(node.leftParenthesis), _cloneNodeList(node.parameters), _mapToken(node.leftDelimiter), _mapToken(node.rightDelimiter), _mapToken(node.rightParenthesis));
+ @override
ForStatement visitForStatement(ForStatement node) => new ForStatement(_mapToken(node.forKeyword), _mapToken(node.leftParenthesis), _cloneNode(node.variables), _cloneNode(node.initialization), _mapToken(node.leftSeparator), _cloneNode(node.condition), _mapToken(node.rightSeparator), _cloneNodeList(node.updaters), _mapToken(node.rightParenthesis), _cloneNode(node.body));
+ @override
FunctionDeclaration visitFunctionDeclaration(FunctionDeclaration node) => new FunctionDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.externalKeyword), _cloneNode(node.returnType), _mapToken(node.propertyKeyword), _cloneNode(node.name), _cloneNode(node.functionExpression));
+ @override
FunctionDeclarationStatement visitFunctionDeclarationStatement(FunctionDeclarationStatement node) => new FunctionDeclarationStatement(_cloneNode(node.functionDeclaration));
+ @override
FunctionExpression visitFunctionExpression(FunctionExpression node) {
FunctionExpression copy = new FunctionExpression(_cloneNode(node.parameters), _cloneNode(node.body));
copy.element = node.element;
@@ -15606,6 +16899,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
FunctionExpressionInvocation visitFunctionExpressionInvocation(FunctionExpressionInvocation node) {
FunctionExpressionInvocation copy = new FunctionExpressionInvocation(_cloneNode(node.function), _cloneNode(node.argumentList));
copy.propagatedElement = node.propagatedElement;
@@ -15615,18 +16909,25 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
FunctionTypeAlias visitFunctionTypeAlias(FunctionTypeAlias node) => new FunctionTypeAlias(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.returnType), _cloneNode(node.name), _cloneNode(node.typeParameters), _cloneNode(node.parameters), _mapToken(node.semicolon));
+ @override
FunctionTypedFormalParameter visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) => new FunctionTypedFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.returnType), _cloneNode(node.identifier), _cloneNode(node.parameters));
+ @override
HideCombinator visitHideCombinator(HideCombinator node) => new HideCombinator(_mapToken(node.keyword), _cloneNodeList(node.hiddenNames));
+ @override
IfStatement visitIfStatement(IfStatement node) => new IfStatement(_mapToken(node.ifKeyword), _mapToken(node.leftParenthesis), _cloneNode(node.condition), _mapToken(node.rightParenthesis), _cloneNode(node.thenStatement), _mapToken(node.elseKeyword), _cloneNode(node.elseStatement));
+ @override
ImplementsClause visitImplementsClause(ImplementsClause node) => new ImplementsClause(_mapToken(node.keyword), _cloneNodeList(node.interfaces));
+ @override
ImportDirective visitImportDirective(ImportDirective node) => new ImportDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.uri), _mapToken(node.asToken), _cloneNode(node.prefix), _cloneNodeList(node.combinators), _mapToken(node.semicolon));
+ @override
IndexExpression visitIndexExpression(IndexExpression node) {
Token period = _mapToken(node.period);
IndexExpression copy;
@@ -15643,6 +16944,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
InstanceCreationExpression visitInstanceCreationExpression(InstanceCreationExpression node) {
InstanceCreationExpression copy = new InstanceCreationExpression(_mapToken(node.keyword), _cloneNode(node.constructorName), _cloneNode(node.argumentList));
copy.propagatedType = node.propagatedType;
@@ -15651,6 +16953,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
IntegerLiteral visitIntegerLiteral(IntegerLiteral node) {
IntegerLiteral copy = new IntegerLiteral(_mapToken(node.literal), node.value);
copy.propagatedType = node.propagatedType;
@@ -15658,10 +16961,13 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
InterpolationExpression visitInterpolationExpression(InterpolationExpression node) => new InterpolationExpression(_mapToken(node.leftBracket), _cloneNode(node.expression), _mapToken(node.rightBracket));
+ @override
InterpolationString visitInterpolationString(InterpolationString node) => new InterpolationString(_mapToken(node.contents), node.value);
+ @override
IsExpression visitIsExpression(IsExpression node) {
IsExpression copy = new IsExpression(_cloneNode(node.expression), _mapToken(node.isOperator), _mapToken(node.notOperator), _cloneNode(node.type));
copy.propagatedType = node.propagatedType;
@@ -15669,12 +16975,16 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
Label visitLabel(Label node) => new Label(_cloneNode(node.label), _mapToken(node.colon));
+ @override
LabeledStatement visitLabeledStatement(LabeledStatement node) => new LabeledStatement(_cloneNodeList(node.labels), _cloneNode(node.statement));
+ @override
LibraryDirective visitLibraryDirective(LibraryDirective node) => new LibraryDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.libraryToken), _cloneNode(node.name), _mapToken(node.semicolon));
+ @override
LibraryIdentifier visitLibraryIdentifier(LibraryIdentifier node) {
LibraryIdentifier copy = new LibraryIdentifier(_cloneNodeList(node.components));
copy.propagatedType = node.propagatedType;
@@ -15682,6 +16992,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ListLiteral visitListLiteral(ListLiteral node) {
ListLiteral copy = new ListLiteral(_mapToken(node.constKeyword), _cloneNode(node.typeArguments), _mapToken(node.leftBracket), _cloneNodeList(node.elements), _mapToken(node.rightBracket));
copy.propagatedType = node.propagatedType;
@@ -15689,6 +17000,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
MapLiteral visitMapLiteral(MapLiteral node) {
MapLiteral copy = new MapLiteral(_mapToken(node.constKeyword), _cloneNode(node.typeArguments), _mapToken(node.leftBracket), _cloneNodeList(node.entries), _mapToken(node.rightBracket));
copy.propagatedType = node.propagatedType;
@@ -15696,10 +17008,13 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
MapLiteralEntry visitMapLiteralEntry(MapLiteralEntry node) => new MapLiteralEntry(_cloneNode(node.key), _mapToken(node.separator), _cloneNode(node.value));
+ @override
MethodDeclaration visitMethodDeclaration(MethodDeclaration node) => new MethodDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.externalKeyword), _mapToken(node.modifierKeyword), _cloneNode(node.returnType), _mapToken(node.propertyKeyword), _mapToken(node.operatorKeyword), _cloneNode(node.name), _cloneNode(node.parameters), _cloneNode(node.body));
+ @override
MethodInvocation visitMethodInvocation(MethodInvocation node) {
MethodInvocation copy = new MethodInvocation(_cloneNode(node.target), _mapToken(node.period), _cloneNode(node.methodName), _cloneNode(node.argumentList));
copy.propagatedType = node.propagatedType;
@@ -15707,6 +17022,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
NamedExpression visitNamedExpression(NamedExpression node) {
NamedExpression copy = new NamedExpression(_cloneNode(node.name), _cloneNode(node.expression));
copy.propagatedType = node.propagatedType;
@@ -15714,10 +17030,13 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
AstNode visitNativeClause(NativeClause node) => new NativeClause(_mapToken(node.keyword), _cloneNode(node.name));
+ @override
NativeFunctionBody visitNativeFunctionBody(NativeFunctionBody node) => new NativeFunctionBody(_mapToken(node.nativeToken), _cloneNode(node.stringLiteral), _mapToken(node.semicolon));
+ @override
NullLiteral visitNullLiteral(NullLiteral node) {
NullLiteral copy = new NullLiteral(_mapToken(node.literal));
copy.propagatedType = node.propagatedType;
@@ -15725,6 +17044,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ParenthesizedExpression visitParenthesizedExpression(ParenthesizedExpression node) {
ParenthesizedExpression copy = new ParenthesizedExpression(_mapToken(node.leftParenthesis), _cloneNode(node.expression), _mapToken(node.rightParenthesis));
copy.propagatedType = node.propagatedType;
@@ -15732,18 +17052,21 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
PartDirective visitPartDirective(PartDirective node) {
PartDirective copy = new PartDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.partToken), _cloneNode(node.uri), _mapToken(node.semicolon));
copy.element = node.element;
return copy;
}
+ @override
PartOfDirective visitPartOfDirective(PartOfDirective node) {
PartOfDirective copy = new PartOfDirective(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.partToken), _mapToken(node.ofToken), _cloneNode(node.libraryName), _mapToken(node.semicolon));
copy.element = node.element;
return copy;
}
+ @override
PostfixExpression visitPostfixExpression(PostfixExpression node) {
PostfixExpression copy = new PostfixExpression(_cloneNode(node.operand), _mapToken(node.operator));
copy.propagatedElement = node.propagatedElement;
@@ -15753,6 +17076,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
PrefixedIdentifier visitPrefixedIdentifier(PrefixedIdentifier node) {
PrefixedIdentifier copy = new PrefixedIdentifier(_cloneNode(node.prefix), _mapToken(node.period), _cloneNode(node.identifier));
copy.propagatedType = node.propagatedType;
@@ -15760,6 +17084,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
PrefixExpression visitPrefixExpression(PrefixExpression node) {
PrefixExpression copy = new PrefixExpression(_mapToken(node.operator), _cloneNode(node.operand));
copy.propagatedElement = node.propagatedElement;
@@ -15769,6 +17094,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
PropertyAccess visitPropertyAccess(PropertyAccess node) {
PropertyAccess copy = new PropertyAccess(_cloneNode(node.target), _mapToken(node.operator), _cloneNode(node.propertyName));
copy.propagatedType = node.propagatedType;
@@ -15776,12 +17102,14 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
RedirectingConstructorInvocation visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) {
RedirectingConstructorInvocation copy = new RedirectingConstructorInvocation(_mapToken(node.keyword), _mapToken(node.period), _cloneNode(node.constructorName), _cloneNode(node.argumentList));
copy.staticElement = node.staticElement;
return copy;
}
+ @override
RethrowExpression visitRethrowExpression(RethrowExpression node) {
RethrowExpression copy = new RethrowExpression(_mapToken(node.keyword));
copy.propagatedType = node.propagatedType;
@@ -15789,14 +17117,19 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ReturnStatement visitReturnStatement(ReturnStatement node) => new ReturnStatement(_mapToken(node.keyword), _cloneNode(node.expression), _mapToken(node.semicolon));
+ @override
ScriptTag visitScriptTag(ScriptTag node) => new ScriptTag(_mapToken(node.scriptTag));
+ @override
ShowCombinator visitShowCombinator(ShowCombinator node) => new ShowCombinator(_mapToken(node.keyword), _cloneNodeList(node.shownNames));
+ @override
SimpleFormalParameter visitSimpleFormalParameter(SimpleFormalParameter node) => new SimpleFormalParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.type), _cloneNode(node.identifier));
+ @override
SimpleIdentifier visitSimpleIdentifier(SimpleIdentifier node) {
Token mappedToken = _mapToken(node.token);
if (mappedToken == null) {
@@ -15815,6 +17148,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
SimpleStringLiteral visitSimpleStringLiteral(SimpleStringLiteral node) {
SimpleStringLiteral copy = new SimpleStringLiteral(_mapToken(node.literal), node.value);
copy.propagatedType = node.propagatedType;
@@ -15822,6 +17156,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
StringInterpolation visitStringInterpolation(StringInterpolation node) {
StringInterpolation copy = new StringInterpolation(_cloneNodeList(node.elements));
copy.propagatedType = node.propagatedType;
@@ -15829,12 +17164,14 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
SuperConstructorInvocation visitSuperConstructorInvocation(SuperConstructorInvocation node) {
SuperConstructorInvocation copy = new SuperConstructorInvocation(_mapToken(node.keyword), _mapToken(node.period), _cloneNode(node.constructorName), _cloneNode(node.argumentList));
copy.staticElement = node.staticElement;
return copy;
}
+ @override
SuperExpression visitSuperExpression(SuperExpression node) {
SuperExpression copy = new SuperExpression(_mapToken(node.keyword));
copy.propagatedType = node.propagatedType;
@@ -15842,12 +17179,16 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
SwitchCase visitSwitchCase(SwitchCase node) => new SwitchCase(_cloneNodeList(node.labels), _mapToken(node.keyword), _cloneNode(node.expression), _mapToken(node.colon), _cloneNodeList(node.statements));
+ @override
SwitchDefault visitSwitchDefault(SwitchDefault node) => new SwitchDefault(_cloneNodeList(node.labels), _mapToken(node.keyword), _mapToken(node.colon), _cloneNodeList(node.statements));
+ @override
SwitchStatement visitSwitchStatement(SwitchStatement node) => new SwitchStatement(_mapToken(node.keyword), _mapToken(node.leftParenthesis), _cloneNode(node.expression), _mapToken(node.rightParenthesis), _mapToken(node.leftBracket), _cloneNodeList(node.members), _mapToken(node.rightBracket));
+ @override
AstNode visitSymbolLiteral(SymbolLiteral node) {
SymbolLiteral copy = new SymbolLiteral(_mapToken(node.poundSign), _mapTokens(node.components));
copy.propagatedType = node.propagatedType;
@@ -15855,6 +17196,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ThisExpression visitThisExpression(ThisExpression node) {
ThisExpression copy = new ThisExpression(_mapToken(node.keyword));
copy.propagatedType = node.propagatedType;
@@ -15862,6 +17204,7 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
ThrowExpression visitThrowExpression(ThrowExpression node) {
ThrowExpression copy = new ThrowExpression(_mapToken(node.keyword), _cloneNode(node.expression));
copy.propagatedType = node.propagatedType;
@@ -15869,30 +17212,41 @@ class IncrementalAstCloner implements AstVisitor<AstNode> {
return copy;
}
+ @override
TopLevelVariableDeclaration visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) => new TopLevelVariableDeclaration(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.variables), _mapToken(node.semicolon));
+ @override
TryStatement visitTryStatement(TryStatement node) => new TryStatement(_mapToken(node.tryKeyword), _cloneNode(node.body), _cloneNodeList(node.catchClauses), _mapToken(node.finallyKeyword), _cloneNode(node.finallyBlock));
+ @override
TypeArgumentList visitTypeArgumentList(TypeArgumentList node) => new TypeArgumentList(_mapToken(node.leftBracket), _cloneNodeList(node.arguments), _mapToken(node.rightBracket));
+ @override
TypeName visitTypeName(TypeName node) {
TypeName copy = new TypeName(_cloneNode(node.name), _cloneNode(node.typeArguments));
copy.type = node.type;
return copy;
}
+ @override
TypeParameter visitTypeParameter(TypeParameter node) => new TypeParameter(_cloneNode(node.documentationComment), _cloneNodeList(node.metadata), _cloneNode(node.name), _mapToken(node.keyword), _cloneNode(node.bound));
+ @override
TypeParameterList visitTypeParameterList(TypeParameterList node) => new TypeParameterList(_mapToken(node.leftBracket), _cloneNodeList(node.typeParameters), _mapToken(node.rightBracket));
+ @override
VariableDeclaration visitVariableDeclaration(VariableDeclaration node) => new VariableDeclaration(null, _cloneNodeList(node.metadata), _cloneNode(node.name), _mapToken(node.equals), _cloneNode(node.initializer));
+ @override
VariableDeclarationList visitVariableDeclarationList(VariableDeclarationList node) => new VariableDeclarationList(null, _cloneNodeList(node.metadata), _mapToken(node.keyword), _cloneNode(node.type), _cloneNodeList(node.variables));
+ @override
VariableDeclarationStatement visitVariableDeclarationStatement(VariableDeclarationStatement node) => new VariableDeclarationStatement(_cloneNode(node.variables), _mapToken(node.semicolon));
+ @override
WhileStatement visitWhileStatement(WhileStatement node) => new WhileStatement(_mapToken(node.keyword), _mapToken(node.leftParenthesis), _cloneNode(node.condition), _mapToken(node.rightParenthesis), _cloneNode(node.body));
+ @override
WithClause visitWithClause(WithClause node) => new WithClause(_mapToken(node.withKeyword), _cloneNodeList(node.mixinTypes));
AstNode _cloneNode(AstNode node) {
@@ -15956,17 +17310,20 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
Map<String, SimpleIdentifier> get locals => _locals;
+ @override
Object visitBlock(Block node) {
_checkStatements(node.statements);
return super.visitBlock(node);
}
+ @override
Object visitCatchClause(CatchClause node) {
_addToScope(node.exceptionParameter);
_addToScope(node.stackTraceParameter);
return super.visitCatchClause(node);
}
+ @override
Object visitConstructorDeclaration(ConstructorDeclaration node) {
if (_immediateChild != node.parameters) {
_addParameters(node.parameters.parameters);
@@ -15975,11 +17332,13 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return null;
}
+ @override
Object visitFieldDeclaration(FieldDeclaration node) {
_declarationNode = node;
return null;
}
+ @override
Object visitForEachStatement(ForEachStatement node) {
DeclaredIdentifier loopVariable = node.loopVariable;
if (loopVariable != null) {
@@ -15988,6 +17347,7 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return super.visitForEachStatement(node);
}
+ @override
Object visitForStatement(ForStatement node) {
if (_immediateChild != node.variables && node.variables != null) {
_addVariables(node.variables.variables);
@@ -15995,6 +17355,7 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return super.visitForStatement(node);
}
+ @override
Object visitFunctionDeclaration(FunctionDeclaration node) {
if (node.parent is! FunctionDeclarationStatement) {
_declarationNode = node;
@@ -16003,11 +17364,13 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return super.visitFunctionDeclaration(node);
}
+ @override
Object visitFunctionDeclarationStatement(FunctionDeclarationStatement node) {
_referenceIsWithinLocalFunction = true;
return super.visitFunctionDeclarationStatement(node);
}
+ @override
Object visitFunctionExpression(FunctionExpression node) {
if (node.parameters != null && _immediateChild != node.parameters) {
_addParameters(node.parameters.parameters);
@@ -16015,6 +17378,7 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return super.visitFunctionExpression(node);
}
+ @override
Object visitMethodDeclaration(MethodDeclaration node) {
_declarationNode = node;
if (node.parameters == null) {
@@ -16026,6 +17390,7 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return null;
}
+ @override
Object visitNode(AstNode node) {
_immediateChild = node;
AstNode parent = node.parent;
@@ -16035,16 +17400,19 @@ class ScopedNameFinder extends GeneralizingAstVisitor<Object> {
return null;
}
+ @override
Object visitSwitchMember(SwitchMember node) {
_checkStatements(node.statements);
return super.visitSwitchMember(node);
}
+ @override
Object visitTopLevelVariableDeclaration(TopLevelVariableDeclaration node) {
_declarationNode = node;
return null;
}
+ @override
Object visitTypeAlias(TypeAlias node) {
_declarationNode = node;
return null;

Powered by Google App Engine
This is Rietveld 408576698