Version 0.5.16.0
svn merge -r 23744:23796 https://dart.googlecode.com/svn/branches/bleeding_edge trunk
git-svn-id: http://dart.googlecode.com/svn/trunk@23799 260f80e4-7a28-3924-810f-c04153c831b5
diff --git a/pkg/analyzer_experimental/lib/src/generated/ast.dart b/pkg/analyzer_experimental/lib/src/generated/ast.dart
index e242155..f18ed43 100644
--- a/pkg/analyzer_experimental/lib/src/generated/ast.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/ast.dart
@@ -81,12 +81,12 @@
* @return the number of characters in the node's source range
*/
int get length {
- Token beginToken2 = beginToken;
- Token endToken2 = endToken;
- if (beginToken2 == null || endToken2 == null) {
+ Token beginToken = this.beginToken;
+ Token endToken = this.endToken;
+ if (beginToken == null || endToken == null) {
return -1;
}
- return endToken2.offset + endToken2.length - beginToken2.offset;
+ return endToken.offset + endToken.length - beginToken.offset;
}
/**
@@ -96,8 +96,8 @@
* range
*/
int get offset {
- Token beginToken2 = beginToken;
- if (beginToken2 == null) {
+ Token beginToken = this.beginToken;
+ if (beginToken == null) {
return -1;
}
return beginToken.offset;
@@ -131,10 +131,10 @@
*/
ASTNode get root {
ASTNode root = this;
- ASTNode parent2 = parent;
- while (parent2 != null) {
- root = parent2;
- parent2 = root.parent;
+ ASTNode parent = this.parent;
+ while (parent != null) {
+ root = parent;
+ parent = root.parent;
}
return root;
}
@@ -1460,11 +1460,11 @@
if (_propagatedElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _propagatedElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _propagatedElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
/**
@@ -1480,11 +1480,11 @@
if (_staticElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _staticElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _staticElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
}
/**
@@ -2984,11 +2984,11 @@
}
}
int get length {
- Token endToken2 = endToken;
- if (endToken2 == null) {
+ Token endToken = this.endToken;
+ if (endToken == null) {
return 0;
}
- return endToken2.offset + endToken2.length;
+ return endToken.offset + endToken.length;
}
/**
@@ -4084,11 +4084,11 @@
DeclaredIdentifier({Comment comment, List<Annotation> metadata, Token keyword, TypeName type, SimpleIdentifier identifier}) : this.full(comment, metadata, keyword, type, identifier);
accept(ASTVisitor visitor) => visitor.visitDeclaredIdentifier(this);
LocalVariableElement get element {
- SimpleIdentifier identifier2 = identifier;
- if (identifier2 == null) {
+ SimpleIdentifier identifier = this.identifier;
+ if (identifier == null) {
return null;
}
- return identifier2.element as LocalVariableElement;
+ return identifier.element as LocalVariableElement;
}
Token get endToken => _identifier.endToken;
@@ -4740,9 +4740,9 @@
ExportDirective({Comment comment, List<Annotation> metadata, Token keyword, StringLiteral libraryUri, List<Combinator> combinators, Token semicolon}) : this.full(comment, metadata, keyword, libraryUri, combinators, semicolon);
accept(ASTVisitor visitor) => visitor.visitExportDirective(this);
LibraryElement get uriElement {
- Element element2 = element;
- if (element2 is ExportElement) {
- return ((element2 as ExportElement)).exportedLibrary;
+ Element element = this.element;
+ if (element is ExportElement) {
+ return ((element as ExportElement)).exportedLibrary;
}
return null;
}
@@ -4782,23 +4782,23 @@
* will be bound
*/
ParameterElement get parameterElement {
- ASTNode parent2 = parent;
- if (parent2 is ArgumentList) {
- return ((parent2 as ArgumentList)).getPropagatedParameterElementFor(this);
- } else if (parent2 is IndexExpression) {
- IndexExpression indexExpression = parent2 as IndexExpression;
+ ASTNode parent = this.parent;
+ if (parent is ArgumentList) {
+ return ((parent as ArgumentList)).getPropagatedParameterElementFor(this);
+ } else if (parent is IndexExpression) {
+ IndexExpression indexExpression = parent as IndexExpression;
if (identical(indexExpression.index, this)) {
return indexExpression.propagatedParameterElementForIndex;
}
- } else if (parent2 is BinaryExpression) {
- BinaryExpression binaryExpression = parent2 as BinaryExpression;
+ } else if (parent is BinaryExpression) {
+ BinaryExpression binaryExpression = parent as BinaryExpression;
if (identical(binaryExpression.rightOperand, this)) {
return binaryExpression.propagatedParameterElementForRightOperand;
}
- } else if (parent2 is PrefixExpression) {
- return ((parent2 as PrefixExpression)).propagatedParameterElementForOperand;
- } else if (parent2 is PostfixExpression) {
- return ((parent2 as PostfixExpression)).propagatedParameterElementForOperand;
+ } else if (parent is PrefixExpression) {
+ return ((parent as PrefixExpression)).propagatedParameterElementForOperand;
+ } else if (parent is PostfixExpression) {
+ return ((parent as PostfixExpression)).propagatedParameterElementForOperand;
}
return null;
}
@@ -4820,23 +4820,23 @@
* will be bound
*/
ParameterElement get staticParameterElement {
- ASTNode parent2 = parent;
- if (parent2 is ArgumentList) {
- return ((parent2 as ArgumentList)).getStaticParameterElementFor(this);
- } else if (parent2 is IndexExpression) {
- IndexExpression indexExpression = parent2 as IndexExpression;
+ ASTNode parent = this.parent;
+ if (parent is ArgumentList) {
+ return ((parent as ArgumentList)).getStaticParameterElementFor(this);
+ } else if (parent is IndexExpression) {
+ IndexExpression indexExpression = parent as IndexExpression;
if (identical(indexExpression.index, this)) {
return indexExpression.staticParameterElementForIndex;
}
- } else if (parent2 is BinaryExpression) {
- BinaryExpression binaryExpression = parent2 as BinaryExpression;
+ } else if (parent is BinaryExpression) {
+ BinaryExpression binaryExpression = parent as BinaryExpression;
if (identical(binaryExpression.rightOperand, this)) {
return binaryExpression.staticParameterElementForRightOperand;
}
- } else if (parent2 is PrefixExpression) {
- return ((parent2 as PrefixExpression)).staticParameterElementForOperand;
- } else if (parent2 is PostfixExpression) {
- return ((parent2 as PostfixExpression)).staticParameterElementForOperand;
+ } else if (parent is PrefixExpression) {
+ return ((parent as PrefixExpression)).staticParameterElementForOperand;
+ } else if (parent is PostfixExpression) {
+ return ((parent as PostfixExpression)).staticParameterElementForOperand;
}
return null;
}
@@ -5811,11 +5811,11 @@
* @return the element representing this parameter
*/
ParameterElement get element {
- SimpleIdentifier identifier2 = identifier;
- if (identifier2 == null) {
+ SimpleIdentifier identifier = this.identifier;
+ if (identifier == null) {
return null;
}
- return identifier2.element as ParameterElement;
+ return identifier.element as ParameterElement;
}
/**
@@ -7072,9 +7072,9 @@
*/
SimpleIdentifier get prefix => _prefix;
LibraryElement get uriElement {
- Element element2 = element;
- if (element2 is ImportElement) {
- return ((element2 as ImportElement)).importedLibrary;
+ Element element = this.element;
+ if (element is ImportElement) {
+ return ((element as ImportElement)).importedLibrary;
}
return null;
}
@@ -7287,9 +7287,9 @@
* @return {@code true} if this expression is in a context where the operator '\[\]' will be invoked
*/
bool inGetterContext() {
- ASTNode parent2 = parent;
- if (parent2 is AssignmentExpression) {
- AssignmentExpression assignment = parent2 as AssignmentExpression;
+ ASTNode parent = this.parent;
+ if (parent is AssignmentExpression) {
+ AssignmentExpression assignment = parent as AssignmentExpression;
if (identical(assignment.leftHandSide, this) && identical(assignment.operator.type, TokenType.EQ)) {
return false;
}
@@ -7306,13 +7306,13 @@
* invoked
*/
bool inSetterContext() {
- ASTNode parent2 = parent;
- if (parent2 is PrefixExpression) {
- return ((parent2 as PrefixExpression)).operator.type.isIncrementOperator();
- } else if (parent2 is PostfixExpression) {
+ ASTNode parent = this.parent;
+ if (parent is PrefixExpression) {
+ return ((parent as PrefixExpression)).operator.type.isIncrementOperator();
+ } else if (parent is PostfixExpression) {
return true;
- } else if (parent2 is AssignmentExpression) {
- return identical(((parent2 as AssignmentExpression)).leftHandSide, this);
+ } else if (parent is AssignmentExpression) {
+ return identical(((parent as AssignmentExpression)).leftHandSide, this);
}
return false;
}
@@ -7400,11 +7400,11 @@
if (_propagatedElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _propagatedElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _propagatedElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
/**
@@ -7420,11 +7420,11 @@
if (_staticElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _staticElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _staticElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
}
/**
@@ -8291,9 +8291,9 @@
if (token != null) {
return token;
}
- TypeArgumentList typeArguments2 = typeArguments;
- if (typeArguments2 != null) {
- return typeArguments2.beginToken;
+ TypeArgumentList typeArguments = this.typeArguments;
+ if (typeArguments != null) {
+ return typeArguments.beginToken;
}
return _leftBracket;
}
@@ -8403,9 +8403,9 @@
if (token != null) {
return token;
}
- TypeArgumentList typeArguments2 = typeArguments;
- if (typeArguments2 != null) {
- return typeArguments2.beginToken;
+ TypeArgumentList typeArguments = this.typeArguments;
+ if (typeArguments != null) {
+ return typeArguments.beginToken;
}
return _leftBracket;
}
@@ -9019,9 +9019,9 @@
* @return the element representing the parameter being named by this expression
*/
ParameterElement get element {
- Element element2 = _name.label.element;
- if (element2 is ParameterElement) {
- return element2 as ParameterElement;
+ Element element = _name.label.element;
+ if (element is ParameterElement) {
+ return element as ParameterElement;
}
return null;
}
@@ -9268,9 +9268,9 @@
Comment get documentationComment => _comment;
SimpleIdentifier get identifier => _identifier;
ParameterKind get kind {
- ASTNode parent2 = parent;
- if (parent2 is DefaultFormalParameter) {
- return ((parent2 as DefaultFormalParameter)).kind;
+ ASTNode parent = this.parent;
+ if (parent is DefaultFormalParameter) {
+ return ((parent as DefaultFormalParameter)).kind;
}
return ParameterKind.REQUIRED;
}
@@ -9812,11 +9812,11 @@
if (_propagatedElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _propagatedElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _propagatedElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
/**
@@ -9832,11 +9832,11 @@
if (_staticElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _staticElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _staticElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
}
/**
@@ -9967,11 +9967,11 @@
if (_propagatedElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _propagatedElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _propagatedElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
/**
@@ -9987,11 +9987,11 @@
if (_staticElement == null) {
return null;
}
- List<ParameterElement> parameters2 = _staticElement.parameters;
- if (parameters2.length < 1) {
+ List<ParameterElement> parameters = _staticElement.parameters;
+ if (parameters.length < 1) {
return null;
}
- return parameters2[0];
+ return parameters[0];
}
}
/**
@@ -10784,30 +10784,30 @@
* @return {@code true} if this identifier is the name being declared in a declaration
*/
bool inDeclarationContext() {
- ASTNode parent2 = parent;
- if (parent2 is CatchClause) {
- CatchClause clause = parent2 as CatchClause;
+ ASTNode parent = this.parent;
+ if (parent is CatchClause) {
+ CatchClause clause = parent as CatchClause;
return identical(this, clause.exceptionParameter) || identical(this, clause.stackTraceParameter);
- } else if (parent2 is ClassDeclaration) {
- return identical(this, ((parent2 as ClassDeclaration)).name);
- } else if (parent2 is ClassTypeAlias) {
- return identical(this, ((parent2 as ClassTypeAlias)).name);
- } else if (parent2 is ConstructorDeclaration) {
- return identical(this, ((parent2 as ConstructorDeclaration)).name);
- } else if (parent2 is FunctionDeclaration) {
- return identical(this, ((parent2 as FunctionDeclaration)).name);
- } else if (parent2 is FunctionTypeAlias) {
- return identical(this, ((parent2 as FunctionTypeAlias)).name);
- } else if (parent2 is Label) {
- return identical(this, ((parent2 as Label)).label) && (parent2.parent is LabeledStatement);
- } else if (parent2 is MethodDeclaration) {
- return identical(this, ((parent2 as MethodDeclaration)).name);
- } else if (parent2 is FunctionTypedFormalParameter || parent2 is SimpleFormalParameter) {
- return identical(this, ((parent2 as NormalFormalParameter)).identifier);
- } else if (parent2 is TypeParameter) {
- return identical(this, ((parent2 as TypeParameter)).name);
- } else if (parent2 is VariableDeclaration) {
- return identical(this, ((parent2 as VariableDeclaration)).name);
+ } else if (parent is ClassDeclaration) {
+ return identical(this, ((parent as ClassDeclaration)).name);
+ } else if (parent is ClassTypeAlias) {
+ return identical(this, ((parent as ClassTypeAlias)).name);
+ } else if (parent is ConstructorDeclaration) {
+ return identical(this, ((parent as ConstructorDeclaration)).name);
+ } else if (parent is FunctionDeclaration) {
+ return identical(this, ((parent as FunctionDeclaration)).name);
+ } else if (parent is FunctionTypeAlias) {
+ return identical(this, ((parent as FunctionTypeAlias)).name);
+ } else if (parent is Label) {
+ return identical(this, ((parent as Label)).label) && (parent.parent is LabeledStatement);
+ } else if (parent is MethodDeclaration) {
+ return identical(this, ((parent as MethodDeclaration)).name);
+ } else if (parent is FunctionTypedFormalParameter || parent is SimpleFormalParameter) {
+ return identical(this, ((parent as NormalFormalParameter)).identifier);
+ } else if (parent is TypeParameter) {
+ return identical(this, ((parent as TypeParameter)).name);
+ } else if (parent is VariableDeclaration) {
+ return identical(this, ((parent as VariableDeclaration)).name);
}
return false;
}
@@ -10820,28 +10820,28 @@
* @return {@code true} if this expression is in a context where a getter will be invoked
*/
bool inGetterContext() {
- ASTNode parent2 = parent;
+ ASTNode parent = this.parent;
ASTNode target = this;
- if (parent2 is PrefixedIdentifier) {
- PrefixedIdentifier prefixed = parent2 as PrefixedIdentifier;
+ if (parent is PrefixedIdentifier) {
+ PrefixedIdentifier prefixed = parent as PrefixedIdentifier;
if (identical(prefixed.prefix, this)) {
return true;
}
- parent2 = prefixed.parent;
+ parent = prefixed.parent;
target = prefixed;
- } else if (parent2 is PropertyAccess) {
- PropertyAccess access = parent2 as PropertyAccess;
+ } else if (parent is PropertyAccess) {
+ PropertyAccess access = parent as PropertyAccess;
if (identical(access.target, this)) {
return true;
}
- parent2 = access.parent;
+ parent = access.parent;
target = access;
}
- if (parent2 is Label) {
+ if (parent is Label) {
return false;
}
- if (parent2 is AssignmentExpression) {
- AssignmentExpression expr = parent2 as AssignmentExpression;
+ if (parent is AssignmentExpression) {
+ AssignmentExpression expr = parent as AssignmentExpression;
if (identical(expr.leftHandSide, target) && identical(expr.operator.type, TokenType.EQ)) {
return false;
}
@@ -10857,29 +10857,29 @@
* @return {@code true} if this expression is in a context where a setter will be invoked
*/
bool inSetterContext() {
- ASTNode parent2 = parent;
+ ASTNode parent = this.parent;
ASTNode target = this;
- if (parent2 is PrefixedIdentifier) {
- PrefixedIdentifier prefixed = parent2 as PrefixedIdentifier;
+ if (parent is PrefixedIdentifier) {
+ PrefixedIdentifier prefixed = parent as PrefixedIdentifier;
if (identical(prefixed.prefix, this)) {
return false;
}
- parent2 = prefixed.parent;
+ parent = prefixed.parent;
target = prefixed;
- } else if (parent2 is PropertyAccess) {
- PropertyAccess access = parent2 as PropertyAccess;
+ } else if (parent is PropertyAccess) {
+ PropertyAccess access = parent as PropertyAccess;
if (identical(access.target, this)) {
return false;
}
- parent2 = access.parent;
+ parent = access.parent;
target = access;
}
- if (parent2 is PrefixExpression) {
- return ((parent2 as PrefixExpression)).operator.type.isIncrementOperator();
- } else if (parent2 is PostfixExpression) {
+ if (parent is PrefixExpression) {
+ return ((parent as PrefixExpression)).operator.type.isIncrementOperator();
+ } else if (parent is PostfixExpression) {
return true;
- } else if (parent2 is AssignmentExpression) {
- return identical(((parent2 as AssignmentExpression)).leftHandSide, target);
+ } else if (parent is AssignmentExpression) {
+ return identical(((parent as AssignmentExpression)).leftHandSide, target);
}
return false;
}
@@ -12703,8 +12703,8 @@
* @return {@code true} if this variable was declared with the 'const' modifier
*/
bool isConst() {
- ASTNode parent2 = parent;
- return parent2 is VariableDeclarationList && ((parent2 as VariableDeclarationList)).isConst();
+ ASTNode parent = this.parent;
+ return parent is VariableDeclarationList && ((parent as VariableDeclarationList)).isConst();
}
/**
@@ -12714,8 +12714,8 @@
* @return {@code true} if this variable was declared with the 'final' modifier
*/
bool isFinal() {
- ASTNode parent2 = parent;
- return parent2 is VariableDeclarationList && ((parent2 as VariableDeclarationList)).isFinal();
+ ASTNode parent = this.parent;
+ return parent is VariableDeclarationList && ((parent as VariableDeclarationList)).isFinal();
}
/**
@@ -13228,130 +13228,130 @@
return builder.toString();
}
Object visitBinaryExpression(BinaryExpression node) {
- Object leftOperand2 = node.leftOperand.accept(this);
- if (identical(leftOperand2, NOT_A_CONSTANT)) {
- return leftOperand2;
+ Object leftOperand = node.leftOperand.accept(this);
+ if (identical(leftOperand, NOT_A_CONSTANT)) {
+ return leftOperand;
}
- Object rightOperand2 = node.rightOperand.accept(this);
- if (identical(rightOperand2, NOT_A_CONSTANT)) {
- return rightOperand2;
+ Object rightOperand = node.rightOperand.accept(this);
+ if (identical(rightOperand, NOT_A_CONSTANT)) {
+ return rightOperand;
}
while (true) {
if (node.operator.type == TokenType.AMPERSAND) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) & (rightOperand2 as int);
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) & (rightOperand as int);
}
} else if (node.operator.type == TokenType.AMPERSAND_AMPERSAND) {
- if (leftOperand2 is bool && rightOperand2 is bool) {
- return ((leftOperand2 as bool)) && ((rightOperand2 as bool));
+ if (leftOperand is bool && rightOperand is bool) {
+ return ((leftOperand as bool)) && ((rightOperand as bool));
}
} else if (node.operator.type == TokenType.BANG_EQ) {
- if (leftOperand2 is bool && rightOperand2 is bool) {
- return ((leftOperand2 as bool)) != ((rightOperand2 as bool));
- } else if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) != rightOperand2;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) != rightOperand2;
- } else if (leftOperand2 is String && rightOperand2 is String) {
- return ((leftOperand2 as String)) != rightOperand2;
+ if (leftOperand is bool && rightOperand is bool) {
+ return ((leftOperand as bool)) != ((rightOperand as bool));
+ } else if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) != rightOperand;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) != rightOperand;
+ } else if (leftOperand is String && rightOperand is String) {
+ return ((leftOperand as String)) != rightOperand;
}
} else if (node.operator.type == TokenType.BAR) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) | (rightOperand2 as int);
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) | (rightOperand as int);
}
} else if (node.operator.type == TokenType.BAR_BAR) {
- if (leftOperand2 is bool && rightOperand2 is bool) {
- return ((leftOperand2 as bool)) || ((rightOperand2 as bool));
+ if (leftOperand is bool && rightOperand is bool) {
+ return ((leftOperand as bool)) || ((rightOperand as bool));
}
} else if (node.operator.type == TokenType.CARET) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) ^ (rightOperand2 as int);
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) ^ (rightOperand as int);
}
} else if (node.operator.type == TokenType.EQ_EQ) {
- if (leftOperand2 is bool && rightOperand2 is bool) {
- return identical(((leftOperand2 as bool)), ((rightOperand2 as bool)));
- } else if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) == rightOperand2;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) == rightOperand2;
- } else if (leftOperand2 is String && rightOperand2 is String) {
- return ((leftOperand2 as String)) == rightOperand2;
+ if (leftOperand is bool && rightOperand is bool) {
+ return identical(((leftOperand as bool)), ((rightOperand as bool)));
+ } else if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) == rightOperand;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) == rightOperand;
+ } else if (leftOperand is String && rightOperand is String) {
+ return ((leftOperand as String)) == rightOperand;
}
} else if (node.operator.type == TokenType.GT) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)).compareTo((rightOperand2 as int)) > 0;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)).compareTo((rightOperand2 as double)) > 0;
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)).compareTo((rightOperand as int)) > 0;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)).compareTo((rightOperand as double)) > 0;
}
} else if (node.operator.type == TokenType.GT_EQ) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)).compareTo((rightOperand2 as int)) >= 0;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)).compareTo((rightOperand2 as double)) >= 0;
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)).compareTo((rightOperand as int)) >= 0;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)).compareTo((rightOperand as double)) >= 0;
}
} else if (node.operator.type == TokenType.GT_GT) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) >> ((rightOperand2 as int));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) >> ((rightOperand as int));
}
} else if (node.operator.type == TokenType.LT) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)).compareTo((rightOperand2 as int)) < 0;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)).compareTo((rightOperand2 as double)) < 0;
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)).compareTo((rightOperand as int)) < 0;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)).compareTo((rightOperand as double)) < 0;
}
} else if (node.operator.type == TokenType.LT_EQ) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)).compareTo((rightOperand2 as int)) <= 0;
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)).compareTo((rightOperand2 as double)) <= 0;
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)).compareTo((rightOperand as int)) <= 0;
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)).compareTo((rightOperand as double)) <= 0;
}
} else if (node.operator.type == TokenType.LT_LT) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) << ((rightOperand2 as int));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) << ((rightOperand as int));
}
} else if (node.operator.type == TokenType.MINUS) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) - (rightOperand2 as int);
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) - ((rightOperand2 as double));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) - (rightOperand as int);
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) - ((rightOperand as double));
}
} else if (node.operator.type == TokenType.PERCENT) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)).remainder((rightOperand2 as int));
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) % ((rightOperand2 as double));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)).remainder((rightOperand as int));
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) % ((rightOperand as double));
}
} else if (node.operator.type == TokenType.PLUS) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) + (rightOperand2 as int);
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) + ((rightOperand2 as double));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) + (rightOperand as int);
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) + ((rightOperand as double));
}
} else if (node.operator.type == TokenType.STAR) {
- if (leftOperand2 is int && rightOperand2 is int) {
- return ((leftOperand2 as int)) * (rightOperand2 as int);
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) * ((rightOperand2 as double));
+ if (leftOperand is int && rightOperand is int) {
+ return ((leftOperand as int)) * (rightOperand as int);
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) * ((rightOperand as double));
}
} else if (node.operator.type == TokenType.SLASH) {
- if (leftOperand2 is int && rightOperand2 is int) {
- if (rightOperand2 != 0) {
- return ((leftOperand2 as int)) ~/ (rightOperand2 as int);
+ if (leftOperand is int && rightOperand is int) {
+ if (rightOperand != 0) {
+ return ((leftOperand as int)) ~/ (rightOperand as int);
} else {
- return ((leftOperand2 as int)).toDouble() / ((rightOperand2 as int)).toDouble();
+ return ((leftOperand as int)).toDouble() / ((rightOperand as int)).toDouble();
}
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) / ((rightOperand2 as double));
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) / ((rightOperand as double));
}
} else if (node.operator.type == TokenType.TILDE_SLASH) {
- if (leftOperand2 is int && rightOperand2 is int) {
- if (rightOperand2 != 0) {
- return ((leftOperand2 as int)) ~/ (rightOperand2 as int);
+ if (leftOperand is int && rightOperand is int) {
+ if (rightOperand != 0) {
+ return ((leftOperand as int)) ~/ (rightOperand as int);
} else {
return 0;
}
- } else if (leftOperand2 is double && rightOperand2 is double) {
- return ((leftOperand2 as double)) ~/ ((rightOperand2 as double));
+ } else if (leftOperand is double && rightOperand is double) {
+ return ((leftOperand as double)) ~/ ((rightOperand as double));
}
}
break;
@@ -13383,12 +13383,12 @@
Object visitMapLiteral(MapLiteral node) {
Map<String, Object> map = new Map<String, Object>();
for (MapLiteralEntry entry in node.entries) {
- Object key2 = entry.key.accept(this);
- Object value2 = entry.value.accept(this);
- if (key2 is! String || identical(value2, NOT_A_CONSTANT)) {
+ Object key = entry.key.accept(this);
+ Object value = entry.value.accept(this);
+ if (key is! String || identical(value, NOT_A_CONSTANT)) {
return NOT_A_CONSTANT;
}
- map[(key2 as String)] = value2;
+ map[(key as String)] = value;
}
return map;
}
@@ -13398,28 +13398,28 @@
Object visitParenthesizedExpression(ParenthesizedExpression node) => node.expression.accept(this);
Object visitPrefixedIdentifier(PrefixedIdentifier node) => getConstantValue(null);
Object visitPrefixExpression(PrefixExpression node) {
- Object operand2 = node.operand.accept(this);
- if (identical(operand2, NOT_A_CONSTANT)) {
- return operand2;
+ Object operand = node.operand.accept(this);
+ if (identical(operand, NOT_A_CONSTANT)) {
+ return operand;
}
while (true) {
if (node.operator.type == TokenType.BANG) {
- if (identical(operand2, true)) {
+ if (identical(operand, true)) {
return false;
- } else if (identical(operand2, false)) {
+ } else if (identical(operand, false)) {
return true;
}
} else if (node.operator.type == TokenType.TILDE) {
- if (operand2 is int) {
- return ~((operand2 as int));
+ if (operand is int) {
+ return ~((operand as int));
}
} else if (node.operator.type == TokenType.MINUS) {
- if (operand2 == null) {
+ if (operand == null) {
return null;
- } else if (operand2 is int) {
- return -((operand2 as int));
- } else if (operand2 is double) {
- return -((operand2 as double));
+ } else if (operand is int) {
+ return -((operand as int));
+ } else if (operand is double) {
+ return -((operand as double));
}
}
break;
@@ -13482,27 +13482,27 @@
Element visitConstructorDeclaration(ConstructorDeclaration node) => node.element;
Element visitFunctionDeclaration(FunctionDeclaration node) => node.element;
Element visitIdentifier(Identifier node) {
- ASTNode parent2 = node.parent;
- if (parent2 is ConstructorDeclaration) {
- ConstructorDeclaration decl = parent2 as ConstructorDeclaration;
- Identifier returnType2 = decl.returnType;
- if (identical(returnType2, node)) {
- SimpleIdentifier name2 = decl.name;
- if (name2 != null) {
- return name2.element;
+ ASTNode parent = node.parent;
+ if (parent is ConstructorDeclaration) {
+ ConstructorDeclaration decl = parent as ConstructorDeclaration;
+ Identifier returnType = decl.returnType;
+ if (identical(returnType, node)) {
+ SimpleIdentifier name = decl.name;
+ if (name != null) {
+ return name.element;
}
- Element element2 = node.element;
- if (element2 is ClassElement) {
- return ((element2 as ClassElement)).unnamedConstructor;
+ Element element = node.element;
+ if (element is ClassElement) {
+ return ((element as ClassElement)).unnamedConstructor;
}
}
}
- if (parent2 is LibraryIdentifier) {
- ASTNode grandParent = ((parent2 as LibraryIdentifier)).parent;
+ if (parent is LibraryIdentifier) {
+ ASTNode grandParent = ((parent as LibraryIdentifier)).parent;
if (grandParent is PartOfDirective) {
- Element element3 = ((grandParent as PartOfDirective)).element;
- if (element3 is LibraryElement) {
- return ((element3 as LibraryElement)).definingCompilationUnit;
+ Element element = ((grandParent as PartOfDirective)).element;
+ if (element is LibraryElement) {
+ return ((element as LibraryElement)).definingCompilationUnit;
}
}
}
@@ -13518,9 +13518,9 @@
Element visitPrefixedIdentifier(PrefixedIdentifier node) => node.element;
Element visitPrefixExpression(PrefixExpression node) => node.element;
Element visitStringLiteral(StringLiteral node) {
- ASTNode parent2 = node.parent;
- if (parent2 is UriBasedDirective) {
- return ((parent2 as UriBasedDirective)).uriElement;
+ ASTNode parent = node.parent;
+ if (parent is UriBasedDirective) {
+ return ((parent as UriBasedDirective)).uriElement;
}
return null;
}
@@ -14443,12 +14443,12 @@
Object visitComment(Comment node) => null;
Object visitCommentReference(CommentReference node) => null;
Object visitCompilationUnit(CompilationUnit node) {
- ScriptTag scriptTag2 = node.scriptTag;
- NodeList<Directive> directives2 = node.directives;
- visit(scriptTag2);
- String prefix = scriptTag2 == null ? "" : " ";
- visitList4(prefix, directives2, " ");
- prefix = scriptTag2 == null && directives2.isEmpty ? "" : " ";
+ ScriptTag scriptTag = node.scriptTag;
+ NodeList<Directive> directives = node.directives;
+ visit(scriptTag);
+ String prefix = scriptTag == null ? "" : " ";
+ visitList4(prefix, directives, " ");
+ prefix = scriptTag == null && directives.isEmpty ? "" : " ";
visitList4(prefix, node.declarations, " ");
return null;
}
@@ -14575,10 +14575,10 @@
Object visitFormalParameterList(FormalParameterList node) {
String groupEnd = null;
_writer.print('(');
- NodeList<FormalParameter> parameters2 = node.parameters;
- int size2 = parameters2.length;
- for (int i = 0; i < size2; i++) {
- FormalParameter parameter = parameters2[i];
+ NodeList<FormalParameter> parameters = node.parameters;
+ int size = parameters.length;
+ for (int i = 0; i < size; i++) {
+ FormalParameter parameter = parameters[i];
if (i > 0) {
_writer.print(", ");
}
@@ -14600,10 +14600,10 @@
return null;
}
Object visitForStatement(ForStatement node) {
- Expression initialization2 = node.initialization;
+ Expression initialization = node.initialization;
_writer.print("for (");
- if (initialization2 != null) {
- visit(initialization2);
+ if (initialization != null) {
+ visit(initialization);
} else {
visit(node.variables);
}
@@ -14866,12 +14866,12 @@
return null;
}
Object visitReturnStatement(ReturnStatement node) {
- Expression expression2 = node.expression;
- if (expression2 == null) {
+ Expression expression = node.expression;
+ if (expression == null) {
_writer.print("return;");
} else {
_writer.print("return ");
- expression2.accept(this);
+ expression.accept(this);
_writer.print(";");
}
return null;
@@ -15080,8 +15080,8 @@
*/
void visitList2(NodeList<ASTNode> nodes, String separator) {
if (nodes != null) {
- int size2 = nodes.length;
- for (int i = 0; i < size2; i++) {
+ int size = nodes.length;
+ for (int i = 0; i < size; i++) {
if (i > 0) {
_writer.print(separator);
}
@@ -15098,9 +15098,9 @@
*/
void visitList3(NodeList<ASTNode> nodes, String separator, String suffix) {
if (nodes != null) {
- int size2 = nodes.length;
- if (size2 > 0) {
- for (int i = 0; i < size2; i++) {
+ int size = nodes.length;
+ if (size > 0) {
+ for (int i = 0; i < size; i++) {
if (i > 0) {
_writer.print(separator);
}
@@ -15119,10 +15119,10 @@
*/
void visitList4(String prefix, NodeList<ASTNode> nodes, String separator) {
if (nodes != null) {
- int size2 = nodes.length;
- if (size2 > 0) {
+ int size = nodes.length;
+ if (size > 0) {
_writer.print(prefix);
- for (int i = 0; i < size2; i++) {
+ for (int i = 0; i < size; i++) {
if (i > 0) {
_writer.print(separator);
}
@@ -15201,11 +15201,11 @@
ImplementsClause visitImplementsClause(ImplementsClause node) => new ImplementsClause.full(node.keyword, clone3(node.interfaces));
ImportDirective visitImportDirective(ImportDirective node) => new ImportDirective.full(clone2(node.documentationComment), clone3(node.metadata), node.keyword, clone2(node.uri), node.asToken, clone2(node.prefix), clone3(node.combinators), node.semicolon);
IndexExpression visitIndexExpression(IndexExpression node) {
- Token period2 = node.period;
- if (period2 == null) {
+ Token period = node.period;
+ if (period == null) {
return new IndexExpression.forTarget_full(clone2(node.array), node.leftBracket, clone2(node.index), node.rightBracket);
} else {
- return new IndexExpression.forCascade_full(period2, node.leftBracket, clone2(node.index), node.rightBracket);
+ return new IndexExpression.forCascade_full(period, node.leftBracket, clone2(node.index), node.rightBracket);
}
}
InstanceCreationExpression visitInstanceCreationExpression(InstanceCreationExpression node) => new InstanceCreationExpression.full(node.keyword, clone2(node.constructorName), clone2(node.argumentList));
@@ -15352,9 +15352,9 @@
}
Object visitNode(ASTNode node) {
_immediateChild = node;
- ASTNode parent2 = node.parent;
- if (parent2 != null) {
- parent2.accept(this);
+ ASTNode parent = node.parent;
+ if (parent != null) {
+ parent.accept(this);
}
return null;
}
@@ -15377,9 +15377,9 @@
}
void addToScope(SimpleIdentifier identifier) {
if (identifier != null && isInRange(identifier)) {
- String name2 = identifier.name;
- if (!_locals.containsKey(name2)) {
- _locals[name2] = identifier;
+ String name = identifier.name;
+ if (!_locals.containsKey(name)) {
+ _locals[name] = identifier;
}
}
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/constant.dart b/pkg/analyzer_experimental/lib/src/generated/constant.dart
index 41d94c9..2b39d59 100644
--- a/pkg/analyzer_experimental/lib/src/generated/constant.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/constant.dart
@@ -60,8 +60,8 @@
}
List<AnalysisError> errors = new List<AnalysisError>();
for (ErrorResult_ErrorData data in ((result as ErrorResult)).errorData) {
- ASTNode node2 = data.node;
- errors.add(new AnalysisError.con2(_source, node2.offset, node2.length, data.errorCode, []));
+ ASTNode node = data.node;
+ errors.add(new AnalysisError.con2(_source, node.offset, node.length, data.errorCode, []));
}
return EvaluationResult.forErrors(new List.from(errors));
}
@@ -150,11 +150,11 @@
Map<VariableElement, VariableDeclaration> get variableMap => _variableMap;
Object visitVariableDeclaration(VariableDeclaration node) {
super.visitVariableDeclaration(node);
- Expression initializer2 = node.initializer;
- if (initializer2 != null && node.isConst()) {
- VariableElement element2 = node.element;
- if (element2 != null) {
- _variableMap[element2] = node;
+ Expression initializer = node.initializer;
+ if (initializer != null && node.isConst()) {
+ VariableElement element = node.element;
+ if (element != null) {
+ _variableMap[element] = node;
}
}
return null;
@@ -238,9 +238,9 @@
if (result is ErrorResult) {
List<AnalysisError> errors = new List<AnalysisError>();
for (ErrorResult_ErrorData data in ((result as ErrorResult)).errorData) {
- ASTNode node2 = data.node;
- Source source2 = variable.getAncestor(CompilationUnitElement).source;
- errors.add(new AnalysisError.con2(source2, node2.offset, node2.length, data.errorCode, []));
+ ASTNode node = data.node;
+ Source source = variable.getAncestor(CompilationUnitElement).source;
+ errors.add(new AnalysisError.con2(source, node.offset, node.length, data.errorCode, []));
}
}
}
@@ -390,18 +390,18 @@
return ValidResult.RESULT_OBJECT;
}
EvaluationResultImpl visitMethodInvocation(MethodInvocation node) {
- Element element2 = node.methodName.element;
- if (element2 is FunctionElement) {
- FunctionElement function = element2 as FunctionElement;
+ Element element = node.methodName.element;
+ if (element is FunctionElement) {
+ FunctionElement function = element as FunctionElement;
if (function.name == "identical") {
- NodeList<Expression> arguments2 = node.argumentList.arguments;
- if (arguments2.length == 2) {
- Element enclosingElement2 = function.enclosingElement;
- if (enclosingElement2 is CompilationUnitElement) {
- LibraryElement library2 = ((enclosingElement2 as CompilationUnitElement)).library;
- if (library2.isDartCore()) {
- EvaluationResultImpl leftArgument = arguments2[0].accept(this);
- EvaluationResultImpl rightArgument = arguments2[1].accept(this);
+ NodeList<Expression> arguments = node.argumentList.arguments;
+ if (arguments.length == 2) {
+ Element enclosingElement = function.enclosingElement;
+ if (enclosingElement is CompilationUnitElement) {
+ LibraryElement library = ((enclosingElement as CompilationUnitElement)).library;
+ if (library.isDartCore()) {
+ EvaluationResultImpl leftArgument = arguments[0].accept(this);
+ EvaluationResultImpl rightArgument = arguments[1].accept(this);
return leftArgument.equalEqual(node, rightArgument);
}
}
@@ -415,17 +415,17 @@
EvaluationResultImpl visitParenthesizedExpression(ParenthesizedExpression node) => node.expression.accept(this);
EvaluationResultImpl visitPrefixedIdentifier(PrefixedIdentifier node) => getConstantValue(node, node.element);
EvaluationResultImpl visitPrefixExpression(PrefixExpression node) {
- EvaluationResultImpl operand2 = node.operand.accept(this);
- if (operand2 is ValidResult && ((operand2 as ValidResult)).isNull()) {
+ EvaluationResultImpl operand = node.operand.accept(this);
+ if (operand is ValidResult && ((operand as ValidResult)).isNull()) {
return error(node, CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION);
}
while (true) {
if (node.operator.type == TokenType.BANG) {
- return operand2.logicalNot(node);
+ return operand.logicalNot(node);
} else if (node.operator.type == TokenType.TILDE) {
- return operand2.bitNot(node);
+ return operand.bitNot(node);
} else if (node.operator.type == TokenType.MINUS) {
- return operand2.negated(node);
+ return operand.negated(node);
}
break;
}
@@ -879,12 +879,12 @@
this._referenceGraph = referenceGraph;
}
Object visitSimpleIdentifier(SimpleIdentifier node) {
- Element element2 = node.element;
- if (element2 is PropertyAccessorElement) {
- element2 = ((element2 as PropertyAccessorElement)).variable;
+ Element element = node.element;
+ if (element is PropertyAccessorElement) {
+ element = ((element as PropertyAccessorElement)).variable;
}
- if (element2 is VariableElement) {
- VariableElement variable = element2 as VariableElement;
+ if (element is VariableElement) {
+ VariableElement variable = element as VariableElement;
if (variable.isConst()) {
_referenceGraph.addEdge(_source, variable);
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/element.dart b/pkg/analyzer_experimental/lib/src/generated/element.dart
index 98ec241..62e1d3d 100644
--- a/pkg/analyzer_experimental/lib/src/generated/element.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/element.dart
@@ -252,6 +252,18 @@
PropertyAccessorElement lookUpSetter(String setterName, LibraryElement library);
}
/**
+ * The interface {@code ClassMemberElement} defines the behavior of elements that are contained
+ * within a {@link ClassElement}.
+ */
+abstract class ClassMemberElement implements Element {
+
+ /**
+ * Return the type in which this constructor is defined.
+ * @return the type in which this constructor is defined
+ */
+ ClassElement get enclosingElement;
+}
+/**
* The interface {@code CompilationUnitElement} defines the behavior of elements representing a
* compilation unit.
* @coverage dart.engine.element
@@ -308,13 +320,7 @@
* constructor or a factory method defined within a type.
* @coverage dart.engine.element
*/
-abstract class ConstructorElement implements ExecutableElement {
-
- /**
- * Return the type in which this constructor is defined.
- * @return the type in which this constructor is defined
- */
- ClassElement get enclosingElement;
+abstract class ConstructorElement implements ClassMemberElement, ExecutableElement {
/**
* Return the constructor to which this constructor is redirecting.
@@ -709,13 +715,7 @@
* within a type.
* @coverage dart.engine.element
*/
-abstract class FieldElement implements PropertyInducingElement {
-
- /**
- * Return the type in which this field is defined.
- * @return the type in which this field is defined
- */
- ClassElement get enclosingElement;
+abstract class FieldElement implements ClassMemberElement, PropertyInducingElement {
}
/**
* The interface {@code FieldFormalParameterElement} defines the behavior of elements representing a
@@ -973,13 +973,7 @@
* defined within a type.
* @coverage dart.engine.element
*/
-abstract class MethodElement implements ExecutableElement {
-
- /**
- * Return the type in which this method is defined.
- * @return the type in which this method is defined
- */
- ClassElement get enclosingElement;
+abstract class MethodElement implements ClassMemberElement, ExecutableElement {
/**
* Return {@code true} if this method is abstract. Methods are abstract if they are not external
@@ -1696,9 +1690,9 @@
ClassElement mixinElement = mixinType.element;
classesToVisit.add(mixinElement);
}
- InterfaceType supertype2 = currentElement.supertype;
- if (supertype2 != null) {
- ClassElement superElement = supertype2.element;
+ InterfaceType supertype = currentElement.supertype;
+ if (supertype != null) {
+ ClassElement superElement = supertype.element;
if (superElement != null) {
classesToVisit.add(superElement);
}
@@ -1729,11 +1723,11 @@
}
}
}
- InterfaceType supertype2 = currentElement.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = currentElement.supertype;
+ if (supertype == null) {
return null;
}
- currentElement = supertype2.element;
+ currentElement = supertype.element;
}
return null;
}
@@ -1755,11 +1749,11 @@
}
}
}
- InterfaceType supertype2 = currentElement.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = currentElement.supertype;
+ if (supertype == null) {
return null;
}
- currentElement = supertype2.element;
+ currentElement = supertype.element;
}
return null;
}
@@ -1781,11 +1775,11 @@
}
}
}
- InterfaceType supertype2 = currentElement.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = currentElement.supertype;
+ if (supertype == null) {
return null;
}
- currentElement = supertype2.element;
+ currentElement = supertype.element;
}
return null;
}
@@ -1956,8 +1950,8 @@
typesToVisit.add(type);
}
for (InterfaceType type in currentElement.mixins) {
- ClassElement element2 = type.element;
- if (!visitedClasses.contains(element2)) {
+ ClassElement element = type.element;
+ if (!visitedClasses.contains(element)) {
supertypes.add(type);
}
}
@@ -2414,11 +2408,11 @@
this._nameOffset = nameOffset2;
}
String computeDocumentationComment() {
- AnalysisContext context2 = context;
- if (context2 == null) {
+ AnalysisContext context = this.context;
+ if (context == null) {
return null;
}
- return context2.computeDocumentationComment(this);
+ return context.computeDocumentationComment(this);
}
bool operator ==(Object object) => object != null && object.runtimeType == runtimeType && ((object as Element)).location == location;
Element getAncestor(Type elementClass) {
@@ -2641,8 +2635,8 @@
List<String> get components => _components;
String get encoding {
JavaStringBuilder builder = new JavaStringBuilder();
- int length2 = _components.length;
- for (int i = 0; i < length2; i++) {
+ int length = _components.length;
+ for (int i = 0; i < length; i++) {
if (i > 0) {
builder.appendChar(_SEPARATOR_CHAR);
}
@@ -2662,11 +2656,11 @@
List<String> components = new List<String>();
JavaStringBuilder builder = new JavaStringBuilder();
int index = 0;
- int length2 = encoding.length;
- while (index < length2) {
+ int length = encoding.length;
+ while (index < length) {
int currentChar = encoding.codeUnitAt(index);
if (currentChar == _SEPARATOR_CHAR) {
- if (index + 1 < length2 && encoding.codeUnitAt(index + 1) == _SEPARATOR_CHAR) {
+ if (index + 1 < length && encoding.codeUnitAt(index + 1) == _SEPARATOR_CHAR) {
builder.appendChar(_SEPARATOR_CHAR);
index += 2;
} else {
@@ -2691,8 +2685,8 @@
* @param component the component to be appended to the builder
*/
void encode(JavaStringBuilder builder, String component) {
- int length2 = component.length;
- for (int i = 0; i < length2; i++) {
+ int length = component.length;
+ for (int i = 0; i < length; i++) {
int currentChar = component.codeUnitAt(i);
if (currentChar == _SEPARATOR_CHAR) {
builder.appendChar(_SEPARATOR_CHAR);
@@ -3652,9 +3646,9 @@
List<PrefixElement> get prefixes {
Set<PrefixElement> prefixes = new Set<PrefixElement>();
for (ImportElement element in _imports) {
- PrefixElement prefix2 = element.prefix;
- if (prefix2 != null) {
- javaSetAdd(prefixes, prefix2);
+ PrefixElement prefix = element.prefix;
+ if (prefix != null) {
+ javaSetAdd(prefixes, prefix);
}
}
return new List.from(prefixes);
@@ -3721,9 +3715,9 @@
void set imports(List<ImportElement> imports2) {
for (ImportElement importElement in imports2) {
((importElement as ImportElementImpl)).enclosingElement = this;
- PrefixElementImpl prefix2 = importElement.prefix as PrefixElementImpl;
- if (prefix2 != null) {
- prefix2.enclosingElement = this;
+ PrefixElementImpl prefix = importElement.prefix as PrefixElementImpl;
+ if (prefix != null) {
+ prefix.enclosingElement = this;
}
}
this._imports = imports2;
@@ -3757,8 +3751,8 @@
visited.add(this);
for (int index = 0; index < visited.length; index++) {
LibraryElement library = visited[index];
- Source source2 = library.definingCompilationUnit.source;
- if (source2 == htmlLibSource) {
+ Source source = library.definingCompilationUnit.source;
+ if (source == htmlLibSource) {
return true;
}
for (LibraryElement importedLibrary in library.importedLibraries) {
@@ -3865,8 +3859,8 @@
ClassElement get enclosingElement => super.enclosingElement as ClassElement;
ElementKind get kind => ElementKind.METHOD;
String get name {
- String name2 = super.name;
- if (isOperator() && name2 == "-") {
+ String name = super.name;
+ if (isOperator() && name == "-") {
if (parameters.length == 0) {
return "unary-";
}
@@ -4637,28 +4631,28 @@
bool isConst() => baseElement.isConst();
bool isFactory() => baseElement.isFactory();
String toString() {
- ConstructorElement baseElement2 = baseElement;
- List<ParameterElement> parameters2 = parameters;
- FunctionType type2 = type;
+ ConstructorElement baseElement = this.baseElement;
+ List<ParameterElement> parameters = this.parameters;
+ FunctionType type = this.type;
JavaStringBuilder builder = new JavaStringBuilder();
- builder.append(baseElement2.enclosingElement.displayName);
+ builder.append(baseElement.enclosingElement.displayName);
String name = displayName;
if (name != null && !name.isEmpty) {
builder.append(".");
builder.append(name);
}
builder.append("(");
- int parameterCount = parameters2.length;
+ int parameterCount = parameters.length;
for (int i = 0; i < parameterCount; i++) {
if (i > 0) {
builder.append(", ");
}
- builder.append(parameters2[i]).toString();
+ builder.append(parameters[i]).toString();
}
builder.append(")");
- if (type2 != null) {
+ if (type != null) {
builder.append(" -> ");
- builder.append(type2.returnType);
+ builder.append(type.returnType);
}
return builder.toString();
}
@@ -4904,25 +4898,25 @@
ClassElement get enclosingElement => baseElement.enclosingElement;
bool isAbstract() => baseElement.isAbstract();
String toString() {
- MethodElement baseElement2 = baseElement;
- List<ParameterElement> parameters2 = parameters;
- FunctionType type2 = type;
+ MethodElement baseElement = this.baseElement;
+ List<ParameterElement> parameters = this.parameters;
+ FunctionType type = this.type;
JavaStringBuilder builder = new JavaStringBuilder();
- builder.append(baseElement2.enclosingElement.displayName);
+ builder.append(baseElement.enclosingElement.displayName);
builder.append(".");
- builder.append(baseElement2.displayName);
+ builder.append(baseElement.displayName);
builder.append("(");
- int parameterCount = parameters2.length;
+ int parameterCount = parameters.length;
for (int i = 0; i < parameterCount; i++) {
if (i > 0) {
builder.append(", ");
}
- builder.append(parameters2[i]).toString();
+ builder.append(parameters[i]).toString();
}
builder.append(")");
- if (type2 != null) {
+ if (type != null) {
builder.append(" -> ");
- builder.append(type2.returnType);
+ builder.append(type.returnType);
}
return builder.toString();
}
@@ -4967,9 +4961,9 @@
accept(ElementVisitor visitor) => visitor.visitParameterElement(this);
Element getAncestor(Type elementClass) {
Element element = baseElement.getAncestor(elementClass);
- ParameterizedType definingType2 = definingType;
- if (definingType2 is InterfaceType) {
- InterfaceType definingInterfaceType = definingType2 as InterfaceType;
+ ParameterizedType definingType = this.definingType;
+ if (definingType is InterfaceType) {
+ InterfaceType definingInterfaceType = definingType as InterfaceType;
if (element is ConstructorElement) {
return ConstructorMember.from((element as ConstructorElement), definingInterfaceType) as Element;
} else if (element is MethodElement) {
@@ -4998,14 +4992,14 @@
SourceRange get visibleRange => baseElement.visibleRange;
bool isInitializingFormal() => baseElement.isInitializingFormal();
String toString() {
- ParameterElement baseElement2 = baseElement;
+ ParameterElement baseElement = this.baseElement;
String left = "";
String right = "";
while (true) {
- if (baseElement2.parameterKind == ParameterKind.NAMED) {
+ if (baseElement.parameterKind == ParameterKind.NAMED) {
left = "{";
right = "}";
- } else if (baseElement2.parameterKind == ParameterKind.POSITIONAL) {
+ } else if (baseElement.parameterKind == ParameterKind.POSITIONAL) {
left = "[";
right = "]";
}
@@ -5015,7 +5009,7 @@
builder.append(left);
builder.append(type);
builder.append(" ");
- builder.append(baseElement2.displayName);
+ builder.append(baseElement.displayName);
builder.append(right);
return builder.toString();
}
@@ -5068,11 +5062,11 @@
PropertyAccessorElement get correspondingSetter => from(baseElement.correspondingSetter, definingType);
Element get enclosingElement => baseElement.enclosingElement;
PropertyInducingElement get variable {
- PropertyInducingElement variable2 = baseElement.variable;
- if (variable2 is FieldElement) {
- return FieldMember.from(((variable2 as FieldElement)), definingType);
+ PropertyInducingElement variable = baseElement.variable;
+ if (variable is FieldElement) {
+ return FieldMember.from(((variable as FieldElement)), definingType);
}
- return variable2;
+ return variable;
}
bool isAbstract() => baseElement.isAbstract();
bool isGetter() => baseElement.isGetter();
@@ -5297,8 +5291,8 @@
return element == otherType.element && JavaArrays.equals(_normalParameterTypes, otherType._normalParameterTypes) && JavaArrays.equals(_optionalParameterTypes, otherType._optionalParameterTypes) && equals2(_namedParameterTypes, otherType._namedParameterTypes) && _returnType == otherType._returnType;
}
String get displayName {
- String name2 = name;
- if (name2 == null) {
+ String name = this.name;
+ if (name == null) {
JavaStringBuilder builder = new JavaStringBuilder();
builder.append("(");
bool needsComma = false;
@@ -5354,40 +5348,40 @@
} else {
builder.append(_returnType.displayName);
}
- name2 = builder.toString();
+ name = builder.toString();
}
- return name2;
+ return name;
}
Map<String, Type2> get namedParameterTypes => _namedParameterTypes;
List<Type2> get normalParameterTypes => _normalParameterTypes;
List<Type2> get optionalParameterTypes => _optionalParameterTypes;
List<ParameterElement> get parameters {
- List<ParameterElement> baseParameters2 = baseParameters;
- int parameterCount = baseParameters2.length;
+ List<ParameterElement> baseParameters = this.baseParameters;
+ int parameterCount = baseParameters.length;
if (parameterCount == 0) {
- return baseParameters2;
+ return baseParameters;
}
List<ParameterElement> specializedParameters = new List<ParameterElement>(parameterCount);
for (int i = 0; i < parameterCount; i++) {
- specializedParameters[i] = ParameterMember.from(baseParameters2[i], this);
+ specializedParameters[i] = ParameterMember.from(baseParameters[i], this);
}
return specializedParameters;
}
Type2 get returnType => _returnType;
List<Type2> get typeArguments => _typeArguments;
List<TypeVariableElement> get typeVariables {
- Element element2 = element;
- if (element2 is FunctionTypeAliasElement) {
- return ((element2 as FunctionTypeAliasElement)).typeVariables;
+ Element element = this.element;
+ if (element is FunctionTypeAliasElement) {
+ return ((element as FunctionTypeAliasElement)).typeVariables;
}
return TypeVariableElementImpl.EMPTY_ARRAY;
}
int get hashCode {
- Element element2 = element;
- if (element2 == null) {
+ Element element = this.element;
+ if (element == null) {
return 0;
}
- return element2.hashCode;
+ return element.hashCode;
}
bool isSubtypeOf(Type2 type) {
if (type == null) {
@@ -5516,8 +5510,8 @@
if (argumentTypes.length == 0) {
return this;
}
- Element element2 = element;
- FunctionTypeImpl newType = (element2 is ExecutableElement) ? new FunctionTypeImpl.con1((element2 as ExecutableElement)) : new FunctionTypeImpl.con2((element2 as FunctionTypeAliasElement));
+ Element element = this.element;
+ FunctionTypeImpl newType = (element is ExecutableElement) ? new FunctionTypeImpl.con1((element as ExecutableElement)) : new FunctionTypeImpl.con2((element as FunctionTypeAliasElement));
newType.returnType = _returnType.substitute2(argumentTypes, parameterTypes);
newType.normalParameterTypes = TypeImpl.substitute(_normalParameterTypes, argumentTypes, parameterTypes);
newType.optionalParameterTypes = TypeImpl.substitute(_optionalParameterTypes, argumentTypes, parameterTypes);
@@ -5586,11 +5580,11 @@
* @return the base parameter elements of this function element, not {@code null}.
*/
List<ParameterElement> get baseParameters {
- Element element2 = element;
- if (element2 is ExecutableElement) {
- return ((element2 as ExecutableElement)).parameters;
+ Element element = this.element;
+ if (element is ExecutableElement) {
+ return ((element as ExecutableElement)).parameters;
} else {
- return ((element2 as FunctionTypeAliasElement)).parameters;
+ return ((element as FunctionTypeAliasElement)).parameters;
}
}
}
@@ -5651,8 +5645,8 @@
}
}
}
- InterfaceType supertype2 = classElement.supertype;
- pathLength = computeLongestInheritancePathToObject2(supertype2, depth + 1, visitedClasses);
+ InterfaceType supertype = classElement.supertype;
+ pathLength = computeLongestInheritancePathToObject2(supertype, depth + 1, visitedClasses);
if (pathLength > longestPath) {
longestPath = pathLength;
}
@@ -5672,19 +5666,19 @@
* @see #getLeastUpperBound(Type)
*/
static Set<InterfaceType> computeSuperinterfaceSet2(InterfaceType type, Set<InterfaceType> set) {
- Element element2 = type.element;
- if (element2 != null && element2 is ClassElement) {
- ClassElement classElement = element2 as ClassElement;
+ Element element = type.element;
+ if (element != null && element is ClassElement) {
+ ClassElement classElement = element as ClassElement;
List<InterfaceType> superinterfaces = classElement.interfaces;
for (InterfaceType superinterface in superinterfaces) {
if (javaSetAdd(set, superinterface)) {
computeSuperinterfaceSet2(superinterface, set);
}
}
- InterfaceType supertype2 = classElement.supertype;
- if (supertype2 != null) {
- if (javaSetAdd(set, supertype2)) {
- computeSuperinterfaceSet2(supertype2, set);
+ InterfaceType supertype = classElement.supertype;
+ if (supertype != null) {
+ if (javaSetAdd(set, supertype)) {
+ computeSuperinterfaceSet2(supertype, set);
}
}
}
@@ -5785,15 +5779,15 @@
PropertyAccessorElement getGetter(String getterName) => PropertyAccessorMember.from(((element as ClassElementImpl)).getGetter(getterName), this);
List<InterfaceType> get interfaces {
ClassElement classElement = element;
- List<InterfaceType> interfaces2 = classElement.interfaces;
- List<TypeVariableElement> typeVariables2 = classElement.typeVariables;
- if (typeVariables2.length == 0) {
- return interfaces2;
+ List<InterfaceType> interfaces = classElement.interfaces;
+ List<TypeVariableElement> typeVariables = classElement.typeVariables;
+ if (typeVariables.length == 0) {
+ return interfaces;
}
- int count = interfaces2.length;
+ int count = interfaces.length;
List<InterfaceType> typedInterfaces = new List<InterfaceType>(count);
for (int i = 0; i < count; i++) {
- typedInterfaces[i] = interfaces2[i].substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(typeVariables2));
+ typedInterfaces[i] = interfaces[i].substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(typeVariables));
}
return typedInterfaces;
}
@@ -5841,51 +5835,51 @@
MethodElement getMethod(String methodName) => MethodMember.from(((element as ClassElementImpl)).getMethod(methodName), this);
List<InterfaceType> get mixins {
ClassElement classElement = element;
- List<InterfaceType> mixins2 = classElement.mixins;
- List<TypeVariableElement> typeVariables2 = classElement.typeVariables;
- if (typeVariables2.length == 0) {
- return mixins2;
+ List<InterfaceType> mixins = classElement.mixins;
+ List<TypeVariableElement> typeVariables = classElement.typeVariables;
+ if (typeVariables.length == 0) {
+ return mixins;
}
- int count = mixins2.length;
+ int count = mixins.length;
List<InterfaceType> typedMixins = new List<InterfaceType>(count);
for (int i = 0; i < count; i++) {
- typedMixins[i] = mixins2[i].substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(typeVariables2));
+ typedMixins[i] = mixins[i].substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(typeVariables));
}
return typedMixins;
}
PropertyAccessorElement getSetter(String setterName) => PropertyAccessorMember.from(((element as ClassElementImpl)).getSetter(setterName), this);
InterfaceType get superclass {
ClassElement classElement = element;
- InterfaceType supertype2 = classElement.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = classElement.supertype;
+ if (supertype == null) {
return null;
}
- return supertype2.substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(classElement.typeVariables));
+ return supertype.substitute2(_typeArguments, TypeVariableTypeImpl.getTypes(classElement.typeVariables));
}
List<Type2> get typeArguments => _typeArguments;
List<TypeVariableElement> get typeVariables => element.typeVariables;
int get hashCode {
- ClassElement element2 = element;
- if (element2 == null) {
+ ClassElement element = this.element;
+ if (element == null) {
return 0;
}
- return element2.hashCode;
+ return element.hashCode;
}
bool isDartCoreFunction() {
- ClassElement element2 = element;
- if (element2 == null) {
+ ClassElement element = this.element;
+ if (element == null) {
return false;
}
- return element2.name == "Function" && element2.library.isDartCore();
+ return element.name == "Function" && element.library.isDartCore();
}
bool isDirectSupertypeOf(InterfaceType type) {
ClassElement i = element;
ClassElement j = type.element;
- InterfaceType supertype2 = j.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = j.supertype;
+ if (supertype == null) {
return false;
}
- ClassElement supertypeElement = supertype2.element;
+ ClassElement supertypeElement = supertype.element;
if (supertypeElement == i) {
return true;
}
@@ -6092,21 +6086,21 @@
}
return true;
}
- ClassElement element2 = element;
- if (element2 == null || visitedClasses.contains(element2)) {
+ ClassElement element = this.element;
+ if (element == null || visitedClasses.contains(element)) {
return false;
}
- javaSetAdd(visitedClasses, element2);
- InterfaceType supertype2 = element2.supertype;
- if (supertype2 != null && ((supertype2 as InterfaceTypeImpl)).isMoreSpecificThan2(s, visitedClasses)) {
+ javaSetAdd(visitedClasses, element);
+ InterfaceType supertype = element.supertype;
+ if (supertype != null && ((supertype as InterfaceTypeImpl)).isMoreSpecificThan2(s, visitedClasses)) {
return true;
}
- for (InterfaceType interfaceType in element2.interfaces) {
+ for (InterfaceType interfaceType in element.interfaces) {
if (((interfaceType as InterfaceTypeImpl)).isMoreSpecificThan2(s, visitedClasses)) {
return true;
}
}
- for (InterfaceType mixinType in element2.mixins) {
+ for (InterfaceType mixinType in element.mixins) {
if (((mixinType as InterfaceTypeImpl)).isMoreSpecificThan2(s, visitedClasses)) {
return true;
}
@@ -6139,8 +6133,8 @@
} else if (typeS.isDartCoreFunction() && elementT.getMethod("call") != null) {
return true;
}
- InterfaceType supertype2 = elementT.supertype;
- if (supertype2 != null && ((supertype2 as InterfaceTypeImpl)).isSubtypeOf2(typeS, visitedClasses)) {
+ InterfaceType supertype = elementT.supertype;
+ if (supertype != null && ((supertype as InterfaceTypeImpl)).isSubtypeOf2(typeS, visitedClasses)) {
return true;
}
List<InterfaceType> interfaceTypes = elementT.interfaces;
@@ -6174,12 +6168,12 @@
* @return the result of performing the substitution on each of the types
*/
static List<Type2> substitute(List<Type2> types, List<Type2> argumentTypes, List<Type2> parameterTypes) {
- int length2 = types.length;
- if (length2 == 0) {
+ int length = types.length;
+ if (length == 0) {
return types;
}
- List<Type2> newTypes = new List<Type2>(length2);
- for (int i = 0; i < length2; i++) {
+ List<Type2> newTypes = new List<Type2>(length);
+ for (int i = 0; i < length; i++) {
newTypes[i] = types[i].substitute2(argumentTypes, parameterTypes);
}
return newTypes;
@@ -6277,8 +6271,8 @@
}
bool isSubtypeOf(Type2 type) => true;
Type2 substitute2(List<Type2> argumentTypes, List<Type2> parameterTypes) {
- int length2 = parameterTypes.length;
- for (int i = 0; i < length2; i++) {
+ int length = parameterTypes.length;
+ for (int i = 0; i < length; i++) {
if (parameterTypes[i] == this) {
return argumentTypes[i];
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/engine.dart b/pkg/analyzer_experimental/lib/src/generated/engine.dart
index b82126a..0b7365a 100644
--- a/pkg/analyzer_experimental/lib/src/generated/engine.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/engine.dart
@@ -1919,20 +1919,20 @@
if (element == null) {
return null;
}
- Source source2 = element.source;
- if (source2 == null) {
+ Source source = element.source;
+ if (source == null) {
return null;
}
List<CharSequence> contentHolder = new List<CharSequence>(1);
try {
- source2.getContents(new Source_ContentReceiver_6(contentHolder));
+ source.getContents(new Source_ContentReceiver_6(contentHolder));
} catch (exception) {
- throw new AnalysisException.con2("Could not get contents of ${source2.fullName}", exception);
+ throw new AnalysisException.con2("Could not get contents of ${source.fullName}", exception);
}
if (contentHolder[0] == null) {
return null;
}
- CompilationUnit unit = parseCompilationUnit(source2);
+ CompilationUnit unit = parseCompilationUnit(source);
if (unit == null) {
return null;
}
@@ -1944,8 +1944,8 @@
if (comment == null) {
return null;
}
- int offset2 = comment.offset;
- return contentHolder[0].subSequence(offset2, offset2 + comment.length).toString();
+ int offset = comment.offset;
+ return contentHolder[0].subSequence(offset, offset + comment.length).toString();
}
nameNode = nameNode.parent;
}
@@ -2101,21 +2101,21 @@
}
AnalysisOptions get analysisOptions => _options;
Element getElement(ElementLocation location) {
- List<String> components2 = ((location as ElementLocationImpl)).components;
+ List<String> components = ((location as ElementLocationImpl)).components;
ElementImpl element;
{
- Source librarySource = _sourceFactory.fromEncoding(components2[0]);
+ Source librarySource = _sourceFactory.fromEncoding(components[0]);
try {
element = computeLibraryElement(librarySource) as ElementImpl;
} on AnalysisException catch (exception) {
return null;
}
}
- for (int i = 1; i < components2.length; i++) {
+ for (int i = 1; i < components.length; i++) {
if (element == null) {
return null;
}
- element = element.getChild(components2[i]);
+ element = element.getChild(components[i]);
}
return element;
}
@@ -2246,9 +2246,9 @@
return null;
}
Namespace getPublicNamespace(LibraryElement library) {
- Source source2 = library.definingCompilationUnit.source;
+ Source source = library.definingCompilationUnit.source;
{
- DartEntry dartEntry = getDartEntry(source2);
+ DartEntry dartEntry = getDartEntry(source);
if (dartEntry == null) {
return null;
}
@@ -2258,7 +2258,7 @@
namespace = builder.createPublicNamespace(library);
DartEntryImpl dartCopy = dartEntry.writableCopy;
dartCopy.setValue(DartEntry.PUBLIC_NAMESPACE, namespace);
- _sourceMap[source2] = dartCopy;
+ _sourceMap[source] = dartCopy;
}
return namespace;
}
@@ -3075,9 +3075,9 @@
*/
void recordResolutionResults(LibraryResolver resolver) {
Source htmlSource = _sourceFactory.forUri(DartSdk.DART_HTML);
- RecordingErrorListener errorListener2 = resolver.errorListener;
+ RecordingErrorListener errorListener = resolver.errorListener;
for (Library library in resolver.resolvedLibraries) {
- Source librarySource2 = library.librarySource;
+ Source librarySource = library.librarySource;
Set<Source> referencedLibraries = new Set<Source>();
for (Library referencedLibrary in library.exports) {
javaSetAdd(referencedLibraries, referencedLibrary.librarySource);
@@ -3087,18 +3087,18 @@
}
for (Source source in library.compilationUnitSources) {
CompilationUnit unit = library.getAST(source);
- List<AnalysisError> errors = errorListener2.getErrors2(source);
+ List<AnalysisError> errors = errorListener.getErrors2(source);
unit.resolutionErrors = errors;
- LineInfo lineInfo2 = unit.lineInfo;
+ LineInfo lineInfo = unit.lineInfo;
{
DartEntry dartEntry = getDartEntry(source);
if (dartEntry != null) {
DartEntryImpl dartCopy = dartEntry.writableCopy;
- dartCopy.setValue(SourceEntry.LINE_INFO, lineInfo2);
+ dartCopy.setValue(SourceEntry.LINE_INFO, lineInfo);
dartCopy.setState(DartEntry.PARSED_UNIT, CacheState.FLUSHED);
- dartCopy.setValue2(DartEntry.RESOLVED_UNIT, librarySource2, unit);
- dartCopy.setValue2(DartEntry.RESOLUTION_ERRORS, librarySource2, errors);
- if (identical(source, librarySource2)) {
+ dartCopy.setValue2(DartEntry.RESOLVED_UNIT, librarySource, unit);
+ dartCopy.setValue2(DartEntry.RESOLUTION_ERRORS, librarySource, errors);
+ if (identical(source, librarySource)) {
recordElementData(dartCopy, library.libraryElement, htmlSource);
List<Source> libraries;
if (referencedLibraries.isEmpty) {
@@ -3111,7 +3111,7 @@
_sourceMap[source] = dartCopy;
ChangeNoticeImpl notice = getNotice(source);
notice.compilationUnit = unit;
- notice.setErrors(dartCopy.allErrors, lineInfo2);
+ notice.setErrors(dartCopy.allErrors, lineInfo);
}
}
}
@@ -3158,16 +3158,22 @@
htmlCopy.setState(HtmlEntry.RESOLVED_UNIT, CacheState.INVALID);
_sourceMap[source] = htmlCopy;
} else if (sourceEntry is DartEntry) {
+ Set<Source> librariesToInvalidate = new Set<Source>();
List<Source> containingLibraries = getLibrariesContaining(source);
+ for (Source containingLibrary in containingLibraries) {
+ javaSetAdd(librariesToInvalidate, containingLibrary);
+ for (Source dependentLibrary in getLibrariesDependingOn(containingLibrary)) {
+ javaSetAdd(librariesToInvalidate, dependentLibrary);
+ }
+ }
DartEntryImpl dartCopy = ((sourceEntry as DartEntry)).writableCopy;
dartCopy.setState(SourceEntry.LINE_INFO, CacheState.INVALID);
dartCopy.setState(DartEntry.PARSE_ERRORS, CacheState.INVALID);
dartCopy.setState(DartEntry.PARSED_UNIT, CacheState.INVALID);
dartCopy.setState(DartEntry.SOURCE_KIND, CacheState.INVALID);
_sourceMap[source] = dartCopy;
- invalidateLibraryResolution(source);
- for (Source librarySource in containingLibraries) {
- invalidateLibraryResolution(librarySource);
+ for (Source library in librariesToInvalidate) {
+ invalidateLibraryResolution(library);
}
}
}
@@ -3623,8 +3629,8 @@
}
}
Namespace getPublicNamespace(LibraryElement library) {
- Source source2 = library.source;
- if (source2.isInSystemLibrary()) {
+ Source source = library.source;
+ if (source.isInSystemLibrary()) {
return _sdkAnalysisContext.getPublicNamespace(library);
} else {
return super.getPublicNamespace(library);
@@ -4290,12 +4296,12 @@
* @return an array of errors (not {@code null}, contains no {@code null}s)
*/
List<AnalysisError> get errors {
- Set<MapEntry<Source, List<AnalysisError>>> entrySet2 = getMapEntrySet(_errors);
- if (entrySet2.length == 0) {
+ Set<MapEntry<Source, List<AnalysisError>>> entrySet = getMapEntrySet(_errors);
+ if (entrySet.length == 0) {
return AnalysisError.NO_ERRORS;
}
List<AnalysisError> resultList = new List<AnalysisError>();
- for (MapEntry<Source, List<AnalysisError>> entry in entrySet2) {
+ for (MapEntry<Source, List<AnalysisError>> entry in entrySet) {
resultList.addAll(entry.getValue());
}
return new List.from(resultList);
@@ -4316,11 +4322,11 @@
}
}
void onError(AnalysisError event) {
- Source source2 = event.source;
- List<AnalysisError> errorsForSource = _errors[source2];
- if (_errors[source2] == null) {
+ Source source = event.source;
+ List<AnalysisError> errorsForSource = _errors[source];
+ if (_errors[source] == null) {
errorsForSource = new List<AnalysisError>();
- _errors[source2] = errorsForSource;
+ _errors[source] = errorsForSource;
}
errorsForSource.add(event);
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/error.dart b/pkg/analyzer_experimental/lib/src/generated/error.dart
index 32cfa70..018ee78 100644
--- a/pkg/analyzer_experimental/lib/src/generated/error.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/error.dart
@@ -1913,36 +1913,24 @@
static final StaticWarningCode INVOCATION_OF_NON_FUNCTION = new StaticWarningCode('INVOCATION_OF_NON_FUNCTION', 34, "");
/**
- * 15.1 Static Types: A type <i>T</i> is malformed iff: <li><i>T</i> has the form <i>id</i> or the
- * form <i>prefix.id</i>, and in the enclosing lexical scope, the name <i>id</i> (respectively
- * <i>prefix.id</i>) does not denote a type.</li> <li><i>T</i> denotes a type variable in the
- * enclosing lexical scope, but occurs in the signature or body of a static member.</li> <li>
- * <i>T</i> is a parameterized type of the form <i>G<S<sub>1</sub>, .., S<sub>n</sub>></i>,
- * and <i>G</i> is malformed.</li></ul>
- * <p>
- * Any use of a malformed type gives rise to a static warning.
- */
- static final StaticWarningCode MALFORMED_TYPE = new StaticWarningCode('MALFORMED_TYPE', 35, "");
-
- /**
* 7.3 Setters: It is a static warning if a class has a setter named <i>v=</i> with argument type
* <i>T</i> and a getter named <i>v</i> with return type <i>S</i>, and <i>T</i> may not be
* assigned to <i>S</i>.
*/
- static final StaticWarningCode MISMATCHED_GETTER_AND_SETTER_TYPES = new StaticWarningCode('MISMATCHED_GETTER_AND_SETTER_TYPES', 36, "The parameter type for setter '%s' is %s which is not assignable to its getter (of type %s)");
+ static final StaticWarningCode MISMATCHED_GETTER_AND_SETTER_TYPES = new StaticWarningCode('MISMATCHED_GETTER_AND_SETTER_TYPES', 35, "The parameter type for setter '%s' is %s which is not assignable to its getter (of type %s)");
/**
* 12.11.1 New: It is a static warning if <i>q</i> is a constructor of an abstract class and
* <i>q</i> is not a factory constructor.
*/
- static final StaticWarningCode NEW_WITH_ABSTRACT_CLASS = new StaticWarningCode('NEW_WITH_ABSTRACT_CLASS', 37, "Abstract classes cannot be created with a 'new' expression");
+ static final StaticWarningCode NEW_WITH_ABSTRACT_CLASS = new StaticWarningCode('NEW_WITH_ABSTRACT_CLASS', 36, "Abstract classes cannot be created with a 'new' expression");
/**
* 12.11.1 New: It is a static warning if <i>T</i> is not a class accessible in the current scope,
* optionally followed by type arguments.
* @param name the name of the non-type element
*/
- static final StaticWarningCode NEW_WITH_NON_TYPE = new StaticWarningCode('NEW_WITH_NON_TYPE', 38, "The name '%s' is not a class");
+ static final StaticWarningCode NEW_WITH_NON_TYPE = new StaticWarningCode('NEW_WITH_NON_TYPE', 37, "The name '%s' is not a class");
/**
* 12.11.1 New: If <i>T</i> is a class or parameterized type accessible in the current scope then:
@@ -1953,7 +1941,7 @@
* a<sub>n+1</sub>, … x<sub>n+k</sub>: a<sub>n+kM/sub>)</i> it is a static warning if the
* type <i>T</i> does not declare a constructor with the same name as the declaration of <i>T</i>.
*/
- static final StaticWarningCode NEW_WITH_UNDEFINED_CONSTRUCTOR = new StaticWarningCode('NEW_WITH_UNDEFINED_CONSTRUCTOR', 39, "The class '%s' does not have a constructor '%s'");
+ static final StaticWarningCode NEW_WITH_UNDEFINED_CONSTRUCTOR = new StaticWarningCode('NEW_WITH_UNDEFINED_CONSTRUCTOR', 38, "The class '%s' does not have a constructor '%s'");
/**
* 12.11.1 New: If <i>T</i> is a class or parameterized type accessible in the current scope then:
@@ -1964,7 +1952,7 @@
* a<sub>n+1</sub>, … x<sub>n+k</sub>: a<sub>n+kM/sub>)</i> it is a static warning if the
* type <i>T</i> does not declare a constructor with the same name as the declaration of <i>T</i>.
*/
- static final StaticWarningCode NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT = new StaticWarningCode('NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT', 40, "The class '%s' does not have a default constructor");
+ static final StaticWarningCode NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT = new StaticWarningCode('NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT', 39, "The class '%s' does not have a default constructor");
/**
* 7.9.1 Inheritance and Overriding: It is a static warning if a non-abstract class inherits an
@@ -1991,7 +1979,7 @@
* @param name fourth member name
* @param additionalCount the number of additional missing members that aren't listed
*/
- static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS', 41, "Missing inherited members: %s'%s.%s', %s'%s.%s', %s'%s.%s', %s'%s.%s' and %d more");
+ static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS', 40, "Missing inherited members: %s'%s.%s', %s'%s.%s', %s'%s.%s', %s'%s.%s' and %d more");
/**
* 7.9.1 Inheritance and Overriding: It is a static warning if a non-abstract class inherits an
@@ -2017,7 +2005,7 @@
* @param enclosingClass enclosing class of the fourth missing member
* @param name fourth member name
*/
- static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR', 42, "Missing inherited members: %s'%s.%s', %s'%s.%s', %s'%s.%s' and %s'%s.%s'");
+ static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR', 41, "Missing inherited members: %s'%s.%s', %s'%s.%s', %s'%s.%s' and %s'%s.%s'");
/**
* 7.9.1 Inheritance and Overriding: It is a static warning if a non-abstract class inherits an
@@ -2030,7 +2018,7 @@
* @param enclosingClass enclosing class of the missing member
* @param name member name
*/
- static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE', 43, "Missing inherited member %s'%s.%s'");
+ static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE', 42, "Missing inherited member %s'%s.%s'");
/**
* 7.9.1 Inheritance and Overriding: It is a static warning if a non-abstract class inherits an
@@ -2052,7 +2040,7 @@
* @param enclosingClass enclosing class of the third missing member
* @param name third member name
*/
- static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE', 44, "Missing inherited members: %s'%s.%s', %s'%s.%s' and %s'%s.%s'");
+ static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE', 43, "Missing inherited members: %s'%s.%s', %s'%s.%s' and %s'%s.%s'");
/**
* 7.9.1 Inheritance and Overriding: It is a static warning if a non-abstract class inherits an
@@ -2070,7 +2058,7 @@
* @param enclosingClass enclosing class of the second missing member
* @param name second member name
*/
- static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO', 45, "Missing inherited members: %s'%s.%s' and %s'%s.%s'");
+ static final StaticWarningCode NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO = new StaticWarningCode('NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO', 44, "Missing inherited members: %s'%s.%s' and %s'%s.%s'");
/**
* 13.11 Try: An on-catch clause of the form <i>on T catch (p<sub>1</sub>, p<sub>2</sub>) s</i> or
@@ -2079,18 +2067,31 @@
* catch clause.
* @param name the name of the non-type element
*/
- static final StaticWarningCode NON_TYPE_IN_CATCH_CLAUSE = new StaticWarningCode('NON_TYPE_IN_CATCH_CLAUSE', 46, "The name '%s' is not a type and cannot be used in an on-catch clause");
+ static final StaticWarningCode NON_TYPE_IN_CATCH_CLAUSE = new StaticWarningCode('NON_TYPE_IN_CATCH_CLAUSE', 45, "The name '%s' is not a type and cannot be used in an on-catch clause");
/**
* 7.1.1 Operators: It is a static warning if the return type of the user-declared operator \[\]= is
* explicitly declared and not void.
*/
- static final StaticWarningCode NON_VOID_RETURN_FOR_OPERATOR = new StaticWarningCode('NON_VOID_RETURN_FOR_OPERATOR', 47, "The return type of the operator []= must be 'void'");
+ static final StaticWarningCode NON_VOID_RETURN_FOR_OPERATOR = new StaticWarningCode('NON_VOID_RETURN_FOR_OPERATOR', 46, "The return type of the operator []= must be 'void'");
/**
* 7.3 Setters: It is a static warning if a setter declares a return type other than void.
*/
- static final StaticWarningCode NON_VOID_RETURN_FOR_SETTER = new StaticWarningCode('NON_VOID_RETURN_FOR_SETTER', 48, "The return type of the setter must be 'void'");
+ static final StaticWarningCode NON_VOID_RETURN_FOR_SETTER = new StaticWarningCode('NON_VOID_RETURN_FOR_SETTER', 47, "The return type of the setter must be 'void'");
+
+ /**
+ * 15.1 Static Types: A type <i>T</i> is malformed iff: <li><i>T</i> has the form <i>id</i> or the
+ * form <i>prefix.id</i>, and in the enclosing lexical scope, the name <i>id</i> (respectively
+ * <i>prefix.id</i>) does not denote a type.</li> <li><i>T</i> denotes a type variable in the
+ * enclosing lexical scope, but occurs in the signature or body of a static member.</li> <li>
+ * <i>T</i> is a parameterized type of the form <i>G<S<sub>1</sub>, .., S<sub>n</sub>></i>,
+ * and <i>G</i> is malformed.</li></ul>
+ * <p>
+ * Any use of a malformed type gives rise to a static warning.
+ * @param nonTypeName the name that is not a type
+ */
+ static final StaticWarningCode NOT_A_TYPE = new StaticWarningCode('NOT_A_TYPE', 48, "%s is not a type");
/**
* 12.14.2 Binding Actuals to Formals: It is a static warning if <i>m < h</i> or if <i>m > n</i>.
@@ -2167,17 +2168,29 @@
static final StaticWarningCode TYPE_TEST_NON_TYPE = new StaticWarningCode('TYPE_TEST_NON_TYPE', 58, "The name '%s' is not a type and cannot be used in an 'is' expression");
/**
+ * 15.1 Static Types: A type <i>T</i> is malformed iff: <li><i>T</i> has the form <i>id</i> or the
+ * form <i>prefix.id</i>, and in the enclosing lexical scope, the name <i>id</i> (respectively
+ * <i>prefix.id</i>) does not denote a type.</li> <li><i>T</i> denotes a type variable in the
+ * enclosing lexical scope, but occurs in the signature or body of a static member.</li> <li>
+ * <i>T</i> is a parameterized type of the form <i>G<S<sub>1</sub>, .., S<sub>n</sub>></i>,
+ * and <i>G</i> is malformed.</li></ul>
+ * <p>
+ * Any use of a malformed type gives rise to a static warning.
+ */
+ static final StaticWarningCode TYPE_VARIABLE_IN_STATIC_SCOPE = new StaticWarningCode('TYPE_VARIABLE_IN_STATIC_SCOPE', 59, "");
+
+ /**
* 12.15.3 Static Invocation: A static method invocation <i>i</i> has the form
* <i>C.m(a<sub>1</sub>, …, a<sub>n</sub>, x<sub>n+1</sub>: a<sub>n+1</sub>, …
* x<sub>n+k</sub>: a<sub>n+k</sub>)</i>. It is a static warning if <i>C</i> does not denote a
* class in the current scope.
*/
- static final StaticWarningCode UNDEFINED_CLASS = new StaticWarningCode('UNDEFINED_CLASS', 59, "Undefined class '%s'");
+ static final StaticWarningCode UNDEFINED_CLASS = new StaticWarningCode('UNDEFINED_CLASS', 60, "Undefined class '%s'");
/**
* Same as {@link #UNDEFINED_CLASS}, but to catch using "boolean" instead of "bool".
*/
- static final StaticWarningCode UNDEFINED_CLASS_BOOLEAN = new StaticWarningCode('UNDEFINED_CLASS_BOOLEAN', 60, "Undefined class 'boolean'; did you mean 'bool'?");
+ static final StaticWarningCode UNDEFINED_CLASS_BOOLEAN = new StaticWarningCode('UNDEFINED_CLASS_BOOLEAN', 61, "Undefined class 'boolean'; did you mean 'bool'?");
/**
* 12.17 Getter Invocation: It is a static warning if there is no class <i>C</i> in the enclosing
@@ -2186,7 +2199,7 @@
* @param getterName the name of the getter
* @param enclosingType the name of the enclosing type where the getter is being looked for
*/
- static final StaticWarningCode UNDEFINED_GETTER = new StaticWarningCode('UNDEFINED_GETTER', 61, "There is no such getter '%s' in '%s'");
+ static final StaticWarningCode UNDEFINED_GETTER = new StaticWarningCode('UNDEFINED_GETTER', 62, "There is no such getter '%s' in '%s'");
/**
* 12.30 Identifier Reference: It is as static warning if an identifier expression of the form
@@ -2194,7 +2207,7 @@
* setter) or variable initializer and there is no declaration <i>d</i> with name <i>id</i> in the
* lexical scope enclosing the expression.
*/
- static final StaticWarningCode UNDEFINED_IDENTIFIER = new StaticWarningCode('UNDEFINED_IDENTIFIER', 62, "Undefined name '%s'");
+ static final StaticWarningCode UNDEFINED_IDENTIFIER = new StaticWarningCode('UNDEFINED_IDENTIFIER', 63, "Undefined name '%s'");
/**
* 12.14.2 Binding Actuals to Formals: Furthermore, each <i>q<sub>i</sub></i>, <i>1<=i<=l</i>,
@@ -2202,7 +2215,7 @@
* <i>p<sub>n+k</sub></i>} or a static warning occurs.
* @param name the name of the requested named parameter
*/
- static final StaticWarningCode UNDEFINED_NAMED_PARAMETER = new StaticWarningCode('UNDEFINED_NAMED_PARAMETER', 63, "The named parameter '%s' is not defined");
+ static final StaticWarningCode UNDEFINED_NAMED_PARAMETER = new StaticWarningCode('UNDEFINED_NAMED_PARAMETER', 64, "The named parameter '%s' is not defined");
/**
* 12.18 Assignment: It is as static warning if an assignment of the form <i>v = e</i> occurs
@@ -2216,7 +2229,7 @@
* @param setterName the name of the getter
* @param enclosingType the name of the enclosing type where the setter is being looked for
*/
- static final StaticWarningCode UNDEFINED_SETTER = new StaticWarningCode('UNDEFINED_SETTER', 64, "There is no such setter '%s' in '%s'");
+ static final StaticWarningCode UNDEFINED_SETTER = new StaticWarningCode('UNDEFINED_SETTER', 65, "There is no such setter '%s' in '%s'");
/**
* 12.15.3 Static Invocation: It is a static warning if <i>C</i> does not declare a static method
@@ -2224,8 +2237,8 @@
* @param methodName the name of the method
* @param enclosingType the name of the enclosing type where the method is being looked for
*/
- static final StaticWarningCode UNDEFINED_STATIC_METHOD_OR_GETTER = new StaticWarningCode('UNDEFINED_STATIC_METHOD_OR_GETTER', 65, "There is no such static method '%s' in '%s'");
- static final List<StaticWarningCode> values = [AMBIGUOUS_IMPORT, ARGUMENT_TYPE_NOT_ASSIGNABLE, ASSIGNMENT_TO_FINAL, CASE_BLOCK_NOT_TERMINATED, CAST_TO_NON_TYPE, COMMENT_REFERENCE_CONSTRUCTOR_NOT_VISIBLE, COMMENT_REFERENCE_IDENTIFIER_NOT_VISIBLE, COMMENT_REFERENCE_UNDECLARED_CONSTRUCTOR, COMMENT_REFERENCE_UNDECLARED_IDENTIFIER, COMMENT_REFERENCE_URI_NOT_LIBRARY, CONCRETE_CLASS_WITH_ABSTRACT_MEMBER, CONFLICTING_INSTANCE_GETTER_AND_SUPERCLASS_MEMBER, CONFLICTING_INSTANCE_SETTER_AND_SUPERCLASS_MEMBER, CONFLICTING_STATIC_GETTER_AND_INSTANCE_SETTER, CONFLICTING_STATIC_SETTER_AND_INSTANCE_MEMBER, CONST_WITH_ABSTRACT_CLASS, EQUAL_KEYS_IN_MAP, EXPORT_DUPLICATED_LIBRARY_NAME, EXTRA_POSITIONAL_ARGUMENTS, FIELD_INITIALIZER_NOT_ASSIGNABLE, FIELD_INITIALIZING_FORMAL_NOT_ASSIGNABLE, FINAL_NOT_INITIALIZED, IMPORT_DUPLICATED_LIBRARY_NAME, INCONSISTENT_METHOD_INHERITANCE_GETTER_AND_METHOD, INCORRECT_NUMBER_OF_ARGUMENTS, INSTANCE_METHOD_NAME_COLLIDES_WITH_SUPERCLASS_STATIC, INVALID_FACTORY_NAME, INVALID_GETTER_OVERRIDE_RETURN_TYPE, INVALID_METHOD_OVERRIDE_NAMED_PARAM_TYPE, INVALID_METHOD_OVERRIDE_NORMAL_PARAM_TYPE, INVALID_METHOD_OVERRIDE_OPTIONAL_PARAM_TYPE, INVALID_METHOD_OVERRIDE_RETURN_TYPE, INVALID_OVERRIDE_DIFFERENT_DEFAULT_VALUES, INVALID_SETTER_OVERRIDE_NORMAL_PARAM_TYPE, INVOCATION_OF_NON_FUNCTION, MALFORMED_TYPE, MISMATCHED_GETTER_AND_SETTER_TYPES, NEW_WITH_ABSTRACT_CLASS, NEW_WITH_NON_TYPE, NEW_WITH_UNDEFINED_CONSTRUCTOR, NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO, NON_TYPE_IN_CATCH_CLAUSE, NON_VOID_RETURN_FOR_OPERATOR, NON_VOID_RETURN_FOR_SETTER, NOT_ENOUGH_REQUIRED_ARGUMENTS, PART_OF_DIFFERENT_LIBRARY, REDIRECT_TO_INVALID_FUNCTION_TYPE, REDIRECT_TO_INVALID_RETURN_TYPE, REDIRECT_TO_MISSING_CONSTRUCTOR, REDIRECT_TO_NON_CLASS, RETURN_WITHOUT_VALUE, STATIC_ACCESS_TO_INSTANCE_MEMBER, SWITCH_EXPRESSION_NOT_ASSIGNABLE, TYPE_TEST_NON_TYPE, UNDEFINED_CLASS, UNDEFINED_CLASS_BOOLEAN, UNDEFINED_GETTER, UNDEFINED_IDENTIFIER, UNDEFINED_NAMED_PARAMETER, UNDEFINED_SETTER, UNDEFINED_STATIC_METHOD_OR_GETTER];
+ static final StaticWarningCode UNDEFINED_STATIC_METHOD_OR_GETTER = new StaticWarningCode('UNDEFINED_STATIC_METHOD_OR_GETTER', 66, "There is no such static method '%s' in '%s'");
+ static final List<StaticWarningCode> values = [AMBIGUOUS_IMPORT, ARGUMENT_TYPE_NOT_ASSIGNABLE, ASSIGNMENT_TO_FINAL, CASE_BLOCK_NOT_TERMINATED, CAST_TO_NON_TYPE, COMMENT_REFERENCE_CONSTRUCTOR_NOT_VISIBLE, COMMENT_REFERENCE_IDENTIFIER_NOT_VISIBLE, COMMENT_REFERENCE_UNDECLARED_CONSTRUCTOR, COMMENT_REFERENCE_UNDECLARED_IDENTIFIER, COMMENT_REFERENCE_URI_NOT_LIBRARY, CONCRETE_CLASS_WITH_ABSTRACT_MEMBER, CONFLICTING_INSTANCE_GETTER_AND_SUPERCLASS_MEMBER, CONFLICTING_INSTANCE_SETTER_AND_SUPERCLASS_MEMBER, CONFLICTING_STATIC_GETTER_AND_INSTANCE_SETTER, CONFLICTING_STATIC_SETTER_AND_INSTANCE_MEMBER, CONST_WITH_ABSTRACT_CLASS, EQUAL_KEYS_IN_MAP, EXPORT_DUPLICATED_LIBRARY_NAME, EXTRA_POSITIONAL_ARGUMENTS, FIELD_INITIALIZER_NOT_ASSIGNABLE, FIELD_INITIALIZING_FORMAL_NOT_ASSIGNABLE, FINAL_NOT_INITIALIZED, IMPORT_DUPLICATED_LIBRARY_NAME, INCONSISTENT_METHOD_INHERITANCE_GETTER_AND_METHOD, INCORRECT_NUMBER_OF_ARGUMENTS, INSTANCE_METHOD_NAME_COLLIDES_WITH_SUPERCLASS_STATIC, INVALID_FACTORY_NAME, INVALID_GETTER_OVERRIDE_RETURN_TYPE, INVALID_METHOD_OVERRIDE_NAMED_PARAM_TYPE, INVALID_METHOD_OVERRIDE_NORMAL_PARAM_TYPE, INVALID_METHOD_OVERRIDE_OPTIONAL_PARAM_TYPE, INVALID_METHOD_OVERRIDE_RETURN_TYPE, INVALID_OVERRIDE_DIFFERENT_DEFAULT_VALUES, INVALID_SETTER_OVERRIDE_NORMAL_PARAM_TYPE, INVOCATION_OF_NON_FUNCTION, MISMATCHED_GETTER_AND_SETTER_TYPES, NEW_WITH_ABSTRACT_CLASS, NEW_WITH_NON_TYPE, NEW_WITH_UNDEFINED_CONSTRUCTOR, NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FIVE_PLUS, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_FOUR, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_ONE, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_THREE, NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER_TWO, NON_TYPE_IN_CATCH_CLAUSE, NON_VOID_RETURN_FOR_OPERATOR, NON_VOID_RETURN_FOR_SETTER, NOT_A_TYPE, NOT_ENOUGH_REQUIRED_ARGUMENTS, PART_OF_DIFFERENT_LIBRARY, REDIRECT_TO_INVALID_FUNCTION_TYPE, REDIRECT_TO_INVALID_RETURN_TYPE, REDIRECT_TO_MISSING_CONSTRUCTOR, REDIRECT_TO_NON_CLASS, RETURN_WITHOUT_VALUE, STATIC_ACCESS_TO_INSTANCE_MEMBER, SWITCH_EXPRESSION_NOT_ASSIGNABLE, TYPE_TEST_NON_TYPE, TYPE_VARIABLE_IN_STATIC_SCOPE, UNDEFINED_CLASS, UNDEFINED_CLASS_BOOLEAN, UNDEFINED_GETTER, UNDEFINED_IDENTIFIER, UNDEFINED_NAMED_PARAMETER, UNDEFINED_SETTER, UNDEFINED_STATIC_METHOD_OR_GETTER];
/// The name of this enum constant, as declared in the enum declaration.
final String name;
diff --git a/pkg/analyzer_experimental/lib/src/generated/html.dart b/pkg/analyzer_experimental/lib/src/generated/html.dart
index 741c07f..02ca349 100644
--- a/pkg/analyzer_experimental/lib/src/generated/html.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/html.dart
@@ -8,6 +8,7 @@
import 'error.dart';
import 'instrumentation.dart';
import 'element.dart' show HtmlElementImpl;
+import 'engine.dart' show AnalysisEngine;
/**
* Instances of the class {@code Token} represent a token that was scanned from the input. Each
* token knows which token follows it, acting as the head of a linked list of tokens.
@@ -227,12 +228,12 @@
* @return the number of characters in the node's source range
*/
int get length {
- Token beginToken2 = beginToken;
- Token endToken2 = endToken;
- if (beginToken2 == null || endToken2 == null) {
+ Token beginToken = this.beginToken;
+ Token endToken = this.endToken;
+ if (beginToken == null || endToken == null) {
return -1;
}
- return endToken2.offset + endToken2.length - beginToken2.offset;
+ return endToken.offset + endToken.length - beginToken.offset;
}
/**
@@ -242,8 +243,8 @@
* range
*/
int get offset {
- Token beginToken2 = beginToken;
- if (beginToken2 == null) {
+ Token beginToken = this.beginToken;
+ if (beginToken == null) {
return -1;
}
return beginToken.offset;
@@ -806,18 +807,18 @@
return null;
}
Object visitXmlAttributeNode(XmlAttributeNode node) {
- String name2 = node.name.lexeme;
- Token value2 = node.value;
- if (name2.length == 0) {
+ String name = node.name.lexeme;
+ Token value = node.value;
+ if (name.length == 0) {
_writer.print("__");
} else {
- _writer.print(name2);
+ _writer.print(name);
}
_writer.print("=");
- if (value2 == null) {
+ if (value == null) {
_writer.print("__");
} else {
- _writer.print(value2.lexeme);
+ _writer.print(value.lexeme);
}
return null;
}
@@ -1161,8 +1162,8 @@
* @return a collection of zero or more attributes (not {@code null}, contains no {@code null}s)
*/
List<XmlAttributeNode> parseAttributes() {
- TokenType type2 = _currentToken.type;
- if (identical(type2, TokenType.GT) || identical(type2, TokenType.SLASH_GT) || identical(type2, TokenType.EOF)) {
+ TokenType type = _currentToken.type;
+ if (identical(type, TokenType.GT) || identical(type, TokenType.SLASH_GT) || identical(type, TokenType.EOF)) {
return XmlTagNode.NO_ATTRIBUTES;
}
List<XmlAttributeNode> attributes = new List<XmlAttributeNode>();
@@ -1187,8 +1188,8 @@
* @return a list of nodes (not {@code null}, contains no {@code null}s)
*/
List<XmlTagNode> parseChildTagNodes() {
- TokenType type2 = _currentToken.type;
- if (identical(type2, TokenType.LT_SLASH) || identical(type2, TokenType.EOF)) {
+ TokenType type = _currentToken.type;
+ if (identical(type, TokenType.LT_SLASH) || identical(type, TokenType.EOF)) {
return XmlTagNode.NO_TAG_NODES;
}
List<XmlTagNode> nodes = new List<XmlTagNode>();
diff --git a/pkg/analyzer_experimental/lib/src/generated/parser.dart b/pkg/analyzer_experimental/lib/src/generated/parser.dart
index c24b42e..b03b6f2 100644
--- a/pkg/analyzer_experimental/lib/src/generated/parser.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/parser.dart
@@ -590,21 +590,21 @@
*/
List<List<int>> getCodeBlockRanges(String comment) {
List<List<int>> ranges = new List<List<int>>();
- int length2 = comment.length;
+ int length = comment.length;
int index = 0;
if (comment.startsWith("/**") || comment.startsWith("///")) {
index = 3;
}
- while (index < length2) {
+ while (index < length) {
int currentChar = comment.codeUnitAt(index);
if (currentChar == 0xD || currentChar == 0xA) {
index = index + 1;
- while (index < length2 && Character.isWhitespace(comment.codeUnitAt(index))) {
+ while (index < length && Character.isWhitespace(comment.codeUnitAt(index))) {
index = index + 1;
}
if (JavaString.startsWithBefore(comment, "* ", index)) {
int end = index + 6;
- while (end < length2 && comment.codeUnitAt(end) != 0xD && comment.codeUnitAt(end) != 0xA) {
+ while (end < length && comment.codeUnitAt(end) != 0xD && comment.codeUnitAt(end) != 0xA) {
end = end + 1;
}
ranges.add(<int> [index, end]);
@@ -613,7 +613,7 @@
} else if (JavaString.startsWithBefore(comment, "[:", index)) {
int end = comment.indexOf(":]", index + 2);
if (end < 0) {
- end = length2;
+ end = length;
}
ranges.add(<int> [index, end]);
index = end + 1;
@@ -732,8 +732,8 @@
if (token == null) {
return false;
}
- TokenType type2 = token.type;
- return identical(type2, TokenType.EQ) || identical(type2, TokenType.COMMA) || identical(type2, TokenType.SEMICOLON) || matches3(token, Keyword.IN);
+ TokenType type = token.type;
+ return identical(type, TokenType.EQ) || identical(type, TokenType.COMMA) || identical(type, TokenType.SEMICOLON) || matches3(token, Keyword.IN);
}
/**
@@ -748,9 +748,9 @@
* @return {@code true} if the bracketed text is followed by a link address
*/
bool isLinkText(String comment, int rightIndex) {
- int length2 = comment.length;
+ int length = comment.length;
int index = rightIndex + 1;
- if (index >= length2) {
+ if (index >= length) {
return false;
}
int nextChar = comment.codeUnitAt(index);
@@ -759,7 +759,7 @@
}
while (Character.isWhitespace(nextChar)) {
index = index + 1;
- if (index >= length2) {
+ if (index >= length) {
return false;
}
nextChar = comment.codeUnitAt(index);
@@ -793,8 +793,8 @@
token = token.next.next;
}
if (identical(token.type, TokenType.KEYWORD)) {
- Keyword keyword2 = ((token as KeywordToken)).keyword;
- return identical(keyword2, Keyword.CASE) || identical(keyword2, Keyword.DEFAULT);
+ Keyword keyword = ((token as KeywordToken)).keyword;
+ return identical(keyword, Keyword.CASE) || identical(keyword, Keyword.DEFAULT);
}
return false;
}
@@ -812,10 +812,10 @@
int firstOffset = 2147483647;
for (Token token in tokens) {
if (token != null) {
- int offset2 = token.offset;
- if (offset2 < firstOffset) {
+ int offset = token.offset;
+ if (offset < firstOffset) {
first = token;
- firstOffset = offset2;
+ firstOffset = offset;
}
}
}
@@ -865,28 +865,28 @@
if (currentType != type2) {
if (identical(type2, TokenType.GT)) {
if (identical(currentType, TokenType.GT_GT)) {
- int offset2 = _currentToken.offset;
- Token first = new Token(TokenType.GT, offset2);
- Token second = new Token(TokenType.GT, offset2 + 1);
+ int offset = _currentToken.offset;
+ Token first = new Token(TokenType.GT, offset);
+ Token second = new Token(TokenType.GT, offset + 1);
second.setNext(_currentToken.next);
first.setNext(second);
_currentToken.previous.setNext(first);
_currentToken = first;
return true;
} else if (identical(currentType, TokenType.GT_EQ)) {
- int offset3 = _currentToken.offset;
- Token first = new Token(TokenType.GT, offset3);
- Token second = new Token(TokenType.EQ, offset3 + 1);
+ int offset = _currentToken.offset;
+ Token first = new Token(TokenType.GT, offset);
+ Token second = new Token(TokenType.EQ, offset + 1);
second.setNext(_currentToken.next);
first.setNext(second);
_currentToken.previous.setNext(first);
_currentToken = first;
return true;
} else if (identical(currentType, TokenType.GT_GT_EQ)) {
- int offset4 = _currentToken.offset;
- Token first = new Token(TokenType.GT, offset4);
- Token second = new Token(TokenType.GT, offset4 + 1);
- Token third = new Token(TokenType.EQ, offset4 + 2);
+ int offset = _currentToken.offset;
+ Token first = new Token(TokenType.GT, offset);
+ Token second = new Token(TokenType.GT, offset + 1);
+ Token third = new Token(TokenType.EQ, offset + 2);
third.setNext(_currentToken.next);
second.setNext(third);
first.setNext(second);
@@ -1723,10 +1723,10 @@
List<CommentReference> references = new List<CommentReference>();
for (Token token in tokens) {
String comment = token.lexeme;
- int length2 = comment.length;
+ int length = comment.length;
List<List<int>> codeBlockRanges = getCodeBlockRanges(comment);
int leftIndex = comment.indexOf('[');
- while (leftIndex >= 0 && leftIndex + 1 < length2) {
+ while (leftIndex >= 0 && leftIndex + 1 < length) {
List<int> range = findRange(codeBlockRanges, leftIndex);
if (range == null) {
int rightIndex = comment.indexOf(']', leftIndex);
@@ -2558,11 +2558,11 @@
if (variableList == null) {
reportError7(ParserErrorCode.MISSING_VARIABLE_IN_FOR_EACH, []);
} else {
- NodeList<VariableDeclaration> variables2 = variableList.variables;
- if (variables2.length > 1) {
- reportError7(ParserErrorCode.MULTIPLE_VARIABLES_IN_FOR_EACH, [variables2.length.toString()]);
+ NodeList<VariableDeclaration> variables = variableList.variables;
+ if (variables.length > 1) {
+ reportError7(ParserErrorCode.MULTIPLE_VARIABLES_IN_FOR_EACH, [variables.length.toString()]);
}
- VariableDeclaration variable = variables2[0];
+ VariableDeclaration variable = variables[0];
if (variable.initializer != null) {
reportError7(ParserErrorCode.INITIALIZED_VARIABLE_IN_FOR_EACH, []);
}
@@ -3313,34 +3313,34 @@
}
return parseBlock();
} else if (matches5(TokenType.KEYWORD) && !((_currentToken as KeywordToken)).keyword.isPseudoKeyword()) {
- Keyword keyword2 = ((_currentToken as KeywordToken)).keyword;
- if (identical(keyword2, Keyword.ASSERT)) {
+ Keyword keyword = ((_currentToken as KeywordToken)).keyword;
+ if (identical(keyword, Keyword.ASSERT)) {
return parseAssertStatement();
- } else if (identical(keyword2, Keyword.BREAK)) {
+ } else if (identical(keyword, Keyword.BREAK)) {
return parseBreakStatement();
- } else if (identical(keyword2, Keyword.CONTINUE)) {
+ } else if (identical(keyword, Keyword.CONTINUE)) {
return parseContinueStatement();
- } else if (identical(keyword2, Keyword.DO)) {
+ } else if (identical(keyword, Keyword.DO)) {
return parseDoStatement();
- } else if (identical(keyword2, Keyword.FOR)) {
+ } else if (identical(keyword, Keyword.FOR)) {
return parseForStatement();
- } else if (identical(keyword2, Keyword.IF)) {
+ } else if (identical(keyword, Keyword.IF)) {
return parseIfStatement();
- } else if (identical(keyword2, Keyword.RETHROW)) {
+ } else if (identical(keyword, Keyword.RETHROW)) {
return new ExpressionStatement.full(parseRethrowExpression(), expect2(TokenType.SEMICOLON));
- } else if (identical(keyword2, Keyword.RETURN)) {
+ } else if (identical(keyword, Keyword.RETURN)) {
return parseReturnStatement();
- } else if (identical(keyword2, Keyword.SWITCH)) {
+ } else if (identical(keyword, Keyword.SWITCH)) {
return parseSwitchStatement();
- } else if (identical(keyword2, Keyword.THROW)) {
+ } else if (identical(keyword, Keyword.THROW)) {
return new ExpressionStatement.full(parseThrowExpression(), expect2(TokenType.SEMICOLON));
- } else if (identical(keyword2, Keyword.TRY)) {
+ } else if (identical(keyword, Keyword.TRY)) {
return parseTryStatement();
- } else if (identical(keyword2, Keyword.WHILE)) {
+ } else if (identical(keyword, Keyword.WHILE)) {
return parseWhileStatement();
- } else if (identical(keyword2, Keyword.VAR) || identical(keyword2, Keyword.FINAL)) {
+ } else if (identical(keyword, Keyword.VAR) || identical(keyword, Keyword.FINAL)) {
return parseVariableDeclarationStatement(commentAndMetadata);
- } else if (identical(keyword2, Keyword.VOID)) {
+ } else if (identical(keyword, Keyword.VOID)) {
TypeName returnType = parseReturnType();
if (matchesIdentifier() && matchesAny(peek(), [TokenType.OPEN_PAREN, TokenType.OPEN_CURLY_BRACKET, TokenType.FUNCTION])) {
return parseFunctionDeclarationStatement2(commentAndMetadata, returnType);
@@ -3356,7 +3356,7 @@
reportError7(ParserErrorCode.MISSING_STATEMENT, []);
return new EmptyStatement.full(createSyntheticToken2(TokenType.SEMICOLON));
}
- } else if (identical(keyword2, Keyword.CONST)) {
+ } else if (identical(keyword, Keyword.CONST)) {
if (matchesAny(peek(), [TokenType.LT, TokenType.OPEN_CURLY_BRACKET, TokenType.OPEN_SQUARE_BRACKET, TokenType.INDEX])) {
return new ExpressionStatement.full(parseExpression2(), expect2(TokenType.SEMICOLON));
} else if (matches4(peek(), TokenType.IDENTIFIER)) {
@@ -3368,7 +3368,7 @@
}
}
return parseVariableDeclarationStatement(commentAndMetadata);
- } else if (identical(keyword2, Keyword.NEW) || identical(keyword2, Keyword.TRUE) || identical(keyword2, Keyword.FALSE) || identical(keyword2, Keyword.NULL) || identical(keyword2, Keyword.SUPER) || identical(keyword2, Keyword.THIS)) {
+ } else if (identical(keyword, Keyword.NEW) || identical(keyword, Keyword.TRUE) || identical(keyword, Keyword.FALSE) || identical(keyword, Keyword.NULL) || identical(keyword, Keyword.SUPER) || identical(keyword, Keyword.THIS)) {
return new ExpressionStatement.full(parseExpression2(), expect2(TokenType.SEMICOLON));
} else {
reportError7(ParserErrorCode.MISSING_STATEMENT, []);
@@ -3421,9 +3421,9 @@
FormalParameterList parameters = parseFormalParameterList();
return new FunctionTypedFormalParameter.full(commentAndMetadata.comment, commentAndMetadata.metadata, holder.type, identifier, parameters);
}
- TypeName type2 = holder.type;
- if (type2 != null && matches3(type2.name.beginToken, Keyword.VOID)) {
- reportError8(ParserErrorCode.VOID_PARAMETER, type2.name.beginToken, []);
+ TypeName type = holder.type;
+ if (type != null && matches3(type.name.beginToken, Keyword.VOID)) {
+ reportError8(ParserErrorCode.VOID_PARAMETER, type.name.beginToken, []);
}
if (thisKeyword != null) {
return new FieldFormalParameter.full(commentAndMetadata.comment, commentAndMetadata.metadata, holder.keyword, holder.type, thisKeyword, period, identifier);
@@ -3459,9 +3459,9 @@
}
SimpleIdentifier name = new SimpleIdentifier.full(andAdvance);
if (matches5(TokenType.EQ)) {
- Token previous2 = _currentToken.previous;
- if ((matches4(previous2, TokenType.EQ_EQ) || matches4(previous2, TokenType.BANG_EQ)) && _currentToken.offset == previous2.offset + 2) {
- reportError7(ParserErrorCode.INVALID_OPERATOR, ["${previous2.lexeme}${_currentToken.lexeme}"]);
+ Token previous = _currentToken.previous;
+ if ((matches4(previous, TokenType.EQ_EQ) || matches4(previous, TokenType.BANG_EQ)) && _currentToken.offset == previous.offset + 2) {
+ reportError7(ParserErrorCode.INVALID_OPERATOR, ["${previous.lexeme}${_currentToken.lexeme}"]);
advance();
}
}
@@ -4263,9 +4263,9 @@
return new PrefixExpression.full(operator, parseUnaryExpression());
}
if (identical(operator.type, TokenType.MINUS_MINUS)) {
- int offset2 = operator.offset;
- Token firstOperator = new Token(TokenType.MINUS, offset2);
- Token secondOperator = new Token(TokenType.MINUS, offset2 + 1);
+ int offset = operator.offset;
+ Token firstOperator = new Token(TokenType.MINUS, offset);
+ Token secondOperator = new Token(TokenType.MINUS, offset + 1);
secondOperator.setNext(_currentToken);
firstOperator.setNext(secondOperator);
operator.previous.setNext(firstOperator);
@@ -4480,15 +4480,15 @@
*/
Token skipFinalConstVarOrType(Token startToken) {
if (matches3(startToken, Keyword.FINAL) || matches3(startToken, Keyword.CONST)) {
- Token next2 = startToken.next;
- if (matchesIdentifier2(next2.next) || matches4(next2.next, TokenType.LT) || matches3(next2.next, Keyword.THIS)) {
- return skipTypeName(next2);
+ Token next = startToken.next;
+ if (matchesIdentifier2(next.next) || matches4(next.next, TokenType.LT) || matches3(next.next, Keyword.THIS)) {
+ return skipTypeName(next);
}
} else if (matches3(startToken, Keyword.VAR)) {
return startToken.next;
} else if (matchesIdentifier2(startToken)) {
- Token next3 = startToken.next;
- if (matchesIdentifier2(next3) || matches4(next3, TokenType.LT) || matches3(next3, Keyword.THIS) || (matches4(next3, TokenType.PERIOD) && matchesIdentifier2(next3.next) && (matchesIdentifier2(next3.next.next) || matches4(next3.next.next, TokenType.LT) || matches3(next3.next.next, Keyword.THIS)))) {
+ Token next = startToken.next;
+ if (matchesIdentifier2(next) || matches4(next, TokenType.LT) || matches3(next, Keyword.THIS) || (matches4(next, TokenType.PERIOD) && matchesIdentifier2(next.next) && (matchesIdentifier2(next.next.next) || matches4(next.next.next, TokenType.LT) || matches3(next.next.next, Keyword.THIS)))) {
return skipReturnType(startToken);
}
}
@@ -4530,20 +4530,20 @@
if (!matches4(startToken, TokenType.OPEN_PAREN)) {
return null;
}
- Token next2 = startToken.next;
- if (matches4(next2, TokenType.CLOSE_PAREN)) {
- return next2.next;
+ Token next = startToken.next;
+ if (matches4(next, TokenType.CLOSE_PAREN)) {
+ return next.next;
}
- if (matchesAny(next2, [TokenType.AT, TokenType.OPEN_SQUARE_BRACKET, TokenType.OPEN_CURLY_BRACKET]) || matches3(next2, Keyword.VOID) || (matchesIdentifier2(next2) && (matchesAny(next2.next, [TokenType.COMMA, TokenType.CLOSE_PAREN])))) {
+ if (matchesAny(next, [TokenType.AT, TokenType.OPEN_SQUARE_BRACKET, TokenType.OPEN_CURLY_BRACKET]) || matches3(next, Keyword.VOID) || (matchesIdentifier2(next) && (matchesAny(next.next, [TokenType.COMMA, TokenType.CLOSE_PAREN])))) {
return skipPastMatchingToken(startToken);
}
- if (matchesIdentifier2(next2) && matches4(next2.next, TokenType.OPEN_PAREN)) {
- Token afterParameters = skipFormalParameterList(next2.next);
+ if (matchesIdentifier2(next) && matches4(next.next, TokenType.OPEN_PAREN)) {
+ Token afterParameters = skipFormalParameterList(next.next);
if (afterParameters != null && (matchesAny(afterParameters, [TokenType.COMMA, TokenType.CLOSE_PAREN]))) {
return skipPastMatchingToken(startToken);
}
}
- Token afterType = skipFinalConstVarOrType(next2);
+ Token afterType = skipFinalConstVarOrType(next);
if (afterType == null) {
return null;
}
@@ -4648,20 +4648,20 @@
*/
Token skipStringInterpolation(Token startToken) {
Token token = startToken;
- TokenType type2 = token.type;
- while (identical(type2, TokenType.STRING_INTERPOLATION_EXPRESSION) || identical(type2, TokenType.STRING_INTERPOLATION_IDENTIFIER)) {
- if (identical(type2, TokenType.STRING_INTERPOLATION_EXPRESSION)) {
+ TokenType type = token.type;
+ while (identical(type, TokenType.STRING_INTERPOLATION_EXPRESSION) || identical(type, TokenType.STRING_INTERPOLATION_IDENTIFIER)) {
+ if (identical(type, TokenType.STRING_INTERPOLATION_EXPRESSION)) {
token = token.next;
- type2 = token.type;
+ type = token.type;
int bracketNestingLevel = 1;
while (bracketNestingLevel > 0) {
- if (identical(type2, TokenType.EOF)) {
+ if (identical(type, TokenType.EOF)) {
return null;
- } else if (identical(type2, TokenType.OPEN_CURLY_BRACKET)) {
+ } else if (identical(type, TokenType.OPEN_CURLY_BRACKET)) {
bracketNestingLevel++;
- } else if (identical(type2, TokenType.CLOSE_CURLY_BRACKET)) {
+ } else if (identical(type, TokenType.CLOSE_CURLY_BRACKET)) {
bracketNestingLevel--;
- } else if (identical(type2, TokenType.STRING)) {
+ } else if (identical(type, TokenType.STRING)) {
token = skipStringLiteral(token);
if (token == null) {
return null;
@@ -4669,10 +4669,10 @@
} else {
token = token.next;
}
- type2 = token.type;
+ type = token.type;
}
token = token.next;
- type2 = token.type;
+ type = token.type;
} else {
token = token.next;
if (token.type != TokenType.IDENTIFIER) {
@@ -4680,10 +4680,10 @@
}
token = token.next;
}
- type2 = token.type;
- if (identical(type2, TokenType.STRING)) {
+ type = token.type;
+ if (identical(type, TokenType.STRING)) {
token = token.next;
- type2 = token.type;
+ type = token.type;
}
}
return token;
@@ -4707,8 +4707,8 @@
Token token = startToken;
while (token != null && matches4(token, TokenType.STRING)) {
token = token.next;
- TokenType type2 = token.type;
- if (identical(type2, TokenType.STRING_INTERPOLATION_EXPRESSION) || identical(type2, TokenType.STRING_INTERPOLATION_IDENTIFIER)) {
+ TokenType type = token.type;
+ if (identical(type, TokenType.STRING_INTERPOLATION_EXPRESSION) || identical(type, TokenType.STRING_INTERPOLATION_IDENTIFIER)) {
token = skipStringInterpolation(token);
}
}
@@ -4800,36 +4800,36 @@
return null;
}
int depth = 1;
- Token next2 = startToken.next;
+ Token next = startToken.next;
while (depth > 0) {
- if (matches4(next2, TokenType.EOF)) {
+ if (matches4(next, TokenType.EOF)) {
return null;
- } else if (matches4(next2, TokenType.LT)) {
+ } else if (matches4(next, TokenType.LT)) {
depth++;
- } else if (matches4(next2, TokenType.GT)) {
+ } else if (matches4(next, TokenType.GT)) {
depth--;
- } else if (matches4(next2, TokenType.GT_EQ)) {
+ } else if (matches4(next, TokenType.GT_EQ)) {
if (depth == 1) {
- Token fakeEquals = new Token(TokenType.EQ, next2.offset + 2);
- fakeEquals.setNextWithoutSettingPrevious(next2.next);
+ Token fakeEquals = new Token(TokenType.EQ, next.offset + 2);
+ fakeEquals.setNextWithoutSettingPrevious(next.next);
return fakeEquals;
}
depth--;
- } else if (matches4(next2, TokenType.GT_GT)) {
+ } else if (matches4(next, TokenType.GT_GT)) {
depth -= 2;
- } else if (matches4(next2, TokenType.GT_GT_EQ)) {
+ } else if (matches4(next, TokenType.GT_GT_EQ)) {
if (depth < 2) {
return null;
} else if (depth == 2) {
- Token fakeEquals = new Token(TokenType.EQ, next2.offset + 2);
- fakeEquals.setNextWithoutSettingPrevious(next2.next);
+ Token fakeEquals = new Token(TokenType.EQ, next.offset + 2);
+ fakeEquals.setNextWithoutSettingPrevious(next.next);
return fakeEquals;
}
depth -= 2;
}
- next2 = next2.next;
+ next = next.next;
}
- return next2;
+ return next;
}
/**
@@ -4846,10 +4846,10 @@
builder.appendChar(currentChar);
return index + 1;
}
- int length2 = lexeme.length;
+ int length = lexeme.length;
int currentIndex = index + 1;
- if (currentIndex >= length2) {
- return length2;
+ if (currentIndex >= length) {
+ return length;
}
currentChar = lexeme.codeUnitAt(currentIndex);
if (currentChar == 0x6E) {
@@ -4865,9 +4865,9 @@
} else if (currentChar == 0x76) {
builder.appendChar(0xB);
} else if (currentChar == 0x78) {
- if (currentIndex + 2 >= length2) {
+ if (currentIndex + 2 >= length) {
reportError7(ParserErrorCode.INVALID_HEX_ESCAPE, []);
- return length2;
+ return length;
}
int firstDigit = lexeme.codeUnitAt(currentIndex + 1);
int secondDigit = lexeme.codeUnitAt(currentIndex + 2);
@@ -4879,16 +4879,16 @@
return currentIndex + 3;
} else if (currentChar == 0x75) {
currentIndex++;
- if (currentIndex >= length2) {
+ if (currentIndex >= length) {
reportError7(ParserErrorCode.INVALID_UNICODE_ESCAPE, []);
- return length2;
+ return length;
}
currentChar = lexeme.codeUnitAt(currentIndex);
if (currentChar == 0x7B) {
currentIndex++;
- if (currentIndex >= length2) {
+ if (currentIndex >= length) {
reportError7(ParserErrorCode.INVALID_UNICODE_ESCAPE, []);
- return length2;
+ return length;
}
currentChar = lexeme.codeUnitAt(currentIndex);
int digitCount = 0;
@@ -4897,7 +4897,7 @@
if (!isHexDigit(currentChar)) {
reportError7(ParserErrorCode.INVALID_UNICODE_ESCAPE, []);
currentIndex++;
- while (currentIndex < length2 && lexeme.codeUnitAt(currentIndex) != 0x7D) {
+ while (currentIndex < length && lexeme.codeUnitAt(currentIndex) != 0x7D) {
currentIndex++;
}
return currentIndex + 1;
@@ -4905,9 +4905,9 @@
digitCount++;
value = (value << 4) + Character.digit(currentChar, 16);
currentIndex++;
- if (currentIndex >= length2) {
+ if (currentIndex >= length) {
reportError7(ParserErrorCode.INVALID_UNICODE_ESCAPE, []);
- return length2;
+ return length;
}
currentChar = lexeme.codeUnitAt(currentIndex);
}
@@ -4917,9 +4917,9 @@
appendScalarValue(builder, lexeme.substring(index, currentIndex + 1), value, index, currentIndex);
return currentIndex + 1;
} else {
- if (currentIndex + 3 >= length2) {
+ if (currentIndex + 3 >= length) {
reportError7(ParserErrorCode.INVALID_UNICODE_ESCAPE, []);
- return length2;
+ return length;
}
int firstDigit = currentChar;
int secondDigit = lexeme.codeUnitAt(currentIndex + 1);
@@ -4991,16 +4991,16 @@
if (modifiers.varKeyword != null) {
reportError8(ParserErrorCode.CONSTRUCTOR_WITH_RETURN_TYPE, modifiers.varKeyword, []);
}
- Token externalKeyword2 = modifiers.externalKeyword;
- Token constKeyword2 = modifiers.constKeyword;
- Token factoryKeyword2 = modifiers.factoryKeyword;
- if (externalKeyword2 != null && constKeyword2 != null && constKeyword2.offset < externalKeyword2.offset) {
- reportError8(ParserErrorCode.EXTERNAL_AFTER_CONST, externalKeyword2, []);
+ Token externalKeyword = modifiers.externalKeyword;
+ Token constKeyword = modifiers.constKeyword;
+ Token factoryKeyword = modifiers.factoryKeyword;
+ if (externalKeyword != null && constKeyword != null && constKeyword.offset < externalKeyword.offset) {
+ reportError8(ParserErrorCode.EXTERNAL_AFTER_CONST, externalKeyword, []);
}
- if (externalKeyword2 != null && factoryKeyword2 != null && factoryKeyword2.offset < externalKeyword2.offset) {
- reportError8(ParserErrorCode.EXTERNAL_AFTER_FACTORY, externalKeyword2, []);
+ if (externalKeyword != null && factoryKeyword != null && factoryKeyword.offset < externalKeyword.offset) {
+ reportError8(ParserErrorCode.EXTERNAL_AFTER_FACTORY, externalKeyword, []);
}
- return constKeyword2;
+ return constKeyword;
}
/**
@@ -5019,31 +5019,31 @@
if (modifiers.factoryKeyword != null) {
reportError8(ParserErrorCode.NON_CONSTRUCTOR_FACTORY, modifiers.factoryKeyword, []);
}
- Token staticKeyword2 = modifiers.staticKeyword;
- Token constKeyword2 = modifiers.constKeyword;
- Token finalKeyword2 = modifiers.finalKeyword;
- Token varKeyword2 = modifiers.varKeyword;
- if (constKeyword2 != null) {
- if (finalKeyword2 != null) {
- reportError8(ParserErrorCode.CONST_AND_FINAL, finalKeyword2, []);
+ Token staticKeyword = modifiers.staticKeyword;
+ Token constKeyword = modifiers.constKeyword;
+ Token finalKeyword = modifiers.finalKeyword;
+ Token varKeyword = modifiers.varKeyword;
+ if (constKeyword != null) {
+ if (finalKeyword != null) {
+ reportError8(ParserErrorCode.CONST_AND_FINAL, finalKeyword, []);
}
- if (varKeyword2 != null) {
- reportError8(ParserErrorCode.CONST_AND_VAR, varKeyword2, []);
+ if (varKeyword != null) {
+ reportError8(ParserErrorCode.CONST_AND_VAR, varKeyword, []);
}
- if (staticKeyword2 != null && constKeyword2.offset < staticKeyword2.offset) {
- reportError8(ParserErrorCode.STATIC_AFTER_CONST, staticKeyword2, []);
+ if (staticKeyword != null && constKeyword.offset < staticKeyword.offset) {
+ reportError8(ParserErrorCode.STATIC_AFTER_CONST, staticKeyword, []);
}
- } else if (finalKeyword2 != null) {
- if (varKeyword2 != null) {
- reportError8(ParserErrorCode.FINAL_AND_VAR, varKeyword2, []);
+ } else if (finalKeyword != null) {
+ if (varKeyword != null) {
+ reportError8(ParserErrorCode.FINAL_AND_VAR, varKeyword, []);
}
- if (staticKeyword2 != null && finalKeyword2.offset < staticKeyword2.offset) {
- reportError8(ParserErrorCode.STATIC_AFTER_FINAL, staticKeyword2, []);
+ if (staticKeyword != null && finalKeyword.offset < staticKeyword.offset) {
+ reportError8(ParserErrorCode.STATIC_AFTER_FINAL, staticKeyword, []);
}
- } else if (varKeyword2 != null && staticKeyword2 != null && varKeyword2.offset < staticKeyword2.offset) {
- reportError8(ParserErrorCode.STATIC_AFTER_VAR, staticKeyword2, []);
+ } else if (varKeyword != null && staticKeyword != null && varKeyword.offset < staticKeyword.offset) {
+ reportError8(ParserErrorCode.STATIC_AFTER_VAR, staticKeyword, []);
}
- return lexicallyFirst([constKeyword2, finalKeyword2, varKeyword2]);
+ return lexicallyFirst([constKeyword, finalKeyword, varKeyword]);
}
/**
@@ -5066,10 +5066,10 @@
if (modifiers.varKeyword != null) {
reportError8(ParserErrorCode.VAR_RETURN_TYPE, modifiers.varKeyword, []);
}
- Token externalKeyword2 = modifiers.externalKeyword;
- Token staticKeyword2 = modifiers.staticKeyword;
- if (externalKeyword2 != null && staticKeyword2 != null && staticKeyword2.offset < externalKeyword2.offset) {
- reportError8(ParserErrorCode.EXTERNAL_AFTER_STATIC, externalKeyword2, []);
+ Token externalKeyword = modifiers.externalKeyword;
+ Token staticKeyword = modifiers.staticKeyword;
+ if (externalKeyword != null && staticKeyword != null && staticKeyword.offset < externalKeyword.offset) {
+ reportError8(ParserErrorCode.EXTERNAL_AFTER_STATIC, externalKeyword, []);
}
}
@@ -5145,22 +5145,22 @@
if (modifiers.externalKeyword != null) {
reportError8(ParserErrorCode.EXTERNAL_FIELD, modifiers.externalKeyword, []);
}
- Token constKeyword2 = modifiers.constKeyword;
- Token finalKeyword2 = modifiers.finalKeyword;
- Token varKeyword2 = modifiers.varKeyword;
- if (constKeyword2 != null) {
- if (finalKeyword2 != null) {
- reportError8(ParserErrorCode.CONST_AND_FINAL, finalKeyword2, []);
+ Token constKeyword = modifiers.constKeyword;
+ Token finalKeyword = modifiers.finalKeyword;
+ Token varKeyword = modifiers.varKeyword;
+ if (constKeyword != null) {
+ if (finalKeyword != null) {
+ reportError8(ParserErrorCode.CONST_AND_FINAL, finalKeyword, []);
}
- if (varKeyword2 != null) {
- reportError8(ParserErrorCode.CONST_AND_VAR, varKeyword2, []);
+ if (varKeyword != null) {
+ reportError8(ParserErrorCode.CONST_AND_VAR, varKeyword, []);
}
- } else if (finalKeyword2 != null) {
- if (varKeyword2 != null) {
- reportError8(ParserErrorCode.FINAL_AND_VAR, varKeyword2, []);
+ } else if (finalKeyword != null) {
+ if (varKeyword != null) {
+ reportError8(ParserErrorCode.FINAL_AND_VAR, varKeyword, []);
}
}
- return lexicallyFirst([constKeyword2, finalKeyword2, varKeyword2]);
+ return lexicallyFirst([constKeyword, finalKeyword, varKeyword]);
}
/**
@@ -5548,12 +5548,12 @@
}
Object visitCommentReference(CommentReference node) => null;
Object visitCompilationUnit(CompilationUnit node) {
- ScriptTag scriptTag2 = node.scriptTag;
- NodeList<Directive> directives2 = node.directives;
- visit(scriptTag2);
- String prefix = scriptTag2 == null ? "" : " ";
- visitList7(prefix, directives2, "\n");
- prefix = scriptTag2 == null && directives2.isEmpty ? "" : "\n\n";
+ ScriptTag scriptTag = node.scriptTag;
+ NodeList<Directive> directives = node.directives;
+ visit(scriptTag);
+ String prefix = scriptTag == null ? "" : " ";
+ visitList7(prefix, directives, "\n");
+ prefix = scriptTag == null && directives.isEmpty ? "" : "\n\n";
visitList7(prefix, node.declarations, "\n");
return null;
}
@@ -5685,10 +5685,10 @@
Object visitFormalParameterList(FormalParameterList node) {
String groupEnd = null;
_writer.print('(');
- NodeList<FormalParameter> parameters2 = node.parameters;
- int size2 = parameters2.length;
- for (int i = 0; i < size2; i++) {
- FormalParameter parameter = parameters2[i];
+ NodeList<FormalParameter> parameters = node.parameters;
+ int size = parameters.length;
+ for (int i = 0; i < size; i++) {
+ FormalParameter parameter = parameters[i];
if (i > 0) {
_writer.print(", ");
}
@@ -5710,10 +5710,10 @@
return null;
}
Object visitForStatement(ForStatement node) {
- Expression initialization2 = node.initialization;
+ Expression initialization = node.initialization;
_writer.print("for (");
- if (initialization2 != null) {
- visit(initialization2);
+ if (initialization != null) {
+ visit(initialization);
} else {
visit(node.variables);
}
@@ -5980,12 +5980,12 @@
return null;
}
Object visitReturnStatement(ReturnStatement node) {
- Expression expression2 = node.expression;
- if (expression2 == null) {
+ Expression expression = node.expression;
+ if (expression == null) {
_writer.print("return;");
} else {
_writer.print("return ");
- expression2.accept(this);
+ expression.accept(this);
_writer.print(";");
}
return null;
@@ -6214,8 +6214,8 @@
*/
void visitList5(NodeList<ASTNode> nodes, String separator) {
if (nodes != null) {
- int size2 = nodes.length;
- for (int i = 0; i < size2; i++) {
+ int size = nodes.length;
+ for (int i = 0; i < size; i++) {
if ("\n" == separator) {
_writer.print("\n");
indent();
@@ -6235,9 +6235,9 @@
*/
void visitList6(NodeList<ASTNode> nodes, String separator, String suffix) {
if (nodes != null) {
- int size2 = nodes.length;
- if (size2 > 0) {
- for (int i = 0; i < size2; i++) {
+ int size = nodes.length;
+ if (size > 0) {
+ for (int i = 0; i < size; i++) {
if (i > 0) {
_writer.print(separator);
}
@@ -6256,10 +6256,10 @@
*/
void visitList7(String prefix, NodeList<ASTNode> nodes, String separator) {
if (nodes != null) {
- int size2 = nodes.length;
- if (size2 > 0) {
+ int size = nodes.length;
+ if (size > 0) {
_writer.print(prefix);
- for (int i = 0; i < size2; i++) {
+ for (int i = 0; i < size; i++) {
if (i > 0) {
_writer.print(separator);
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/resolver.dart b/pkg/analyzer_experimental/lib/src/generated/resolver.dart
index e0a4a74..abc4eb0 100644
--- a/pkg/analyzer_experimental/lib/src/generated/resolver.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/resolver.dart
@@ -94,16 +94,16 @@
return null;
}
Object visitCatchClause(CatchClause node) {
- SimpleIdentifier exceptionParameter2 = node.exceptionParameter;
- if (exceptionParameter2 != null) {
- LocalVariableElementImpl exception = new LocalVariableElementImpl(exceptionParameter2);
+ SimpleIdentifier exceptionParameter = node.exceptionParameter;
+ if (exceptionParameter != null) {
+ LocalVariableElementImpl exception = new LocalVariableElementImpl(exceptionParameter);
_currentHolder.addLocalVariable(exception);
- exceptionParameter2.element = exception;
- SimpleIdentifier stackTraceParameter2 = node.stackTraceParameter;
- if (stackTraceParameter2 != null) {
- LocalVariableElementImpl stackTrace = new LocalVariableElementImpl(stackTraceParameter2);
+ exceptionParameter.element = exception;
+ SimpleIdentifier stackTraceParameter = node.stackTraceParameter;
+ if (stackTraceParameter != null) {
+ LocalVariableElementImpl stackTrace = new LocalVariableElementImpl(stackTraceParameter);
_currentHolder.addLocalVariable(stackTrace);
- stackTraceParameter2.element = stackTrace;
+ stackTraceParameter.element = stackTrace;
}
}
return super.visitCatchClause(node);
@@ -114,20 +114,20 @@
visitChildren(holder, node);
SimpleIdentifier className = node.name;
ClassElementImpl element = new ClassElementImpl(className);
- List<TypeVariableElement> typeVariables2 = holder.typeVariables;
+ List<TypeVariableElement> typeVariables = holder.typeVariables;
InterfaceTypeImpl interfaceType = new InterfaceTypeImpl.con1(element);
- interfaceType.typeArguments = createTypeVariableTypes(typeVariables2);
+ interfaceType.typeArguments = createTypeVariableTypes(typeVariables);
element.type = interfaceType;
- List<ConstructorElement> constructors2 = holder.constructors;
- if (constructors2.length == 0) {
- constructors2 = createDefaultConstructors(interfaceType);
+ List<ConstructorElement> constructors = holder.constructors;
+ if (constructors.length == 0) {
+ constructors = createDefaultConstructors(interfaceType);
}
element.abstract = node.abstractKeyword != null;
element.accessors = holder.accessors;
- element.constructors = constructors2;
+ element.constructors = constructors;
element.fields = holder.fields;
element.methods = holder.methods;
- element.typeVariables = typeVariables2;
+ element.typeVariables = typeVariables;
element.validMixin = _isValidMixin;
_currentHolder.addType(element);
className.element = element;
@@ -140,10 +140,10 @@
ClassElementImpl element = new ClassElementImpl(className);
element.abstract = node.abstractKeyword != null;
element.typedef = true;
- List<TypeVariableElement> typeVariables2 = holder.typeVariables;
- element.typeVariables = typeVariables2;
+ List<TypeVariableElement> typeVariables = holder.typeVariables;
+ element.typeVariables = typeVariables;
InterfaceTypeImpl interfaceType = new InterfaceTypeImpl.con1(element);
- interfaceType.typeArguments = createTypeVariableTypes(typeVariables2);
+ interfaceType.typeArguments = createTypeVariableTypes(typeVariables);
element.type = interfaceType;
element.constructors = createDefaultConstructors(interfaceType);
_currentHolder.addType(element);
@@ -173,9 +173,9 @@
_currentHolder.addConstructor(element);
node.element = element;
if (constructorName == null) {
- Identifier returnType2 = node.returnType;
- if (returnType2 != null) {
- element.nameOffset = returnType2.offset;
+ Identifier returnType = node.returnType;
+ if (returnType != null) {
+ element.nameOffset = returnType.offset;
}
} else {
constructorName.element = element;
@@ -184,14 +184,14 @@
}
Object visitDeclaredIdentifier(DeclaredIdentifier node) {
SimpleIdentifier variableName = node.identifier;
- sc.Token keyword2 = node.keyword;
+ sc.Token keyword = node.keyword;
LocalVariableElementImpl element = new LocalVariableElementImpl(variableName);
ForEachStatement statement = node.parent as ForEachStatement;
int declarationEnd = node.offset + node.length;
int statementEnd = statement.offset + statement.length;
element.setVisibleRange(declarationEnd, statementEnd - declarationEnd - 1);
- element.const3 = matches(keyword2, sc.Keyword.CONST);
- element.final2 = matches(keyword2, sc.Keyword.FINAL);
+ element.const3 = matches(keyword, sc.Keyword.CONST);
+ element.final2 = matches(keyword, sc.Keyword.FINAL);
_currentHolder.addLocalVariable(element);
variableName.element = element;
return super.visitDeclaredIdentifier(node);
@@ -346,13 +346,13 @@
ElementHolder holder = new ElementHolder();
visitChildren(holder, node);
SimpleIdentifier aliasName = node.name;
- List<ParameterElement> parameters2 = holder.parameters;
- List<TypeVariableElement> typeVariables2 = holder.typeVariables;
+ List<ParameterElement> parameters = holder.parameters;
+ List<TypeVariableElement> typeVariables = holder.typeVariables;
FunctionTypeAliasElementImpl element = new FunctionTypeAliasElementImpl(aliasName);
- element.parameters = parameters2;
- element.typeVariables = typeVariables2;
+ element.parameters = parameters;
+ element.typeVariables = typeVariables;
FunctionTypeImpl type = new FunctionTypeImpl.con2(element);
- type.typeArguments = createTypeVariableTypes(typeVariables2);
+ type.typeArguments = createTypeVariableTypes(typeVariables);
element.type = type;
_currentHolder.addTypeAlias(element);
aliasName.element = element;
@@ -390,7 +390,7 @@
} finally {
_inFunction = wasInFunction;
}
- bool isStatic2 = node.isStatic();
+ bool isStatic = node.isStatic();
sc.Token property = node.propertyKeyword;
if (property == null) {
SimpleIdentifier methodName = node.name;
@@ -404,7 +404,7 @@
element.labels = holder.labels;
element.localVariables = holder.localVariables;
element.parameters = holder.parameters;
- element.static = isStatic2;
+ element.static = isStatic;
_currentHolder.addMethod(element);
methodName.element = element;
} else {
@@ -414,7 +414,7 @@
if (field == null) {
field = new FieldElementImpl.con2(node.name.name);
field.final2 = true;
- field.static = isStatic2;
+ field.static = isStatic;
_currentHolder.addField(field);
}
if (matches(property, sc.Keyword.GET)) {
@@ -425,7 +425,7 @@
getter.variable = field;
getter.abstract = node.body is EmptyFunctionBody && node.externalKeyword == null;
getter.getter = true;
- getter.static = isStatic2;
+ getter.static = isStatic;
field.getter = getter;
_currentHolder.addAccessor(getter);
propertyNameNode.element = getter;
@@ -438,7 +438,7 @@
setter.variable = field;
setter.abstract = node.body is EmptyFunctionBody && !matches(node.externalKeyword, sc.Keyword.EXTERNAL);
setter.setter = true;
- setter.static = isStatic2;
+ setter.static = isStatic;
field.setter = setter;
field.final2 = false;
_currentHolder.addAccessor(setter);
@@ -491,9 +491,9 @@
return super.visitTypeParameter(node);
}
Object visitVariableDeclaration(VariableDeclaration node) {
- sc.Token keyword2 = ((node.parent as VariableDeclarationList)).keyword;
- bool isConst = matches(keyword2, sc.Keyword.CONST);
- bool isFinal = matches(keyword2, sc.Keyword.FINAL);
+ sc.Token keyword = ((node.parent as VariableDeclarationList)).keyword;
+ bool isConst = matches(keyword, sc.Keyword.CONST);
+ bool isFinal = matches(keyword, sc.Keyword.FINAL);
bool hasInitializer = node.initializer != null;
VariableElementImpl element;
if (_inFieldContext) {
@@ -605,14 +605,14 @@
* @return the body of the function that contains the given parameter
*/
FunctionBody getFunctionBody(FormalParameter node) {
- ASTNode parent2 = node.parent;
- while (parent2 != null) {
- if (parent2 is FunctionExpression) {
- return ((parent2 as FunctionExpression)).body;
- } else if (parent2 is MethodDeclaration) {
- return ((parent2 as MethodDeclaration)).body;
+ ASTNode parent = node.parent;
+ while (parent != null) {
+ if (parent is FunctionExpression) {
+ return ((parent as FunctionExpression)).body;
+ } else if (parent is MethodDeclaration) {
+ return ((parent as MethodDeclaration)).body;
}
- parent2 = parent2.parent;
+ parent = parent.parent;
}
return null;
}
@@ -929,15 +929,15 @@
if (identical(node.attributeEnd.type, ht.TokenType.GT) && scriptSourcePath == null) {
EmbeddedHtmlScriptElementImpl script = new EmbeddedHtmlScriptElementImpl(node);
String contents = node.content;
- int attributeEnd2 = node.attributeEnd.end;
- LineInfo_Location location = _lineInfo.getLocation(attributeEnd2);
+ int attributeEnd = node.attributeEnd.end;
+ LineInfo_Location location = _lineInfo.getLocation(attributeEnd);
sc.StringScanner scanner = new sc.StringScanner(htmlSource, contents, _errorListener);
- scanner.setSourceStart(location.lineNumber, location.columnNumber, attributeEnd2);
+ scanner.setSourceStart(location.lineNumber, location.columnNumber, attributeEnd);
sc.Token firstToken = scanner.tokenize();
- List<int> lineStarts2 = scanner.lineStarts;
+ List<int> lineStarts = scanner.lineStarts;
Parser parser = new Parser(htmlSource, _errorListener);
CompilationUnit unit = parser.parseCompilationUnit(firstToken);
- unit.lineInfo = new LineInfo(lineStarts2);
+ unit.lineInfo = new LineInfo(lineStarts);
try {
LibraryResolver resolver = new LibraryResolver(_context);
LibraryElementImpl library = resolver.resolveEmbeddedLibrary(htmlSource, unit, true) as LibraryElementImpl;
@@ -1069,13 +1069,13 @@
unit.accept(this);
}
Object visitCatchClause(CatchClause node) {
- SimpleIdentifier exceptionParameter2 = node.exceptionParameter;
- if (exceptionParameter2 != null) {
- List<LocalVariableElement> localVariables2 = _enclosingExecutable.localVariables;
- find3(localVariables2, exceptionParameter2);
- SimpleIdentifier stackTraceParameter2 = node.stackTraceParameter;
- if (stackTraceParameter2 != null) {
- find3(localVariables2, stackTraceParameter2);
+ SimpleIdentifier exceptionParameter = node.exceptionParameter;
+ if (exceptionParameter != null) {
+ List<LocalVariableElement> localVariables = _enclosingExecutable.localVariables;
+ find3(localVariables, exceptionParameter);
+ SimpleIdentifier stackTraceParameter = node.stackTraceParameter;
+ if (stackTraceParameter != null) {
+ find3(localVariables, stackTraceParameter);
}
}
return super.visitCatchClause(node);
@@ -1131,23 +1131,23 @@
writer.println("Invalid state found in the Analysis Engine:");
writer.println("DeclarationResolver.visitDefaultFormalParameter() is visiting a parameter that does not appear to be in a method or function.");
writer.println("Ancestors:");
- ASTNode parent2 = node.parent;
- while (parent2 != null) {
- writer.println(parent2.runtimeType.toString());
+ ASTNode parent = node.parent;
+ while (parent != null) {
+ writer.println(parent.runtimeType.toString());
writer.println("---------");
- parent2 = parent2.parent;
+ parent = parent.parent;
}
AnalysisEngine.instance.logger.logError2(writer.toString(), new AnalysisException());
}
- Expression defaultValue2 = node.defaultValue;
- if (defaultValue2 != null) {
+ Expression defaultValue = node.defaultValue;
+ if (defaultValue != null) {
ExecutableElement outerExecutable = _enclosingExecutable;
try {
if (element == null) {
} else {
_enclosingExecutable = element.initializer;
}
- defaultValue2.accept(this);
+ defaultValue.accept(this);
} finally {
_enclosingExecutable = outerExecutable;
}
@@ -1161,10 +1161,10 @@
}
}
Object visitExportDirective(ExportDirective node) {
- String uri2 = getStringValue(node.uri);
- if (uri2 != null) {
- LibraryElement library2 = _enclosingUnit.library;
- ExportElement exportElement = find5(library2.exports, _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri2));
+ String uri = getStringValue(node.uri);
+ if (uri != null) {
+ LibraryElement library = _enclosingUnit.library;
+ ExportElement exportElement = find5(library.exports, _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri));
node.element = exportElement;
}
return super.visitExportDirective(node);
@@ -1248,10 +1248,10 @@
}
}
Object visitImportDirective(ImportDirective node) {
- String uri2 = getStringValue(node.uri);
- if (uri2 != null) {
- LibraryElement library2 = _enclosingUnit.library;
- ImportElement importElement = find6(library2.imports, _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri2), node.prefix);
+ String uri = getStringValue(node.uri);
+ if (uri != null) {
+ LibraryElement library = _enclosingUnit.library;
+ ImportElement importElement = find6(library.imports, _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri), node.prefix);
node.element = importElement;
}
return super.visitImportDirective(node);
@@ -1293,9 +1293,9 @@
}
}
Object visitPartDirective(PartDirective node) {
- String uri2 = getStringValue(node.uri);
- if (uri2 != null) {
- Source partSource = _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri2);
+ String uri = getStringValue(node.uri);
+ if (uri != null) {
+ Source partSource = _enclosingUnit.context.sourceFactory.resolveUri(_enclosingUnit.source, uri);
node.element = find(_enclosingUnit.library.parts, partSource);
}
return super.visitPartDirective(node);
@@ -1362,8 +1362,8 @@
if (element == null && _enclosingUnit != null) {
element = find3(_enclosingUnit.topLevelVariables, variableName);
}
- Expression initializer2 = node.initializer;
- if (initializer2 != null) {
+ Expression initializer = node.initializer;
+ if (initializer != null) {
ExecutableElement outerExecutable = _enclosingExecutable;
try {
if (element == null) {
@@ -1567,9 +1567,9 @@
* @return {@code true} if the given identifier is the return type of a constructor declaration.
*/
static bool isConstructorReturnType(SimpleIdentifier node) {
- ASTNode parent2 = node.parent;
- if (parent2 is ConstructorDeclaration) {
- ConstructorDeclaration constructor = parent2 as ConstructorDeclaration;
+ ASTNode parent = node.parent;
+ if (parent is ConstructorDeclaration) {
+ ConstructorDeclaration constructor = parent as ConstructorDeclaration;
return identical(constructor.returnType, node);
}
return false;
@@ -1580,9 +1580,9 @@
* declaration.
*/
static bool isFactoryConstructorReturnType(SimpleIdentifier node) {
- ASTNode parent2 = node.parent;
- if (parent2 is ConstructorDeclaration) {
- ConstructorDeclaration constructor = parent2 as ConstructorDeclaration;
+ ASTNode parent = node.parent;
+ if (parent is ConstructorDeclaration) {
+ ConstructorDeclaration constructor = parent as ConstructorDeclaration;
return identical(constructor.returnType, node) && constructor.factoryKeyword != null;
}
return false;
@@ -1645,40 +1645,40 @@
_strictMode = resolver.definingLibrary.context.analysisOptions.strictMode;
}
Object visitAssignmentExpression(AssignmentExpression node) {
- sc.Token operator2 = node.operator;
- sc.TokenType operatorType = operator2.type;
+ sc.Token operator = node.operator;
+ sc.TokenType operatorType = operator.type;
if (operatorType != sc.TokenType.EQ) {
operatorType = operatorFromCompoundAssignment(operatorType);
- Expression leftHandSide2 = node.leftHandSide;
- if (leftHandSide2 != null) {
+ Expression leftHandSide = node.leftHandSide;
+ if (leftHandSide != null) {
String methodName = operatorType.lexeme;
- Type2 staticType = getStaticType(leftHandSide2);
- MethodElement staticMethod = lookUpMethod(leftHandSide2, staticType, methodName);
+ Type2 staticType = getStaticType(leftHandSide);
+ MethodElement staticMethod = lookUpMethod(leftHandSide, staticType, methodName);
node.staticElement = staticMethod;
- Type2 propagatedType = getPropagatedType(leftHandSide2);
- MethodElement propagatedMethod = lookUpMethod(leftHandSide2, propagatedType, methodName);
+ Type2 propagatedType = getPropagatedType(leftHandSide);
+ MethodElement propagatedMethod = lookUpMethod(leftHandSide, propagatedType, methodName);
node.element = select3(staticMethod, propagatedMethod);
if (shouldReportMissingMember(staticType, staticMethod) && (_strictMode || propagatedType == null || shouldReportMissingMember(propagatedType, propagatedMethod))) {
- _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_METHOD, operator2, [methodName, staticType.displayName]);
+ _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_METHOD, operator, [methodName, staticType.displayName]);
}
}
}
return null;
}
Object visitBinaryExpression(BinaryExpression node) {
- sc.Token operator2 = node.operator;
- if (operator2.isUserDefinableOperator()) {
- Expression leftOperand2 = node.leftOperand;
- if (leftOperand2 != null) {
- String methodName = operator2.lexeme;
- Type2 staticType = getStaticType(leftOperand2);
- MethodElement staticMethod = lookUpMethod(leftOperand2, staticType, methodName);
+ sc.Token operator = node.operator;
+ if (operator.isUserDefinableOperator()) {
+ Expression leftOperand = node.leftOperand;
+ if (leftOperand != null) {
+ String methodName = operator.lexeme;
+ Type2 staticType = getStaticType(leftOperand);
+ MethodElement staticMethod = lookUpMethod(leftOperand, staticType, methodName);
node.staticElement = staticMethod;
- Type2 propagatedType = getPropagatedType(leftOperand2);
- MethodElement propagatedMethod = lookUpMethod(leftOperand2, propagatedType, methodName);
+ Type2 propagatedType = getPropagatedType(leftOperand);
+ MethodElement propagatedMethod = lookUpMethod(leftOperand, propagatedType, methodName);
node.element = select3(staticMethod, propagatedMethod);
if (shouldReportMissingMember(staticType, staticMethod) && (_strictMode || propagatedType == null || shouldReportMissingMember(propagatedType, propagatedMethod))) {
- _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_OPERATOR, operator2, [methodName, staticType.displayName]);
+ _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_OPERATOR, operator, [methodName, staticType.displayName]);
}
}
}
@@ -1701,9 +1701,9 @@
return null;
}
Object visitCommentReference(CommentReference node) {
- Identifier identifier2 = node.identifier;
- if (identifier2 is SimpleIdentifier) {
- SimpleIdentifier simpleIdentifier = identifier2 as SimpleIdentifier;
+ Identifier identifier = node.identifier;
+ if (identifier is SimpleIdentifier) {
+ SimpleIdentifier simpleIdentifier = identifier as SimpleIdentifier;
Element element = resolveSimpleIdentifier(simpleIdentifier);
if (element == null) {
element = findImportWithoutPrefix(simpleIdentifier);
@@ -1727,23 +1727,23 @@
}
}
}
- } else if (identifier2 is PrefixedIdentifier) {
- PrefixedIdentifier prefixedIdentifier = identifier2 as PrefixedIdentifier;
- SimpleIdentifier prefix2 = prefixedIdentifier.prefix;
+ } else if (identifier is PrefixedIdentifier) {
+ PrefixedIdentifier prefixedIdentifier = identifier as PrefixedIdentifier;
+ SimpleIdentifier prefix = prefixedIdentifier.prefix;
SimpleIdentifier name = prefixedIdentifier.identifier;
- Element element = resolveSimpleIdentifier(prefix2);
+ Element element = resolveSimpleIdentifier(prefix);
if (element == null) {
} else {
if (element is PrefixElement) {
- recordResolution(prefix2, element);
- element = _resolver.nameScope.lookup(identifier2, _resolver.definingLibrary);
+ recordResolution(prefix, element);
+ element = _resolver.nameScope.lookup(identifier, _resolver.definingLibrary);
recordResolution(name, element);
return null;
}
- LibraryElement library2 = element.library;
- if (library2 == null) {
+ LibraryElement library = element.library;
+ if (library == null) {
AnalysisEngine.instance.logger.logError("Found element with null library: ${element.name}");
- } else if (library2 != _resolver.definingLibrary) {
+ } else if (library != _resolver.definingLibrary) {
}
recordResolution(name, element);
if (node.newKeyword == null) {
@@ -1752,7 +1752,7 @@
if (memberElement == null) {
memberElement = ((element as ClassElement)).getNamedConstructor(name.name);
if (memberElement == null) {
- memberElement = lookUpSetter(prefix2, ((element as ClassElement)).type, name.name);
+ memberElement = lookUpSetter(prefix, ((element as ClassElement)).type, name.name);
}
}
if (memberElement == null) {
@@ -1777,9 +1777,9 @@
}
Object visitConstructorDeclaration(ConstructorDeclaration node) {
super.visitConstructorDeclaration(node);
- ConstructorElement element2 = node.element;
- if (element2 is ConstructorElementImpl) {
- ConstructorElementImpl constructorElement = element2 as ConstructorElementImpl;
+ ConstructorElement element = node.element;
+ if (element is ConstructorElementImpl) {
+ ConstructorElementImpl constructorElement = element as ConstructorElementImpl;
ConstructorName redirectedNode = node.redirectedConstructor;
if (redirectedNode != null) {
ConstructorElement redirectedElement = redirectedNode.element;
@@ -1796,25 +1796,25 @@
return null;
}
Object visitConstructorFieldInitializer(ConstructorFieldInitializer node) {
- SimpleIdentifier fieldName2 = node.fieldName;
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- FieldElement fieldElement = ((enclosingClass2 as ClassElementImpl)).getField(fieldName2.name);
- recordResolution(fieldName2, fieldElement);
+ SimpleIdentifier fieldName = node.fieldName;
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ FieldElement fieldElement = ((enclosingClass as ClassElementImpl)).getField(fieldName.name);
+ recordResolution(fieldName, fieldElement);
if (fieldElement == null || fieldElement.isSynthetic()) {
- _resolver.reportError(CompileTimeErrorCode.INITIALIZER_FOR_NON_EXISTANT_FIELD, node, [fieldName2]);
+ _resolver.reportError(CompileTimeErrorCode.INITIALIZER_FOR_NON_EXISTANT_FIELD, node, [fieldName]);
} else if (fieldElement.isStatic()) {
- _resolver.reportError(CompileTimeErrorCode.INITIALIZER_FOR_STATIC_FIELD, node, [fieldName2]);
+ _resolver.reportError(CompileTimeErrorCode.INITIALIZER_FOR_STATIC_FIELD, node, [fieldName]);
}
return null;
}
Object visitConstructorName(ConstructorName node) {
- Type2 type2 = node.type.type;
- if (type2 != null && type2.isDynamic()) {
+ Type2 type = node.type.type;
+ if (type != null && type.isDynamic()) {
return null;
- } else if (type2 is! InterfaceType) {
- ASTNode parent2 = node.parent;
- if (parent2 is InstanceCreationExpression) {
- if (((parent2 as InstanceCreationExpression)).isConst()) {
+ } else if (type is! InterfaceType) {
+ ASTNode parent = node.parent;
+ if (parent is InstanceCreationExpression) {
+ if (((parent as InstanceCreationExpression)).isConst()) {
} else {
}
} else {
@@ -1822,15 +1822,15 @@
return null;
}
ConstructorElement constructor;
- SimpleIdentifier name2 = node.name;
- InterfaceType interfaceType = type2 as InterfaceType;
- LibraryElement definingLibrary2 = _resolver.definingLibrary;
- if (name2 == null) {
- constructor = interfaceType.lookUpConstructor(null, definingLibrary2);
+ SimpleIdentifier name = node.name;
+ InterfaceType interfaceType = type as InterfaceType;
+ LibraryElement definingLibrary = _resolver.definingLibrary;
+ if (name == null) {
+ constructor = interfaceType.lookUpConstructor(null, definingLibrary);
} else {
- constructor = interfaceType.lookUpConstructor(name2.name, definingLibrary2);
- name2.staticElement = constructor;
- name2.element = constructor;
+ constructor = interfaceType.lookUpConstructor(name.name, definingLibrary);
+ name.staticElement = constructor;
+ name.element = constructor;
}
node.staticElement = constructor;
node.element = constructor;
@@ -1849,10 +1849,10 @@
return null;
}
Object visitExportDirective(ExportDirective node) {
- Element element2 = node.element;
- if (element2 is ExportElement) {
- resolveCombinators(((element2 as ExportElement)).exportedLibrary, node.combinators);
- setMetadata(element2, node);
+ Element element = node.element;
+ if (element is ExportElement) {
+ resolveCombinators(((element as ExportElement)).exportedLibrary, node.combinators);
+ setMetadata(element, node);
}
return null;
}
@@ -1911,14 +1911,14 @@
}
}
}
- Element element2 = node.element;
- if (element2 is ImportElement) {
- ImportElement importElement = element2 as ImportElement;
+ Element element = node.element;
+ if (element is ImportElement) {
+ ImportElement importElement = element as ImportElement;
LibraryElement library = importElement.importedLibrary;
if (library != null) {
resolveCombinators(library, node.combinators);
}
- setMetadata(element2, node);
+ setMetadata(element, node);
}
return null;
}
@@ -1943,10 +1943,10 @@
ConstructorElement invokedConstructor = node.constructorName.element;
node.staticElement = invokedConstructor;
node.element = invokedConstructor;
- ArgumentList argumentList2 = node.argumentList;
- List<ParameterElement> parameters = resolveArgumentsToParameters(node.isConst(), argumentList2, invokedConstructor);
+ ArgumentList argumentList = node.argumentList;
+ List<ParameterElement> parameters = resolveArgumentsToParameters(node.isConst(), argumentList, invokedConstructor);
if (parameters != null) {
- argumentList2.correspondingStaticParameters = parameters;
+ argumentList.correspondingStaticParameters = parameters;
}
return null;
}
@@ -1959,7 +1959,7 @@
return null;
}
Object visitMethodInvocation(MethodInvocation node) {
- SimpleIdentifier methodName2 = node.methodName;
+ SimpleIdentifier methodName = node.methodName;
Expression target = node.realTarget;
Element staticElement;
Element propagatedElement;
@@ -1967,27 +1967,27 @@
return null;
}
if (target == null) {
- staticElement = resolveInvokedElement2(methodName2);
+ staticElement = resolveInvokedElement2(methodName);
propagatedElement = null;
} else {
Type2 targetType = getStaticType(target);
- staticElement = resolveInvokedElement(target, targetType, methodName2);
- propagatedElement = resolveInvokedElement(target, getPropagatedType(target), methodName2);
+ staticElement = resolveInvokedElement(target, targetType, methodName);
+ propagatedElement = resolveInvokedElement(target, getPropagatedType(target), methodName);
}
staticElement = convertSetterToGetter(staticElement);
propagatedElement = convertSetterToGetter(propagatedElement);
- recordResolution2(methodName2, staticElement, propagatedElement);
- ArgumentList argumentList2 = node.argumentList;
+ recordResolution2(methodName, staticElement, propagatedElement);
+ ArgumentList argumentList = node.argumentList;
if (staticElement != null) {
- List<ParameterElement> parameters = computePropagatedParameters(argumentList2, staticElement);
+ List<ParameterElement> parameters = computePropagatedParameters(argumentList, staticElement);
if (parameters != null) {
- argumentList2.correspondingStaticParameters = parameters;
+ argumentList.correspondingStaticParameters = parameters;
}
}
if (propagatedElement != null) {
- List<ParameterElement> parameters = computePropagatedParameters(argumentList2, propagatedElement);
+ List<ParameterElement> parameters = computePropagatedParameters(argumentList, propagatedElement);
if (parameters != null) {
- argumentList2.correspondingParameters = parameters;
+ argumentList.correspondingParameters = parameters;
}
}
ErrorCode errorCode;
@@ -2005,14 +2005,14 @@
}
}
if (identical(errorCode, StaticTypeWarningCode.INVOCATION_OF_NON_FUNCTION)) {
- _resolver.reportError(StaticTypeWarningCode.INVOCATION_OF_NON_FUNCTION, methodName2, [methodName2.name]);
+ _resolver.reportError(StaticTypeWarningCode.INVOCATION_OF_NON_FUNCTION, methodName, [methodName.name]);
} else if (identical(errorCode, StaticTypeWarningCode.UNDEFINED_FUNCTION)) {
- _resolver.reportError(StaticTypeWarningCode.UNDEFINED_FUNCTION, methodName2, [methodName2.name]);
+ _resolver.reportError(StaticTypeWarningCode.UNDEFINED_FUNCTION, methodName, [methodName.name]);
} else if (identical(errorCode, StaticTypeWarningCode.UNDEFINED_METHOD)) {
String targetTypeName;
if (target == null) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- targetTypeName = enclosingClass2.displayName;
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ targetTypeName = enclosingClass.displayName;
} else {
Type2 targetType = getPropagatedType(target);
if (targetType == null) {
@@ -2020,14 +2020,14 @@
}
targetTypeName = targetType == null ? null : targetType.displayName;
}
- _resolver.reportError(StaticTypeWarningCode.UNDEFINED_METHOD, methodName2, [methodName2.name, targetTypeName]);
+ _resolver.reportError(StaticTypeWarningCode.UNDEFINED_METHOD, methodName, [methodName.name, targetTypeName]);
} else if (identical(errorCode, StaticTypeWarningCode.UNDEFINED_SUPER_METHOD)) {
Type2 targetType = getPropagatedType(target);
if (targetType == null) {
targetType = getStaticType(target);
}
String targetTypeName = targetType == null ? null : targetType.name;
- _resolver.reportError(StaticTypeWarningCode.UNDEFINED_SUPER_METHOD, methodName2, [methodName2.name, targetTypeName]);
+ _resolver.reportError(StaticTypeWarningCode.UNDEFINED_SUPER_METHOD, methodName, [methodName.name, targetTypeName]);
}
return null;
}
@@ -2040,13 +2040,13 @@
return null;
}
Object visitPostfixExpression(PostfixExpression node) {
- Expression operand2 = node.operand;
+ Expression operand = node.operand;
String methodName = getPostfixOperator(node);
- Type2 staticType = getStaticType(operand2);
- MethodElement staticMethod = lookUpMethod(operand2, staticType, methodName);
+ Type2 staticType = getStaticType(operand);
+ MethodElement staticMethod = lookUpMethod(operand, staticType, methodName);
node.staticElement = staticMethod;
- Type2 propagatedType = getPropagatedType(operand2);
- MethodElement propagatedMethod = lookUpMethod(operand2, propagatedType, methodName);
+ Type2 propagatedType = getPropagatedType(operand);
+ MethodElement propagatedMethod = lookUpMethod(operand, propagatedType, methodName);
node.element = select3(staticMethod, propagatedMethod);
if (shouldReportMissingMember(staticType, staticMethod) && (_strictMode || propagatedType == null || shouldReportMissingMember(propagatedType, propagatedMethod))) {
_resolver.reportError6(StaticTypeWarningCode.UNDEFINED_OPERATOR, node.operator, [methodName, staticType.displayName]);
@@ -2054,43 +2054,43 @@
return null;
}
Object visitPrefixedIdentifier(PrefixedIdentifier node) {
- SimpleIdentifier prefix2 = node.prefix;
- SimpleIdentifier identifier2 = node.identifier;
- Element prefixElement = prefix2.element;
+ SimpleIdentifier prefix = node.prefix;
+ SimpleIdentifier identifier = node.identifier;
+ Element prefixElement = prefix.element;
if (prefixElement is PrefixElement) {
Element element = _resolver.nameScope.lookup(node, _resolver.definingLibrary);
if (element == null) {
return null;
}
- if (element is PropertyAccessorElement && identifier2.inSetterContext()) {
- PropertyInducingElement variable2 = ((element as PropertyAccessorElement)).variable;
- if (variable2 != null) {
- PropertyAccessorElement setter2 = variable2.setter;
- if (setter2 != null) {
- element = setter2;
+ if (element is PropertyAccessorElement && identifier.inSetterContext()) {
+ PropertyInducingElement variable = ((element as PropertyAccessorElement)).variable;
+ if (variable != null) {
+ PropertyAccessorElement setter = variable.setter;
+ if (setter != null) {
+ element = setter;
}
}
}
- recordResolution(identifier2, element);
+ recordResolution(identifier, element);
return null;
}
- resolvePropertyAccess(prefix2, identifier2);
+ resolvePropertyAccess(prefix, identifier);
return null;
}
Object visitPrefixExpression(PrefixExpression node) {
- sc.Token operator2 = node.operator;
- sc.TokenType operatorType = operator2.type;
+ sc.Token operator = node.operator;
+ sc.TokenType operatorType = operator.type;
if (operatorType.isUserDefinableOperator() || identical(operatorType, sc.TokenType.PLUS_PLUS) || identical(operatorType, sc.TokenType.MINUS_MINUS)) {
- Expression operand2 = node.operand;
+ Expression operand = node.operand;
String methodName = getPrefixOperator(node);
- Type2 staticType = getStaticType(operand2);
- MethodElement staticMethod = lookUpMethod(operand2, staticType, methodName);
+ Type2 staticType = getStaticType(operand);
+ MethodElement staticMethod = lookUpMethod(operand, staticType, methodName);
node.staticElement = staticMethod;
- Type2 propagatedType = getPropagatedType(operand2);
- MethodElement propagatedMethod = lookUpMethod(operand2, propagatedType, methodName);
+ Type2 propagatedType = getPropagatedType(operand);
+ MethodElement propagatedMethod = lookUpMethod(operand, propagatedType, methodName);
node.element = select3(staticMethod, propagatedMethod);
if (shouldReportMissingMember(staticType, staticMethod) && (_strictMode || propagatedType == null || shouldReportMissingMember(propagatedType, propagatedMethod))) {
- _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_OPERATOR, operator2, [methodName, staticType.displayName]);
+ _resolver.reportError6(StaticTypeWarningCode.UNDEFINED_OPERATOR, operator, [methodName, staticType.displayName]);
}
}
return null;
@@ -2100,21 +2100,21 @@
if (target is SuperExpression && !isSuperInValidContext((target as SuperExpression))) {
return null;
}
- SimpleIdentifier propertyName2 = node.propertyName;
- resolvePropertyAccess(target, propertyName2);
+ SimpleIdentifier propertyName = node.propertyName;
+ resolvePropertyAccess(target, propertyName);
return null;
}
Object visitRedirectingConstructorInvocation(RedirectingConstructorInvocation node) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- if (enclosingClass2 == null) {
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (enclosingClass == null) {
return null;
}
SimpleIdentifier name = node.constructorName;
ConstructorElement element;
if (name == null) {
- element = enclosingClass2.unnamedConstructor;
+ element = enclosingClass.unnamedConstructor;
} else {
- element = enclosingClass2.getNamedConstructor(name.name);
+ element = enclosingClass.getNamedConstructor(name.name);
}
if (element == null) {
return null;
@@ -2124,10 +2124,10 @@
}
node.staticElement = element;
node.element = element;
- ArgumentList argumentList2 = node.argumentList;
- List<ParameterElement> parameters = resolveArgumentsToParameters(false, argumentList2, element);
+ ArgumentList argumentList = node.argumentList;
+ List<ParameterElement> parameters = resolveArgumentsToParameters(false, argumentList, element);
if (parameters != null) {
- argumentList2.correspondingStaticParameters = parameters;
+ argumentList.correspondingStaticParameters = parameters;
}
return null;
}
@@ -2149,11 +2149,11 @@
return null;
}
Object visitSuperConstructorInvocation(SuperConstructorInvocation node) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- if (enclosingClass2 == null) {
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (enclosingClass == null) {
return null;
}
- ClassElement superclass = getSuperclass(enclosingClass2);
+ ClassElement superclass = getSuperclass(enclosingClass);
if (superclass == null) {
return null;
}
@@ -2181,10 +2181,10 @@
}
node.staticElement = element;
node.element = element;
- ArgumentList argumentList2 = node.argumentList;
- List<ParameterElement> parameters = resolveArgumentsToParameters(false, argumentList2, element);
+ ArgumentList argumentList = node.argumentList;
+ List<ParameterElement> parameters = resolveArgumentsToParameters(false, argumentList, element);
if (parameters != null) {
- argumentList2.correspondingStaticParameters = parameters;
+ argumentList.correspondingStaticParameters = parameters;
}
return null;
}
@@ -2195,11 +2195,11 @@
return super.visitSuperExpression(node);
}
Object visitTypeParameter(TypeParameter node) {
- TypeName bound2 = node.bound;
- if (bound2 != null) {
+ TypeName bound = node.bound;
+ if (bound != null) {
TypeVariableElementImpl variable = node.name.element as TypeVariableElementImpl;
if (variable != null) {
- variable.bound = bound2.type;
+ variable.bound = bound.type;
}
}
setMetadata(node.element, node);
@@ -2236,8 +2236,8 @@
if (element2 is PropertyAccessorElement) {
FunctionType getterType = ((element2 as PropertyAccessorElement)).type;
if (getterType != null) {
- Type2 returnType2 = getterType.returnType;
- if (!isExecutableType(returnType2)) {
+ Type2 returnType = getterType.returnType;
+ if (!isExecutableType(returnType)) {
return StaticTypeWarningCode.INVOCATION_OF_NON_FUNCTION;
}
}
@@ -2247,11 +2247,11 @@
return StaticTypeWarningCode.UNDEFINED_SUPER_METHOD;
} else {
if (element2 is PropertyInducingElement) {
- PropertyAccessorElement getter2 = ((element2 as PropertyInducingElement)).getter;
- FunctionType getterType = getter2.type;
+ PropertyAccessorElement getter = ((element2 as PropertyInducingElement)).getter;
+ FunctionType getterType = getter.type;
if (getterType != null) {
- Type2 returnType3 = getterType.returnType;
- if (!isExecutableType(returnType3)) {
+ Type2 returnType = getterType.returnType;
+ if (!isExecutableType(returnType)) {
return StaticTypeWarningCode.INVOCATION_OF_NON_FUNCTION;
}
}
@@ -2265,11 +2265,11 @@
}
} else {
if (target == null) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- if (enclosingClass2 == null) {
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (enclosingClass == null) {
return StaticTypeWarningCode.UNDEFINED_FUNCTION;
} else if (element2 == null) {
- if (!classDeclaresNoSuchMethod(enclosingClass2)) {
+ if (!classDeclaresNoSuchMethod(enclosingClass)) {
return StaticTypeWarningCode.UNDEFINED_METHOD;
}
} else {
@@ -2345,16 +2345,16 @@
return resolveArgumentsToParameters(false, argumentList, (element2 as ExecutableElement));
} else if (element2 is VariableElement) {
VariableElement variable = element2 as VariableElement;
- Type2 type2 = variable.type;
- if (type2 is FunctionType) {
- FunctionType functionType = type2 as FunctionType;
- List<ParameterElement> parameters2 = functionType.parameters;
- return resolveArgumentsToParameters2(false, argumentList, parameters2);
- } else if (type2 is InterfaceType) {
- MethodElement callMethod = ((type2 as InterfaceType)).lookUpMethod(CALL_METHOD_NAME, _resolver.definingLibrary);
+ Type2 type = variable.type;
+ if (type is FunctionType) {
+ FunctionType functionType = type as FunctionType;
+ List<ParameterElement> parameters = functionType.parameters;
+ return resolveArgumentsToParameters2(false, argumentList, parameters);
+ } else if (type is InterfaceType) {
+ MethodElement callMethod = ((type as InterfaceType)).lookUpMethod(CALL_METHOD_NAME, _resolver.definingLibrary);
if (callMethod != null) {
- List<ParameterElement> parameters3 = callMethod.parameters;
- return resolveArgumentsToParameters2(false, argumentList, parameters3);
+ List<ParameterElement> parameters = callMethod.parameters;
+ return resolveArgumentsToParameters2(false, argumentList, parameters);
}
}
}
@@ -2382,18 +2382,18 @@
*/
Element findImportWithoutPrefix(SimpleIdentifier identifier) {
Element element = null;
- Scope nameScope2 = _resolver.nameScope;
- LibraryElement definingLibrary2 = _resolver.definingLibrary;
- for (ImportElement importElement in definingLibrary2.imports) {
+ Scope nameScope = _resolver.nameScope;
+ LibraryElement definingLibrary = _resolver.definingLibrary;
+ for (ImportElement importElement in definingLibrary.imports) {
PrefixElement prefixElement = importElement.prefix;
if (prefixElement != null) {
Identifier prefixedIdentifier = new ElementResolver_SyntheticIdentifier("${prefixElement.name}.${identifier.name}");
- Element importedElement = nameScope2.lookup(prefixedIdentifier, definingLibrary2);
+ Element importedElement = nameScope.lookup(prefixedIdentifier, definingLibrary);
if (importedElement != null) {
if (element == null) {
element = importedElement;
} else {
- element = new MultiplyDefinedElementImpl(definingLibrary2.context, element, importedElement);
+ element = new MultiplyDefinedElementImpl(definingLibrary.context, element, importedElement);
}
}
}
@@ -2414,8 +2414,8 @@
* @return the name of the method invoked by the expression
*/
String getPrefixOperator(PrefixExpression node) {
- sc.Token operator2 = node.operator;
- sc.TokenType operatorType = operator2.type;
+ sc.Token operator = node.operator;
+ sc.TokenType operatorType = operator.type;
if (identical(operatorType, sc.TokenType.PLUS_PLUS)) {
return sc.TokenType.PLUS.lexeme;
} else if (identical(operatorType, sc.TokenType.MINUS_MINUS)) {
@@ -2423,7 +2423,7 @@
} else if (identical(operatorType, sc.TokenType.MINUS)) {
return "unary-";
} else {
- return operator2.lexeme;
+ return operator.lexeme;
}
}
@@ -2433,11 +2433,11 @@
* @return the type of the given expression
*/
Type2 getPropagatedType(Expression expression) {
- Type2 propagatedType2 = resolveTypeVariable(expression.propagatedType);
- if (propagatedType2 is FunctionType) {
- propagatedType2 = _resolver.typeProvider.functionType;
+ Type2 propagatedType = resolveTypeVariable(expression.propagatedType);
+ if (propagatedType is FunctionType) {
+ propagatedType = _resolver.typeProvider.functionType;
}
- return propagatedType2;
+ return propagatedType;
}
/**
@@ -2449,11 +2449,11 @@
if (expression is NullLiteral) {
return _resolver.typeProvider.objectType;
}
- Type2 staticType2 = resolveTypeVariable(expression.staticType);
- if (staticType2 is FunctionType) {
- staticType2 = _resolver.typeProvider.functionType;
+ Type2 staticType = resolveTypeVariable(expression.staticType);
+ if (staticType is FunctionType) {
+ staticType = _resolver.typeProvider.functionType;
}
- return staticType2;
+ return staticType;
}
/**
@@ -2514,15 +2514,15 @@
node.staticElement = staticMethod;
node.element = select3(staticMethod, propagatedMethod);
if (shouldReportMissingMember(staticType, staticMethod) && (_strictMode || propagatedType == null || shouldReportMissingMember(propagatedType, propagatedMethod))) {
- sc.Token leftBracket2 = node.leftBracket;
- sc.Token rightBracket2 = node.rightBracket;
- if (leftBracket2 == null || rightBracket2 == null) {
+ sc.Token leftBracket = node.leftBracket;
+ sc.Token rightBracket = node.rightBracket;
+ if (leftBracket == null || rightBracket == null) {
_resolver.reportError(StaticTypeWarningCode.UNDEFINED_OPERATOR, node, [methodName, staticType.displayName]);
return true;
} else {
- int offset2 = leftBracket2.offset;
- int length = rightBracket2.offset - offset2 + 1;
- _resolver.reportError5(StaticTypeWarningCode.UNDEFINED_OPERATOR, offset2, length, [methodName, staticType.displayName]);
+ int offset = leftBracket.offset;
+ int length = rightBracket.offset - offset + 1;
+ _resolver.reportError5(StaticTypeWarningCode.UNDEFINED_OPERATOR, offset, length, [methodName, staticType.displayName]);
return true;
}
}
@@ -2589,11 +2589,11 @@
return getter;
}
}
- InterfaceType superclass2 = targetType.superclass;
- if (superclass2 == null) {
+ InterfaceType superclass = targetType.superclass;
+ if (superclass == null) {
return null;
}
- return lookUpGetterInInterfaces(superclass2, true, getterName, visitedInterfaces);
+ return lookUpGetterInInterfaces(superclass, true, getterName, visitedInterfaces);
}
/**
@@ -2660,11 +2660,11 @@
return member;
}
}
- InterfaceType superclass2 = targetType.superclass;
- if (superclass2 == null) {
+ InterfaceType superclass = targetType.superclass;
+ if (superclass == null) {
return null;
}
- return lookUpGetterOrMethodInInterfaces(superclass2, true, memberName, visitedInterfaces);
+ return lookUpGetterOrMethodInInterfaces(superclass, true, memberName, visitedInterfaces);
}
/**
@@ -2674,21 +2674,21 @@
* @return the element corresponding to the given label node in the current scope
*/
LabelElementImpl lookupLabel(ASTNode parentNode, SimpleIdentifier labelNode) {
- LabelScope labelScope2 = _resolver.labelScope;
+ LabelScope labelScope = _resolver.labelScope;
LabelElementImpl labelElement = null;
if (labelNode == null) {
- if (labelScope2 == null) {
+ if (labelScope == null) {
} else {
- labelElement = labelScope2.lookup2(LabelScope.EMPTY_LABEL) as LabelElementImpl;
+ labelElement = labelScope.lookup2(LabelScope.EMPTY_LABEL) as LabelElementImpl;
if (labelElement == null) {
}
labelElement = null;
}
} else {
- if (labelScope2 == null) {
+ if (labelScope == null) {
_resolver.reportError(CompileTimeErrorCode.LABEL_UNDEFINED, labelNode, [labelNode.name]);
} else {
- labelElement = labelScope2.lookup(labelNode) as LabelElementImpl;
+ labelElement = labelScope.lookup(labelNode) as LabelElementImpl;
if (labelElement == null) {
_resolver.reportError(CompileTimeErrorCode.LABEL_UNDEFINED, labelNode, [labelNode.name]);
} else {
@@ -2766,11 +2766,11 @@
return method;
}
}
- InterfaceType superclass2 = targetType.superclass;
- if (superclass2 == null) {
+ InterfaceType superclass = targetType.superclass;
+ if (superclass == null) {
return null;
}
- return lookUpMethodInInterfaces(superclass2, true, methodName, visitedInterfaces);
+ return lookUpMethodInInterfaces(superclass, true, methodName, visitedInterfaces);
}
/**
@@ -2833,11 +2833,11 @@
return setter;
}
}
- InterfaceType superclass2 = targetType.superclass;
- if (superclass2 == null) {
+ InterfaceType superclass = targetType.superclass;
+ if (superclass == null) {
return null;
}
- return lookUpSetterInInterfaces(superclass2, true, setterName, visitedInterfaces);
+ return lookUpSetterInInterfaces(superclass, true, setterName, visitedInterfaces);
}
/**
@@ -2913,8 +2913,8 @@
if (executableElement == null) {
return null;
}
- List<ParameterElement> parameters2 = executableElement.parameters;
- return resolveArgumentsToParameters2(reportError, argumentList, parameters2);
+ List<ParameterElement> parameters = executableElement.parameters;
+ return resolveArgumentsToParameters2(reportError, argumentList, parameters);
}
/**
@@ -2944,26 +2944,26 @@
unnamedParameters.addAll(positionalParameters);
int unnamedParameterCount = unnamedParameters.length;
int unnamedIndex = 0;
- NodeList<Expression> arguments2 = argumentList.arguments;
- int argumentCount = arguments2.length;
+ NodeList<Expression> arguments = argumentList.arguments;
+ int argumentCount = arguments.length;
List<ParameterElement> resolvedParameters = new List<ParameterElement>(argumentCount);
int positionalArgumentCount = 0;
Set<String> usedNames = new Set<String>();
for (int i = 0; i < argumentCount; i++) {
- Expression argument = arguments2[i];
+ Expression argument = arguments[i];
if (argument is NamedExpression) {
SimpleIdentifier nameNode = ((argument as NamedExpression)).name.label;
- String name2 = nameNode.name;
- ParameterElement element = namedParameters[name2];
+ String name = nameNode.name;
+ ParameterElement element = namedParameters[name];
if (element == null) {
ErrorCode errorCode = reportError2 ? CompileTimeErrorCode.UNDEFINED_NAMED_PARAMETER : StaticWarningCode.UNDEFINED_NAMED_PARAMETER;
- _resolver.reportError(errorCode, nameNode, [name2]);
+ _resolver.reportError(errorCode, nameNode, [name]);
} else {
resolvedParameters[i] = element;
recordResolution(nameNode, element);
}
- if (!javaSetAdd(usedNames, name2)) {
- _resolver.reportError(CompileTimeErrorCode.DUPLICATE_NAMED_ARGUMENT, nameNode, [name2]);
+ if (!javaSetAdd(usedNames, name)) {
+ _resolver.reportError(CompileTimeErrorCode.DUPLICATE_NAMED_ARGUMENT, nameNode, [name]);
}
} else {
positionalArgumentCount++;
@@ -3029,8 +3029,8 @@
} else if (target is SimpleIdentifier) {
Element targetElement = ((target as SimpleIdentifier)).element;
if (targetElement is PrefixElement) {
- String name2 = "${((target as SimpleIdentifier)).name}.${methodName}";
- Identifier functionName = new ElementResolver_SyntheticIdentifier(name2);
+ String name = "${((target as SimpleIdentifier)).name}.${methodName}";
+ Identifier functionName = new ElementResolver_SyntheticIdentifier(name);
Element element = _resolver.nameScope.lookup(functionName, _resolver.definingLibrary);
if (element != null) {
return element;
@@ -3051,9 +3051,9 @@
Element resolveInvokedElement2(SimpleIdentifier methodName) {
Element element = _resolver.nameScope.lookup(methodName, _resolver.definingLibrary);
if (element == null) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- if (enclosingClass2 != null) {
- InterfaceType enclosingType = enclosingClass2.type;
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (enclosingClass != null) {
+ InterfaceType enclosingType = enclosingClass.type;
element = lookUpMethod(null, enclosingType, methodName.name);
if (element == null) {
element = lookUpGetter(null, enclosingType, methodName.name);
@@ -3126,25 +3126,25 @@
Element resolveSimpleIdentifier(SimpleIdentifier node) {
Element element = _resolver.nameScope.lookup(node, _resolver.definingLibrary);
if (element is PropertyAccessorElement && node.inSetterContext()) {
- PropertyInducingElement variable2 = ((element as PropertyAccessorElement)).variable;
- if (variable2 != null) {
- PropertyAccessorElement setter2 = variable2.setter;
- if (setter2 == null) {
- ClassElement enclosingClass2 = _resolver.enclosingClass;
- if (enclosingClass2 != null) {
- setter2 = lookUpSetter(null, enclosingClass2.type, node.name);
+ PropertyInducingElement variable = ((element as PropertyAccessorElement)).variable;
+ if (variable != null) {
+ PropertyAccessorElement setter = variable.setter;
+ if (setter == null) {
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (enclosingClass != null) {
+ setter = lookUpSetter(null, enclosingClass.type, node.name);
}
}
- if (setter2 != null) {
- element = setter2;
+ if (setter != null) {
+ element = setter;
}
}
} else if (element == null && node.inSetterContext()) {
element = _resolver.nameScope.lookup(new ElementResolver_SyntheticIdentifier("${node.name}="), _resolver.definingLibrary);
}
- ClassElement enclosingClass3 = _resolver.enclosingClass;
- if (element == null && enclosingClass3 != null) {
- InterfaceType enclosingType = enclosingClass3.type;
+ ClassElement enclosingClass = _resolver.enclosingClass;
+ if (element == null && enclosingClass != null) {
+ InterfaceType enclosingType = enclosingClass.type;
if (element == null && node.inSetterContext()) {
element = lookUpSetter(null, enclosingType, node.name);
}
@@ -3167,11 +3167,11 @@
*/
Type2 resolveTypeVariable(Type2 type) {
if (type is TypeVariableType) {
- Type2 bound2 = ((type as TypeVariableType)).element.bound;
- if (bound2 == null) {
+ Type2 bound = ((type as TypeVariableType)).element.bound;
+ if (bound == null) {
return _resolver.typeProvider.objectType;
}
- return bound2;
+ return bound;
}
return type;
}
@@ -3434,9 +3434,9 @@
resultMap = new Map<String, ExecutableElement>();
}
ClassElement superclassElt = null;
- InterfaceType supertype2 = classElt.supertype;
- if (supertype2 != null) {
- superclassElt = supertype2.element;
+ InterfaceType supertype = classElt.supertype;
+ if (supertype != null) {
+ superclassElt = supertype.element;
} else {
_classLookup[classElt] = resultMap;
return resultMap;
@@ -3451,9 +3451,9 @@
}
recordMapWithClassMembers(resultMap, superclassElt);
}
- List<InterfaceType> mixins2 = classElt.mixins;
- for (int i = mixins2.length - 1; i >= 0; i--) {
- ClassElement mixinElement = mixins2[i].element;
+ List<InterfaceType> mixins = classElt.mixins;
+ for (int i = mixins.length - 1; i >= 0; i--) {
+ ClassElement mixinElement = mixins[i].element;
if (mixinElement != null) {
recordMapWithClassMembers(resultMap, mixinElement);
}
@@ -3473,8 +3473,8 @@
void computeInheritancePath(Queue<InterfaceType> chain, InterfaceType currentType, String memberName) {
chain.add(currentType);
ClassElement classElt = currentType.element;
- InterfaceType supertype2 = classElt.supertype;
- if (supertype2 == null) {
+ InterfaceType supertype = classElt.supertype;
+ if (supertype == null) {
return;
}
if (chain.length != 1) {
@@ -3482,24 +3482,24 @@
return;
}
}
- List<InterfaceType> mixins2 = classElt.mixins;
- for (int i = mixins2.length - 1; i >= 0; i--) {
- ClassElement mixinElement = mixins2[i].element;
+ List<InterfaceType> mixins = classElt.mixins;
+ for (int i = mixins.length - 1; i >= 0; i--) {
+ ClassElement mixinElement = mixins[i].element;
if (mixinElement != null) {
ExecutableElement elt = lookupMemberInClass(mixinElement, memberName);
if (elt != null) {
- chain.add(mixins2[i]);
+ chain.add(mixins[i]);
return;
}
}
}
- ClassElement superclassElt = supertype2.element;
+ ClassElement superclassElt = supertype.element;
if (lookupMember(superclassElt, memberName) != null) {
- computeInheritancePath(chain, supertype2, memberName);
+ computeInheritancePath(chain, supertype, memberName);
return;
}
- List<InterfaceType> interfaces2 = classElt.interfaces;
- for (InterfaceType interfaceType in interfaces2) {
+ List<InterfaceType> interfaces = classElt.interfaces;
+ for (InterfaceType interfaceType in interfaces) {
ClassElement interfaceElement = interfaceType.element;
if (interfaceElement != null && lookupMember(interfaceElement, memberName) != null) {
computeInheritancePath(chain, interfaceType, memberName);
@@ -3523,10 +3523,10 @@
} else {
resultMap = new Map<String, ExecutableElement>();
}
- InterfaceType supertype2 = classElt.supertype;
- ClassElement superclassElement = supertype2 != null ? supertype2.element : null;
- List<InterfaceType> interfaces2 = classElt.interfaces;
- if (superclassElement == null || interfaces2.length == 0) {
+ InterfaceType supertype = classElt.supertype;
+ ClassElement superclassElement = supertype != null ? supertype.element : null;
+ List<InterfaceType> interfaces = classElt.interfaces;
+ if (superclassElement == null || interfaces.length == 0) {
_interfaceLookup[classElt] = resultMap;
return resultMap;
}
@@ -3549,7 +3549,7 @@
}
}
}
- for (InterfaceType interfaceType in interfaces2) {
+ for (InterfaceType interfaceType in interfaces) {
ClassElement interfaceElement = interfaceType.element;
if (interfaceElement != null) {
if (!visitedInterfaces.contains(interfaceElement)) {
@@ -3588,8 +3588,8 @@
}
}
if (superclassElement != null) {
- List<MethodElement> methods2 = superclassElement.methods;
- for (MethodElement method in methods2) {
+ List<MethodElement> methods = superclassElement.methods;
+ for (MethodElement method in methods) {
if (method.isAccessibleIn(_library) && !method.isStatic()) {
String key = method.name;
if (!unionMap.containsKey(key)) {
@@ -3601,8 +3601,8 @@
}
}
}
- List<PropertyAccessorElement> accessors2 = superclassElement.accessors;
- for (PropertyAccessorElement accessor in accessors2) {
+ List<PropertyAccessorElement> accessors = superclassElement.accessors;
+ for (PropertyAccessorElement accessor in accessors) {
if (accessor.isAccessibleIn(_library) && !accessor.isStatic()) {
String key = accessor.name;
if (!unionMap.containsKey(key)) {
@@ -3615,11 +3615,11 @@
}
}
}
- for (InterfaceType interfaceType in interfaces2) {
+ for (InterfaceType interfaceType in interfaces) {
ClassElement interfaceElement = interfaceType.element;
if (interfaceElement != null) {
- List<MethodElement> methods3 = interfaceElement.methods;
- for (MethodElement method in methods3) {
+ List<MethodElement> methods = interfaceElement.methods;
+ for (MethodElement method in methods) {
if (method.isAccessibleIn(_library) && !method.isStatic()) {
String key = method.name;
if (!unionMap.containsKey(key)) {
@@ -3631,8 +3631,8 @@
}
}
}
- List<PropertyAccessorElement> accessors3 = interfaceElement.accessors;
- for (PropertyAccessorElement accessor in accessors3) {
+ List<PropertyAccessorElement> accessors = interfaceElement.accessors;
+ for (PropertyAccessorElement accessor in accessors) {
if (accessor.isAccessibleIn(_library) && !accessor.isStatic()) {
String key = accessor.name;
if (!unionMap.containsKey(key)) {
@@ -3720,14 +3720,14 @@
* @return the found {@link ExecutableElement}, or {@code null} if no such member was found
*/
ExecutableElement lookupMemberInClass(ClassElement classElt, String memberName) {
- List<MethodElement> methods2 = classElt.methods;
- for (MethodElement method in methods2) {
+ List<MethodElement> methods = classElt.methods;
+ for (MethodElement method in methods) {
if (memberName == method.name && method.isAccessibleIn(_library) && !method.isStatic()) {
return method;
}
}
- List<PropertyAccessorElement> accessors2 = classElt.accessors;
- for (PropertyAccessorElement accessor in accessors2) {
+ List<PropertyAccessorElement> accessors = classElt.accessors;
+ for (PropertyAccessorElement accessor in accessors) {
if (memberName == accessor.name && accessor.isAccessibleIn(_library) && !accessor.isStatic()) {
return accessor;
}
@@ -3742,14 +3742,14 @@
* @param classElt the class element that will be recorded into the passed map
*/
void recordMapWithClassMembers(Map<String, ExecutableElement> map, ClassElement classElt) {
- List<MethodElement> methods2 = classElt.methods;
- for (MethodElement method in methods2) {
+ List<MethodElement> methods = classElt.methods;
+ for (MethodElement method in methods) {
if (method.isAccessibleIn(_library) && !method.isStatic()) {
map[method.name] = method;
}
}
- List<PropertyAccessorElement> accessors2 = classElt.accessors;
- for (PropertyAccessorElement accessor in accessors2) {
+ List<PropertyAccessorElement> accessors = classElt.accessors;
+ for (PropertyAccessorElement accessor in accessors) {
if (accessor.isAccessibleIn(_library) && !accessor.isStatic()) {
map[accessor.name] = accessor;
}
@@ -4105,16 +4105,16 @@
*/
LibraryElementImpl buildLibrary(Library library) {
CompilationUnitBuilder builder = new CompilationUnitBuilder();
- Source librarySource2 = library.librarySource;
- CompilationUnit definingCompilationUnit2 = library.definingCompilationUnit;
- CompilationUnitElementImpl definingCompilationUnitElement = builder.buildCompilationUnit(librarySource2, definingCompilationUnit2);
- NodeList<Directive> directives2 = definingCompilationUnit2.directives;
+ Source librarySource = library.librarySource;
+ CompilationUnit definingCompilationUnit = library.definingCompilationUnit;
+ CompilationUnitElementImpl definingCompilationUnitElement = builder.buildCompilationUnit(librarySource, definingCompilationUnit);
+ NodeList<Directive> directives = definingCompilationUnit.directives;
LibraryIdentifier libraryNameNode = null;
bool hasPartDirective = false;
FunctionElement entryPoint = findEntryPoint(definingCompilationUnitElement);
List<Directive> directivesToResolve = new List<Directive>();
List<CompilationUnitElementImpl> sourcedCompilationUnits = new List<CompilationUnitElementImpl>();
- for (Directive directive in directives2) {
+ for (Directive directive in directives) {
if (directive is LibraryDirective) {
if (libraryNameNode == null) {
libraryNameNode = ((directive as LibraryDirective)).name;
@@ -4130,10 +4130,10 @@
part.uri = library.getUri(partDirective);
String partLibraryName = getPartLibraryName(library, partSource, directivesToResolve);
if (partLibraryName == null) {
- _errorListener.onError(new AnalysisError.con2(librarySource2, partUri.offset, partUri.length, CompileTimeErrorCode.PART_OF_NON_PART, [partUri.toSource()]));
+ _errorListener.onError(new AnalysisError.con2(librarySource, partUri.offset, partUri.length, CompileTimeErrorCode.PART_OF_NON_PART, [partUri.toSource()]));
} else if (libraryNameNode == null) {
} else if (libraryNameNode.name != partLibraryName) {
- _errorListener.onError(new AnalysisError.con2(librarySource2, partUri.offset, partUri.length, StaticWarningCode.PART_OF_DIFFERENT_LIBRARY, [libraryNameNode.name, partLibraryName]));
+ _errorListener.onError(new AnalysisError.con2(librarySource, partUri.offset, partUri.length, StaticWarningCode.PART_OF_DIFFERENT_LIBRARY, [libraryNameNode.name, partLibraryName]));
}
if (entryPoint == null) {
entryPoint = findEntryPoint(part);
@@ -4144,7 +4144,7 @@
}
}
if (hasPartDirective && libraryNameNode == null) {
- _errorListener.onError(new AnalysisError.con1(librarySource2, ResolverErrorCode.MISSING_LIBRARY_DIRECTIVE_WITH_PART, []));
+ _errorListener.onError(new AnalysisError.con1(librarySource, ResolverErrorCode.MISSING_LIBRARY_DIRECTIVE_WITH_PART, []));
}
LibraryElementImpl libraryElement = new LibraryElementImpl(_analysisContext, libraryNameNode);
libraryElement.definingCompilationUnit = definingCompilationUnitElement;
@@ -4213,9 +4213,9 @@
for (Directive directive in partUnit.directives) {
if (directive is PartOfDirective) {
directivesToResolve.add(directive);
- LibraryIdentifier libraryName2 = ((directive as PartOfDirective)).libraryName;
- if (libraryName2 != null) {
- return libraryName2.name;
+ LibraryIdentifier libraryName = ((directive as PartOfDirective)).libraryName;
+ if (libraryName != null) {
+ return libraryName.name;
}
}
}
@@ -4240,9 +4240,9 @@
for (PropertyAccessorElement setter in setters) {
PropertyAccessorElement getter = getters[setter.displayName];
if (getter != null) {
- PropertyInducingElementImpl variable2 = getter.variable as PropertyInducingElementImpl;
- variable2.setter = setter;
- ((setter as PropertyAccessorElementImpl)).variable = variable2;
+ PropertyInducingElementImpl variable = getter.variable as PropertyInducingElementImpl;
+ variable.setter = setter;
+ ((setter as PropertyAccessorElementImpl)).variable = variable;
}
}
}
@@ -4548,16 +4548,16 @@
}
}
}
- Source librarySource2 = library.librarySource;
- if (!library.explicitlyImportsCore && _coreLibrarySource != librarySource2) {
+ Source librarySource = library.librarySource;
+ if (!library.explicitlyImportsCore && _coreLibrarySource != librarySource) {
ImportElementImpl importElement = new ImportElementImpl();
importElement.importedLibrary = _coreLibrary.libraryElement;
importElement.synthetic = true;
imports.add(importElement);
}
- LibraryElementImpl libraryElement2 = library.libraryElement;
- libraryElement2.imports = new List.from(imports);
- libraryElement2.exports = new List.from(exports);
+ LibraryElementImpl libraryElement = library.libraryElement;
+ libraryElement.imports = new List.from(imports);
+ libraryElement.exports = new List.from(exports);
}
}
@@ -4737,8 +4737,8 @@
* @return {@code true} if and only if the passed {@link CompilationUnit} has a part-of directive
*/
bool doesCompilationUnitHavePartOfDirective(CompilationUnit node) {
- NodeList<Directive> directives2 = node.directives;
- for (Directive directive in directives2) {
+ NodeList<Directive> directives = node.directives;
+ for (Directive directive in directives) {
if (directive is PartOfDirective) {
return true;
}
@@ -4918,33 +4918,33 @@
}
Object visitBinaryExpression(BinaryExpression node) {
sc.TokenType operatorType = node.operator.type;
- Expression leftOperand2 = node.leftOperand;
- Expression rightOperand2 = node.rightOperand;
+ Expression leftOperand = node.leftOperand;
+ Expression rightOperand = node.rightOperand;
if (identical(operatorType, sc.TokenType.AMPERSAND_AMPERSAND)) {
- safelyVisit(leftOperand2);
- if (rightOperand2 != null) {
+ safelyVisit(leftOperand);
+ if (rightOperand != null) {
try {
_overrideManager.enterScope();
- propagateTrueState(leftOperand2);
- rightOperand2.accept(this);
+ propagateTrueState(leftOperand);
+ rightOperand.accept(this);
} finally {
_overrideManager.exitScope();
}
}
} else if (identical(operatorType, sc.TokenType.BAR_BAR)) {
- safelyVisit(leftOperand2);
- if (rightOperand2 != null) {
+ safelyVisit(leftOperand);
+ if (rightOperand != null) {
try {
_overrideManager.enterScope();
- propagateFalseState(leftOperand2);
- rightOperand2.accept(this);
+ propagateFalseState(leftOperand);
+ rightOperand.accept(this);
} finally {
_overrideManager.exitScope();
}
}
} else {
- safelyVisit(leftOperand2);
- safelyVisit(rightOperand2);
+ safelyVisit(leftOperand);
+ safelyVisit(rightOperand);
}
node.accept(_elementResolver);
node.accept(_typeAnalyzer);
@@ -4997,38 +4997,38 @@
return null;
}
Object visitConditionalExpression(ConditionalExpression node) {
- Expression condition2 = node.condition;
- safelyVisit(condition2);
- Expression thenExpression2 = node.thenExpression;
- if (thenExpression2 != null) {
+ Expression condition = node.condition;
+ safelyVisit(condition);
+ Expression thenExpression = node.thenExpression;
+ if (thenExpression != null) {
try {
_overrideManager.enterScope();
- propagateTrueState(condition2);
- thenExpression2.accept(this);
+ propagateTrueState(condition);
+ thenExpression.accept(this);
} finally {
_overrideManager.exitScope();
}
}
- Expression elseExpression2 = node.elseExpression;
- if (elseExpression2 != null) {
+ Expression elseExpression = node.elseExpression;
+ if (elseExpression != null) {
try {
_overrideManager.enterScope();
- propagateFalseState(condition2);
- elseExpression2.accept(this);
+ propagateFalseState(condition);
+ elseExpression.accept(this);
} finally {
_overrideManager.exitScope();
}
}
node.accept(_elementResolver);
node.accept(_typeAnalyzer);
- bool thenIsAbrupt = isAbruptTermination(thenExpression2);
- bool elseIsAbrupt = isAbruptTermination(elseExpression2);
+ bool thenIsAbrupt = isAbruptTermination(thenExpression);
+ bool elseIsAbrupt = isAbruptTermination(elseExpression);
if (elseIsAbrupt && !thenIsAbrupt) {
- propagateTrueState(condition2);
- propagateState(thenExpression2);
+ propagateTrueState(condition);
+ propagateState(thenExpression);
} else if (thenIsAbrupt && !elseIsAbrupt) {
- propagateFalseState(condition2);
- propagateState(elseExpression2);
+ propagateFalseState(condition);
+ propagateState(elseExpression);
}
return null;
}
@@ -5130,27 +5130,27 @@
}
Object visitHideCombinator(HideCombinator node) => null;
Object visitIfStatement(IfStatement node) {
- Expression condition2 = node.condition;
- safelyVisit(condition2);
+ Expression condition = node.condition;
+ safelyVisit(condition);
Map<Element, Type2> thenOverrides = null;
- Statement thenStatement2 = node.thenStatement;
- if (thenStatement2 != null) {
+ Statement thenStatement = node.thenStatement;
+ if (thenStatement != null) {
try {
_overrideManager.enterScope();
- propagateTrueState(condition2);
- thenStatement2.accept(this);
+ propagateTrueState(condition);
+ thenStatement.accept(this);
} finally {
thenOverrides = _overrideManager.captureLocalOverrides();
_overrideManager.exitScope();
}
}
Map<Element, Type2> elseOverrides = null;
- Statement elseStatement2 = node.elseStatement;
- if (elseStatement2 != null) {
+ Statement elseStatement = node.elseStatement;
+ if (elseStatement != null) {
try {
_overrideManager.enterScope();
- propagateFalseState(condition2);
- elseStatement2.accept(this);
+ propagateFalseState(condition);
+ elseStatement.accept(this);
} finally {
elseOverrides = _overrideManager.captureLocalOverrides();
_overrideManager.exitScope();
@@ -5158,15 +5158,15 @@
}
node.accept(_elementResolver);
node.accept(_typeAnalyzer);
- bool thenIsAbrupt = isAbruptTermination2(thenStatement2);
- bool elseIsAbrupt = isAbruptTermination2(elseStatement2);
+ bool thenIsAbrupt = isAbruptTermination2(thenStatement);
+ bool elseIsAbrupt = isAbruptTermination2(elseStatement);
if (elseIsAbrupt && !thenIsAbrupt) {
- propagateTrueState(condition2);
+ propagateTrueState(condition);
if (thenOverrides != null) {
_overrideManager.applyOverrides(thenOverrides);
}
} else if (thenIsAbrupt && !elseIsAbrupt) {
- propagateFalseState(condition2);
+ propagateFalseState(condition);
if (elseOverrides != null) {
_overrideManager.applyOverrides(elseOverrides);
}
@@ -5254,14 +5254,14 @@
}
Object visitTypeName(TypeName node) => null;
Object visitWhileStatement(WhileStatement node) {
- Expression condition2 = node.condition;
- safelyVisit(condition2);
- Statement body2 = node.body;
- if (body2 != null) {
+ Expression condition = node.condition;
+ safelyVisit(condition);
+ Statement body = node.body;
+ if (body != null) {
try {
_overrideManager.enterScope();
- propagateTrueState(condition2);
- body2.accept(this);
+ propagateTrueState(condition);
+ body.accept(this);
} finally {
_overrideManager.exitScope();
}
@@ -5328,21 +5328,21 @@
}
}
void visitForEachStatementInScope(ForEachStatement node) {
- Expression iterator2 = node.iterator;
- safelyVisit(iterator2);
- DeclaredIdentifier loopVariable2 = node.loopVariable;
- safelyVisit(loopVariable2);
- Statement body2 = node.body;
- if (body2 != null) {
+ Expression iterator = node.iterator;
+ safelyVisit(iterator);
+ DeclaredIdentifier loopVariable = node.loopVariable;
+ safelyVisit(loopVariable);
+ Statement body = node.body;
+ if (body != null) {
try {
_overrideManager.enterScope();
- if (loopVariable2 != null && iterator2 != null) {
- LocalVariableElement loopElement = loopVariable2.element;
+ if (loopVariable != null && iterator != null) {
+ LocalVariableElement loopElement = loopVariable.element;
if (loopElement != null) {
- override(loopElement, getIteratorElementType(iterator2));
+ override(loopElement, getIteratorElementType(iterator));
}
}
- body2.accept(this);
+ body.accept(this);
} finally {
_overrideManager.exitScope();
}
@@ -5433,12 +5433,12 @@
} else if (statement is ExpressionStatement) {
return isAbruptTermination(((statement as ExpressionStatement)).expression);
} else if (statement is Block) {
- NodeList<Statement> statements2 = ((statement as Block)).statements;
- int size2 = statements2.length;
- if (size2 == 0) {
+ NodeList<Statement> statements = ((statement as Block)).statements;
+ int size = statements.length;
+ if (size == 0) {
return false;
}
- return isAbruptTermination2(statements2[size2 - 1]);
+ return isAbruptTermination2(statements[size - 1]);
}
return false;
}
@@ -5570,9 +5570,9 @@
_jtd_constructor_275_impl(Library library, Source source2, TypeProvider typeProvider2) {
this._definingLibrary = library.libraryElement;
this._source = source2;
- LibraryScope libraryScope2 = library.libraryScope;
- this._errorListener = libraryScope2.errorListener;
- this._nameScope = libraryScope2;
+ LibraryScope libraryScope = library.libraryScope;
+ this._errorListener = libraryScope.errorListener;
+ this._nameScope = libraryScope;
this._typeProvider = typeProvider2;
}
@@ -5666,9 +5666,9 @@
return null;
}
Object visitDeclaredIdentifier(DeclaredIdentifier node) {
- VariableElement element2 = node.element;
- if (element2 != null) {
- _nameScope.define(element2);
+ VariableElement element = node.element;
+ if (element != null) {
+ _nameScope.define(element);
}
super.visitDeclaredIdentifier(node);
return null;
@@ -5810,9 +5810,9 @@
}
Object visitVariableDeclaration(VariableDeclaration node) {
if (node.parent.parent is! TopLevelVariableDeclaration && node.parent.parent is! FieldDeclaration) {
- VariableElement element2 = node.element;
- if (element2 != null) {
- _nameScope.define(element2);
+ VariableElement element = node.element;
+ if (element != null) {
+ _nameScope.define(element);
}
}
super.visitVariableDeclaration(node);
@@ -6121,13 +6121,13 @@
* <i>e<sub>3</sub></i>.</blockquote>
*/
Object visitAssignmentExpression(AssignmentExpression node) {
- sc.TokenType operator2 = node.operator.type;
- if (identical(operator2, sc.TokenType.EQ)) {
- Expression rightHandSide2 = node.rightHandSide;
- Type2 staticType = getStaticType(rightHandSide2);
+ sc.TokenType operator = node.operator.type;
+ if (identical(operator, sc.TokenType.EQ)) {
+ Expression rightHandSide = node.rightHandSide;
+ Type2 staticType = getStaticType(rightHandSide);
recordStaticType(node, staticType);
Type2 overrideType = staticType;
- Type2 propagatedType = getPropagatedType(rightHandSide2);
+ Type2 propagatedType = getPropagatedType(rightHandSide);
if (propagatedType != null) {
if (propagatedType.isMoreSpecificThan(staticType)) {
recordPropagatedType(node, propagatedType);
@@ -6390,11 +6390,11 @@
*/
Object visitInstanceCreationExpression(InstanceCreationExpression node) {
recordStaticType(node, node.constructorName.type.type);
- ConstructorElement element2 = node.element;
- if (element2 != null && "Element" == element2.enclosingElement.name && "tag" == element2.name) {
- LibraryElement library2 = element2.library;
- if (isHtmlLibrary(library2)) {
- Type2 returnType = getFirstArgumentAsType2(library2, node.argumentList, _HTML_ELEMENT_TO_CLASS_MAP);
+ ConstructorElement element = node.element;
+ if (element != null && "Element" == element.enclosingElement.name && "tag" == element.name) {
+ LibraryElement library = element.library;
+ if (isHtmlLibrary(library)) {
+ Type2 returnType = getFirstArgumentAsType2(library, node.argumentList, _HTML_ELEMENT_TO_CLASS_MAP);
if (returnType != null) {
recordPropagatedType(node, returnType);
}
@@ -6431,11 +6431,11 @@
*/
Object visitListLiteral(ListLiteral node) {
Type2 staticType = _dynamicType;
- TypeArgumentList typeArguments2 = node.typeArguments;
- if (typeArguments2 != null) {
- NodeList<TypeName> arguments2 = typeArguments2.arguments;
- if (arguments2 != null && arguments2.length == 1) {
- TypeName argumentTypeName = arguments2[0];
+ TypeArgumentList typeArguments = node.typeArguments;
+ if (typeArguments != null) {
+ NodeList<TypeName> arguments = typeArguments.arguments;
+ if (arguments != null && arguments.length == 1) {
+ TypeName argumentTypeName = arguments[0];
Type2 argumentType = getType2(argumentTypeName);
if (argumentType != null) {
staticType = argumentType;
@@ -6443,12 +6443,12 @@
}
}
recordStaticType(node, _typeProvider.listType.substitute5(<Type2> [staticType]));
- NodeList<Expression> elements2 = node.elements;
- int count = elements2.length;
+ NodeList<Expression> elements = node.elements;
+ int count = elements.length;
if (count > 0) {
- Type2 propagatedType = getBestType(elements2[0]);
+ Type2 propagatedType = getBestType(elements[0]);
for (int i = 1; i < count; i++) {
- Type2 elementType = getBestType(elements2[i]);
+ Type2 elementType = getBestType(elements[i]);
if (propagatedType != elementType) {
propagatedType = _dynamicType;
} else {
@@ -6480,16 +6480,16 @@
Object visitMapLiteral(MapLiteral node) {
Type2 staticKeyType = _dynamicType;
Type2 staticValueType = _dynamicType;
- TypeArgumentList typeArguments2 = node.typeArguments;
- if (typeArguments2 != null) {
- NodeList<TypeName> arguments2 = typeArguments2.arguments;
- if (arguments2 != null && arguments2.length == 2) {
- TypeName entryKeyTypeName = arguments2[0];
+ TypeArgumentList typeArguments = node.typeArguments;
+ if (typeArguments != null) {
+ NodeList<TypeName> arguments = typeArguments.arguments;
+ if (arguments != null && arguments.length == 2) {
+ TypeName entryKeyTypeName = arguments[0];
Type2 entryKeyType = getType2(entryKeyTypeName);
if (entryKeyType != null) {
staticKeyType = entryKeyType;
}
- TypeName entryValueTypeName = arguments2[1];
+ TypeName entryValueTypeName = arguments[1];
Type2 entryValueType = getType2(entryValueTypeName);
if (entryValueType != null) {
staticValueType = entryValueType;
@@ -6497,14 +6497,14 @@
}
}
recordStaticType(node, _typeProvider.mapType.substitute5(<Type2> [staticKeyType, staticValueType]));
- NodeList<MapLiteralEntry> entries2 = node.entries;
- int count = entries2.length;
+ NodeList<MapLiteralEntry> entries = node.entries;
+ int count = entries.length;
if (count > 0) {
- MapLiteralEntry entry = entries2[0];
+ MapLiteralEntry entry = entries[0];
Type2 propagatedKeyType = getBestType(entry.key);
Type2 propagatedValueType = getBestType(entry.value);
for (int i = 1; i < count; i++) {
- entry = entries2[i];
+ entry = entries[i];
Type2 elementKeyType = getBestType(entry.key);
if (propagatedKeyType != elementKeyType) {
propagatedKeyType = _dynamicType;
@@ -6589,9 +6589,9 @@
if (target != null) {
Type2 targetType = getBestType(target);
if (targetType is InterfaceType && (targetType.name == "HtmlDocument" || targetType.name == "Document")) {
- LibraryElement library2 = targetType.element.library;
- if (isHtmlLibrary(library2)) {
- Type2 returnType = getFirstArgumentAsType(library2, node.argumentList);
+ LibraryElement library = targetType.element.library;
+ if (isHtmlLibrary(library)) {
+ Type2 returnType = getFirstArgumentAsType(library, node.argumentList);
if (returnType != null) {
recordPropagatedType(node, returnType);
}
@@ -6603,9 +6603,9 @@
if (target == null) {
Element methodElement = methodNameNode.element;
if (methodElement != null) {
- LibraryElement library3 = methodElement.library;
- if (isHtmlLibrary(library3)) {
- Type2 returnType = getFirstArgumentAsQuery(library3, node.argumentList);
+ LibraryElement library = methodElement.library;
+ if (isHtmlLibrary(library)) {
+ Type2 returnType = getFirstArgumentAsQuery(library, node.argumentList);
if (returnType != null) {
recordPropagatedType(node, returnType);
}
@@ -6614,9 +6614,9 @@
} else {
Type2 targetType = getBestType(target);
if (targetType is InterfaceType && (targetType.name == "HtmlDocument" || targetType.name == "Document")) {
- LibraryElement library4 = targetType.element.library;
- if (isHtmlLibrary(library4)) {
- Type2 returnType = getFirstArgumentAsQuery(library4, node.argumentList);
+ LibraryElement library = targetType.element.library;
+ if (isHtmlLibrary(library)) {
+ Type2 returnType = getFirstArgumentAsQuery(library, node.argumentList);
if (returnType != null) {
recordPropagatedType(node, returnType);
}
@@ -6627,9 +6627,9 @@
Expression target = node.realTarget;
Type2 targetType = getBestType(target);
if (targetType is InterfaceType && (targetType.name == "HtmlDocument" || targetType.name == "Document")) {
- LibraryElement library5 = targetType.element.library;
- if (isHtmlLibrary(library5)) {
- Type2 returnType = getFirstArgumentAsQuery(library5, node.argumentList);
+ LibraryElement library = targetType.element.library;
+ if (isHtmlLibrary(library)) {
+ Type2 returnType = getFirstArgumentAsQuery(library, node.argumentList);
if (returnType != null) {
recordPropagatedType(node, returnType);
}
@@ -6652,9 +6652,9 @@
return null;
}
Object visitNamedExpression(NamedExpression node) {
- Expression expression2 = node.expression;
- recordStaticType(node, getStaticType(expression2));
- recordPropagatedType(node, getPropagatedType(expression2));
+ Expression expression = node.expression;
+ recordStaticType(node, getStaticType(expression));
+ recordPropagatedType(node, getPropagatedType(expression));
return null;
}
@@ -6667,9 +6667,9 @@
return null;
}
Object visitParenthesizedExpression(ParenthesizedExpression node) {
- Expression expression2 = node.expression;
- recordStaticType(node, getStaticType(expression2));
- recordPropagatedType(node, getPropagatedType(expression2));
+ Expression expression = node.expression;
+ recordStaticType(node, getStaticType(expression));
+ recordPropagatedType(node, getPropagatedType(expression));
return null;
}
@@ -6700,17 +6700,17 @@
* = r - 1; return r}(e1, e2)</i></blockquote>
*/
Object visitPostfixExpression(PostfixExpression node) {
- Expression operand2 = node.operand;
- Type2 staticType = getStaticType(operand2);
- sc.TokenType operator2 = node.operator.type;
- if (identical(operator2, sc.TokenType.MINUS_MINUS) || identical(operator2, sc.TokenType.PLUS_PLUS)) {
- Type2 intType2 = _typeProvider.intType;
- if (identical(getStaticType(node.operand), intType2)) {
- staticType = intType2;
+ Expression operand = node.operand;
+ Type2 staticType = getStaticType(operand);
+ sc.TokenType operator = node.operator.type;
+ if (identical(operator, sc.TokenType.MINUS_MINUS) || identical(operator, sc.TokenType.PLUS_PLUS)) {
+ Type2 intType = _typeProvider.intType;
+ if (identical(getStaticType(node.operand), intType)) {
+ staticType = intType;
}
}
recordStaticType(node, staticType);
- recordPropagatedType(node, getPropagatedType(operand2));
+ recordPropagatedType(node, getPropagatedType(operand));
return null;
}
@@ -6719,30 +6719,30 @@
*/
Object visitPrefixedIdentifier(PrefixedIdentifier node) {
SimpleIdentifier prefixedIdentifier = node.identifier;
- Element element2 = prefixedIdentifier.element;
+ Element element = prefixedIdentifier.element;
Type2 staticType = _dynamicType;
- if (element2 is ClassElement) {
+ if (element is ClassElement) {
if (isNotTypeLiteral(node)) {
- staticType = ((element2 as ClassElement)).type;
+ staticType = ((element as ClassElement)).type;
} else {
staticType = _typeProvider.typeType;
}
- } else if (element2 is FunctionTypeAliasElement) {
- staticType = ((element2 as FunctionTypeAliasElement)).type;
- } else if (element2 is MethodElement) {
- staticType = ((element2 as MethodElement)).type;
- } else if (element2 is PropertyAccessorElement) {
- staticType = getType((element2 as PropertyAccessorElement), node.prefix.staticType);
- } else if (element2 is ExecutableElement) {
- staticType = ((element2 as ExecutableElement)).type;
- } else if (element2 is TypeVariableElement) {
- staticType = ((element2 as TypeVariableElement)).type;
- } else if (element2 is VariableElement) {
- staticType = ((element2 as VariableElement)).type;
+ } else if (element is FunctionTypeAliasElement) {
+ staticType = ((element as FunctionTypeAliasElement)).type;
+ } else if (element is MethodElement) {
+ staticType = ((element as MethodElement)).type;
+ } else if (element is PropertyAccessorElement) {
+ staticType = getType((element as PropertyAccessorElement), node.prefix.staticType);
+ } else if (element is ExecutableElement) {
+ staticType = ((element as ExecutableElement)).type;
+ } else if (element is TypeVariableElement) {
+ staticType = ((element as TypeVariableElement)).type;
+ } else if (element is VariableElement) {
+ staticType = ((element as VariableElement)).type;
}
recordStaticType(prefixedIdentifier, staticType);
recordStaticType(node, staticType);
- Type2 propagatedType = _overrideManager.getType(element2);
+ Type2 propagatedType = _overrideManager.getType(element);
if (propagatedType != null && propagatedType.isMoreSpecificThan(staticType)) {
recordPropagatedType(prefixedIdentifier, propagatedType);
recordPropagatedType(node, propagatedType);
@@ -6756,16 +6756,16 @@
* form <i>op super</i> is equivalent to the method invocation <i>super.op()<i>.</blockquote>
*/
Object visitPrefixExpression(PrefixExpression node) {
- sc.TokenType operator2 = node.operator.type;
- if (identical(operator2, sc.TokenType.BANG)) {
+ sc.TokenType operator = node.operator.type;
+ if (identical(operator, sc.TokenType.BANG)) {
recordStaticType(node, _typeProvider.boolType);
} else {
ExecutableElement staticMethodElement = node.staticElement;
Type2 staticType = computeReturnType(staticMethodElement);
- if (identical(operator2, sc.TokenType.MINUS_MINUS) || identical(operator2, sc.TokenType.PLUS_PLUS)) {
- Type2 intType2 = _typeProvider.intType;
- if (identical(getStaticType(node.operand), intType2)) {
- staticType = intType2;
+ if (identical(operator, sc.TokenType.MINUS_MINUS) || identical(operator, sc.TokenType.PLUS_PLUS)) {
+ Type2 intType = _typeProvider.intType;
+ if (identical(getStaticType(node.operand), intType)) {
+ staticType = intType;
}
}
recordStaticType(node, staticType);
@@ -6824,18 +6824,18 @@
* The static type of <i>i</i> is the declared return type of <i>m</i>.</blockquote>
*/
Object visitPropertyAccess(PropertyAccess node) {
- SimpleIdentifier propertyName2 = node.propertyName;
- Element element2 = propertyName2.element;
+ SimpleIdentifier propertyName = node.propertyName;
+ Element element = propertyName.element;
Type2 staticType = _dynamicType;
- if (element2 is MethodElement) {
- staticType = ((element2 as MethodElement)).type;
- } else if (element2 is PropertyAccessorElement) {
- staticType = getType((element2 as PropertyAccessorElement), node.target != null ? getStaticType(node.target) : null);
+ if (element is MethodElement) {
+ staticType = ((element as MethodElement)).type;
+ } else if (element is PropertyAccessorElement) {
+ staticType = getType((element as PropertyAccessorElement), node.target != null ? getStaticType(node.target) : null);
} else {
}
- recordStaticType(propertyName2, staticType);
+ recordStaticType(propertyName, staticType);
recordStaticType(node, staticType);
- Type2 propagatedType = _overrideManager.getType(element2);
+ Type2 propagatedType = _overrideManager.getType(element);
if (propagatedType != null && propagatedType.isMoreSpecificThan(staticType)) {
recordPropagatedType(node, propagatedType);
}
@@ -6894,33 +6894,33 @@
* </blockquote>
*/
Object visitSimpleIdentifier(SimpleIdentifier node) {
- Element element2 = node.element;
+ Element element = node.element;
Type2 staticType = _dynamicType;
- if (element2 is ClassElement) {
+ if (element is ClassElement) {
if (isNotTypeLiteral(node)) {
- staticType = ((element2 as ClassElement)).type;
+ staticType = ((element as ClassElement)).type;
} else {
staticType = _typeProvider.typeType;
}
- } else if (element2 is FunctionTypeAliasElement) {
- staticType = ((element2 as FunctionTypeAliasElement)).type;
- } else if (element2 is MethodElement) {
- staticType = ((element2 as MethodElement)).type;
- } else if (element2 is PropertyAccessorElement) {
- staticType = getType((element2 as PropertyAccessorElement), null);
- } else if (element2 is ExecutableElement) {
- staticType = ((element2 as ExecutableElement)).type;
- } else if (element2 is TypeVariableElement) {
- staticType = ((element2 as TypeVariableElement)).type;
- } else if (element2 is VariableElement) {
- staticType = ((element2 as VariableElement)).type;
- } else if (element2 is PrefixElement) {
+ } else if (element is FunctionTypeAliasElement) {
+ staticType = ((element as FunctionTypeAliasElement)).type;
+ } else if (element is MethodElement) {
+ staticType = ((element as MethodElement)).type;
+ } else if (element is PropertyAccessorElement) {
+ staticType = getType((element as PropertyAccessorElement), null);
+ } else if (element is ExecutableElement) {
+ staticType = ((element as ExecutableElement)).type;
+ } else if (element is TypeVariableElement) {
+ staticType = ((element as TypeVariableElement)).type;
+ } else if (element is VariableElement) {
+ staticType = ((element as VariableElement)).type;
+ } else if (element is PrefixElement) {
return null;
} else {
staticType = _dynamicType;
}
recordStaticType(node, staticType);
- Type2 propagatedType = _overrideManager.getType(element2);
+ Type2 propagatedType = _overrideManager.getType(element);
if (propagatedType != null && propagatedType.isMoreSpecificThan(staticType)) {
recordPropagatedType(node, propagatedType);
}
@@ -6973,12 +6973,12 @@
return null;
}
Object visitVariableDeclaration(VariableDeclaration node) {
- Expression initializer2 = node.initializer;
- if (initializer2 != null) {
- Type2 rightType = getBestType(initializer2);
- VariableElement element2 = node.name.element as VariableElement;
- if (element2 != null) {
- _resolver.override(element2, rightType);
+ Expression initializer = node.initializer;
+ if (initializer != null) {
+ Type2 rightType = getBestType(initializer);
+ VariableElement element = node.name.element as VariableElement;
+ if (element != null) {
+ _resolver.override(element, rightType);
}
}
return null;
@@ -6991,9 +6991,9 @@
*/
Type2 computeArgumentType(ExecutableElement element) {
if (element != null) {
- List<ParameterElement> parameters2 = element.parameters;
- if (parameters2 != null && parameters2.length == 2) {
- return parameters2[1].type;
+ List<ParameterElement> parameters = element.parameters;
+ if (parameters != null && parameters.length == 2) {
+ return parameters[1].type;
}
}
return _dynamicType;
@@ -7008,31 +7008,31 @@
if (element is PropertyAccessorElement) {
FunctionType propertyType = ((element as PropertyAccessorElement)).type;
if (propertyType != null) {
- Type2 returnType2 = propertyType.returnType;
- if (returnType2 is InterfaceType) {
- if (identical(returnType2, _typeProvider.functionType)) {
+ Type2 returnType = propertyType.returnType;
+ if (returnType is InterfaceType) {
+ if (identical(returnType, _typeProvider.functionType)) {
return _dynamicType;
}
- MethodElement callMethod = ((returnType2 as InterfaceType)).lookUpMethod(ElementResolver.CALL_METHOD_NAME, _resolver.definingLibrary);
+ MethodElement callMethod = ((returnType as InterfaceType)).lookUpMethod(ElementResolver.CALL_METHOD_NAME, _resolver.definingLibrary);
if (callMethod != null) {
return callMethod.type.returnType;
}
- } else if (returnType2 is FunctionType) {
- Type2 innerReturnType = ((returnType2 as FunctionType)).returnType;
+ } else if (returnType is FunctionType) {
+ Type2 innerReturnType = ((returnType as FunctionType)).returnType;
if (innerReturnType != null) {
return innerReturnType;
}
- } else if (returnType2.isDartCoreFunction()) {
+ } else if (returnType.isDartCoreFunction()) {
return _dynamicType;
}
- if (returnType2 != null) {
- return returnType2;
+ if (returnType != null) {
+ return returnType;
}
}
} else if (element is ExecutableElement) {
- FunctionType type2 = ((element as ExecutableElement)).type;
- if (type2 != null) {
- return type2.returnType;
+ FunctionType type = ((element as ExecutableElement)).type;
+ if (type != null) {
+ return type.returnType;
}
} else if (element is VariableElement) {
Type2 variableType = ((element as VariableElement)).type;
@@ -7051,11 +7051,11 @@
* @return the return type that was computed
*/
Type2 computeReturnType2(FunctionDeclaration node) {
- TypeName returnType2 = node.returnType;
- if (returnType2 == null) {
+ TypeName returnType = node.returnType;
+ if (returnType == null) {
return _dynamicType;
}
- return returnType2.type;
+ return returnType.type;
}
/**
@@ -7066,9 +7066,9 @@
* @return the return type that was computed
*/
Type2 computeReturnType3(FunctionExpression node) {
- FunctionBody body2 = node.body;
- if (body2 is ExpressionFunctionBody) {
- return getStaticType(((body2 as ExpressionFunctionBody)).expression);
+ FunctionBody body = node.body;
+ if (body is ExpressionFunctionBody) {
+ return getStaticType(((body as ExpressionFunctionBody)).expression);
}
return _dynamicType;
}
@@ -7125,9 +7125,9 @@
* @return the string specified by the first argument in the argument list
*/
String getFirstArgumentAsString(ArgumentList argumentList) {
- NodeList<Expression> arguments2 = argumentList.arguments;
- if (arguments2.length > 0) {
- Expression argument = arguments2[0];
+ NodeList<Expression> arguments = argumentList.arguments;
+ if (arguments.length > 0) {
+ Expression argument = arguments[0];
if (argument is SimpleStringLiteral) {
return ((argument as SimpleStringLiteral)).value;
}
@@ -7208,29 +7208,29 @@
if (parameterTypes != null && parameterTypes.length > 0) {
return parameterTypes[0];
}
- PropertyAccessorElement getter2 = accessor.variable.getter;
- if (getter2 != null) {
- functionType = getter2.type;
+ PropertyAccessorElement getter = accessor.variable.getter;
+ if (getter != null) {
+ functionType = getter.type;
if (functionType != null) {
return functionType.returnType;
}
}
return _dynamicType;
}
- Type2 returnType2 = functionType.returnType;
- if (returnType2 is TypeVariableType && context is InterfaceType) {
+ Type2 returnType = functionType.returnType;
+ if (returnType is TypeVariableType && context is InterfaceType) {
InterfaceType interfaceTypeContext = (context as InterfaceType);
List<TypeVariableElement> parameterElements = interfaceTypeContext.element != null ? interfaceTypeContext.element.typeVariables : null;
if (parameterElements != null) {
for (int i = 0; i < parameterElements.length; i++) {
TypeVariableElement varElt = parameterElements[i];
- if (returnType2.name == varElt.name) {
+ if (returnType.name == varElt.name) {
return interfaceTypeContext.typeArguments[i];
}
}
}
}
- return returnType2;
+ return returnType;
}
/**
@@ -7239,11 +7239,11 @@
* @return the type represented by the type name
*/
Type2 getType2(TypeName typeName) {
- Type2 type2 = typeName.type;
- if (type2 == null) {
+ Type2 type = typeName.type;
+ if (type == null) {
return _dynamicType;
}
- return type2;
+ return type;
}
/**
@@ -7259,8 +7259,8 @@
* @return {@code true} if the given node is not a type literal
*/
bool isNotTypeLiteral(Identifier node) {
- ASTNode parent2 = node.parent;
- return parent2 is TypeName || (parent2 is PrefixedIdentifier && (parent2.parent is TypeName || identical(((parent2 as PrefixedIdentifier)).prefix, node))) || (parent2 is PropertyAccess && identical(((parent2 as PropertyAccess)).target, node)) || (parent2 is MethodInvocation && identical(node, ((parent2 as MethodInvocation)).target));
+ ASTNode parent = node.parent;
+ return parent is TypeName || (parent is PrefixedIdentifier && (parent.parent is TypeName || identical(((parent as PrefixedIdentifier)).prefix, node))) || (parent is PropertyAccess && identical(((parent as PropertyAccess)).target, node)) || (parent is MethodInvocation && identical(node, ((parent as MethodInvocation)).target));
}
/**
@@ -7294,20 +7294,20 @@
* @return the better type guess, or the same static type as given
*/
Type2 refineBinaryExpressionType(BinaryExpression node, Type2 staticType) {
- sc.TokenType operator2 = node.operator.type;
- if (identical(operator2, sc.TokenType.AMPERSAND_AMPERSAND) || identical(operator2, sc.TokenType.BAR_BAR) || identical(operator2, sc.TokenType.EQ_EQ) || identical(operator2, sc.TokenType.BANG_EQ)) {
+ sc.TokenType operator = node.operator.type;
+ if (identical(operator, sc.TokenType.AMPERSAND_AMPERSAND) || identical(operator, sc.TokenType.BAR_BAR) || identical(operator, sc.TokenType.EQ_EQ) || identical(operator, sc.TokenType.BANG_EQ)) {
return _typeProvider.boolType;
}
- if (identical(operator2, sc.TokenType.MINUS) || identical(operator2, sc.TokenType.PERCENT) || identical(operator2, sc.TokenType.PLUS) || identical(operator2, sc.TokenType.STAR)) {
- Type2 doubleType2 = _typeProvider.doubleType;
- if (identical(getStaticType(node.leftOperand), doubleType2) || identical(getStaticType(node.rightOperand), doubleType2)) {
- return doubleType2;
+ if (identical(operator, sc.TokenType.MINUS) || identical(operator, sc.TokenType.PERCENT) || identical(operator, sc.TokenType.PLUS) || identical(operator, sc.TokenType.STAR)) {
+ Type2 doubleType = _typeProvider.doubleType;
+ if (identical(getStaticType(node.leftOperand), doubleType) || identical(getStaticType(node.rightOperand), doubleType)) {
+ return doubleType;
}
}
- if (identical(operator2, sc.TokenType.MINUS) || identical(operator2, sc.TokenType.PERCENT) || identical(operator2, sc.TokenType.PLUS) || identical(operator2, sc.TokenType.STAR) || identical(operator2, sc.TokenType.TILDE_SLASH)) {
- Type2 intType2 = _typeProvider.intType;
- if (identical(getStaticType(node.leftOperand), intType2) && identical(getStaticType(node.rightOperand), intType2)) {
- staticType = intType2;
+ if (identical(operator, sc.TokenType.MINUS) || identical(operator, sc.TokenType.PERCENT) || identical(operator, sc.TokenType.PLUS) || identical(operator, sc.TokenType.STAR) || identical(operator, sc.TokenType.TILDE_SLASH)) {
+ Type2 intType = _typeProvider.intType;
+ if (identical(getStaticType(node.leftOperand), intType) && identical(getStaticType(node.rightOperand), intType)) {
+ staticType = intType;
}
}
return staticType;
@@ -7486,11 +7486,11 @@
Map<Element, Type2> overrides = new Map<Element, Type2>();
if (variableList.isConst() || variableList.isFinal()) {
for (VariableDeclaration variable in variableList.variables) {
- Element element2 = variable.element;
- if (element2 != null) {
- Type2 type = _overridenTypes[element2];
+ Element element = variable.element;
+ if (element != null) {
+ Type2 type = _overridenTypes[element];
if (type != null) {
- overrides[element2] = type;
+ overrides[element] = type;
}
}
}
@@ -7800,9 +7800,9 @@
exceptionType = getType3(exceptionTypeName);
}
recordType(exception, exceptionType);
- Element element2 = exception.element;
- if (element2 is VariableElementImpl) {
- ((element2 as VariableElementImpl)).type = exceptionType;
+ Element element = exception.element;
+ if (element is VariableElementImpl) {
+ ((element as VariableElementImpl)).type = exceptionType;
} else {
}
}
@@ -7817,19 +7817,19 @@
super.visitClassDeclaration(node);
ClassElementImpl classElement = getClassElement(node.name);
InterfaceType superclassType = null;
- ExtendsClause extendsClause2 = node.extendsClause;
- if (extendsClause2 != null) {
+ ExtendsClause extendsClause = node.extendsClause;
+ if (extendsClause != null) {
ErrorCode errorCode = node.withClause == null ? CompileTimeErrorCode.EXTENDS_NON_CLASS : CompileTimeErrorCode.MIXIN_WITH_NON_CLASS_SUPERCLASS;
- superclassType = resolveType(extendsClause2.superclass, errorCode);
+ superclassType = resolveType(extendsClause.superclass, errorCode);
if (superclassType != typeProvider.objectType) {
classElement.validMixin = false;
}
}
if (classElement != null) {
if (superclassType == null) {
- InterfaceType objectType2 = typeProvider.objectType;
- if (classElement.type != objectType2) {
- superclassType = objectType2;
+ InterfaceType objectType = typeProvider.objectType;
+ if (classElement.type != objectType) {
+ superclassType = objectType;
}
}
classElement.supertype = superclassType;
@@ -7853,11 +7853,11 @@
}
Object visitConstructorDeclaration(ConstructorDeclaration node) {
super.visitConstructorDeclaration(node);
- ExecutableElementImpl element2 = node.element as ExecutableElementImpl;
- FunctionTypeImpl type = new FunctionTypeImpl.con1(element2);
- setTypeInformation(type, null, element2.parameters);
- type.returnType = ((element2.enclosingElement as ClassElement)).type;
- element2.type = type;
+ ExecutableElementImpl element = node.element as ExecutableElementImpl;
+ FunctionTypeImpl type = new FunctionTypeImpl.con1(element);
+ setTypeInformation(type, null, element.parameters);
+ type.returnType = ((element.enclosingElement as ClassElement)).type;
+ element.type = type;
return null;
}
Object visitDeclaredIdentifier(DeclaredIdentifier node) {
@@ -7869,8 +7869,8 @@
} else {
declaredType = getType3(typeName);
}
- LocalVariableElementImpl element2 = node.element as LocalVariableElementImpl;
- element2.type = declaredType;
+ LocalVariableElementImpl element = node.element as LocalVariableElementImpl;
+ element.type = declaredType;
return null;
}
Object visitDefaultFormalParameter(DefaultFormalParameter node) {
@@ -7879,9 +7879,9 @@
}
Object visitFieldFormalParameter(FieldFormalParameter node) {
super.visitFieldFormalParameter(node);
- Element element2 = node.identifier.element;
- if (element2 is ParameterElementImpl) {
- ParameterElementImpl parameter = element2 as ParameterElementImpl;
+ Element element = node.identifier.element;
+ if (element is ParameterElementImpl) {
+ ParameterElementImpl parameter = element as ParameterElementImpl;
Type2 type;
TypeName typeName = node.type;
if (typeName == null) {
@@ -7896,44 +7896,44 @@
}
Object visitFunctionDeclaration(FunctionDeclaration node) {
super.visitFunctionDeclaration(node);
- ExecutableElementImpl element2 = node.element as ExecutableElementImpl;
- FunctionTypeImpl type = new FunctionTypeImpl.con1(element2);
- setTypeInformation(type, node.returnType, element2.parameters);
- element2.type = type;
+ ExecutableElementImpl element = node.element as ExecutableElementImpl;
+ FunctionTypeImpl type = new FunctionTypeImpl.con1(element);
+ setTypeInformation(type, node.returnType, element.parameters);
+ element.type = type;
return null;
}
Object visitFunctionTypeAlias(FunctionTypeAlias node) {
super.visitFunctionTypeAlias(node);
- FunctionTypeAliasElementImpl element2 = node.element as FunctionTypeAliasElementImpl;
- FunctionTypeImpl type2 = element2.type as FunctionTypeImpl;
- setTypeInformation(type2, node.returnType, element2.parameters);
+ FunctionTypeAliasElementImpl element = node.element as FunctionTypeAliasElementImpl;
+ FunctionTypeImpl type = element.type as FunctionTypeImpl;
+ setTypeInformation(type, node.returnType, element.parameters);
return null;
}
Object visitFunctionTypedFormalParameter(FunctionTypedFormalParameter node) {
super.visitFunctionTypedFormalParameter(node);
- ParameterElementImpl element2 = node.identifier.element as ParameterElementImpl;
+ ParameterElementImpl element = node.identifier.element as ParameterElementImpl;
AnonymousFunctionTypeImpl type = new AnonymousFunctionTypeImpl();
- List<ParameterElement> parameters2 = getElements(node.parameters);
- setTypeInformation(type, node.returnType, parameters2);
- type.baseParameters = parameters2;
- element2.type = type;
+ List<ParameterElement> parameters = getElements(node.parameters);
+ setTypeInformation(type, node.returnType, parameters);
+ type.baseParameters = parameters;
+ element.type = type;
return null;
}
Object visitMethodDeclaration(MethodDeclaration node) {
super.visitMethodDeclaration(node);
- ExecutableElementImpl element2 = node.element as ExecutableElementImpl;
- FunctionTypeImpl type = new FunctionTypeImpl.con1(element2);
- setTypeInformation(type, node.returnType, element2.parameters);
- element2.type = type;
- if (element2 is PropertyAccessorElement) {
- PropertyAccessorElement accessor = element2 as PropertyAccessorElement;
- PropertyInducingElementImpl variable2 = accessor.variable as PropertyInducingElementImpl;
+ ExecutableElementImpl element = node.element as ExecutableElementImpl;
+ FunctionTypeImpl type = new FunctionTypeImpl.con1(element);
+ setTypeInformation(type, node.returnType, element.parameters);
+ element.type = type;
+ if (element is PropertyAccessorElement) {
+ PropertyAccessorElement accessor = element as PropertyAccessorElement;
+ PropertyInducingElementImpl variable = accessor.variable as PropertyInducingElementImpl;
if (accessor.isGetter()) {
- variable2.type = type.returnType;
- } else if (variable2.type == null) {
+ variable.type = type.returnType;
+ } else if (variable.type == null) {
List<Type2> parameterTypes = type.normalParameterTypes;
if (parameterTypes != null && parameterTypes.length > 0) {
- variable2.type = parameterTypes[0];
+ variable.type = parameterTypes[0];
}
}
}
@@ -7948,9 +7948,9 @@
} else {
declaredType = getType3(typeName);
}
- Element element2 = node.identifier.element;
- if (element2 is ParameterElement) {
- ((element2 as ParameterElementImpl)).type = declaredType;
+ Element element = node.identifier.element;
+ if (element is ParameterElement) {
+ ((element as ParameterElementImpl)).type = declaredType;
} else {
}
return null;
@@ -7981,19 +7981,19 @@
node.type = voidType;
return null;
}
- ASTNode parent2 = node.parent;
- if (typeName is PrefixedIdentifier && parent2 is ConstructorName && argumentList == null) {
- ConstructorName name = parent2 as ConstructorName;
+ ASTNode parent = node.parent;
+ if (typeName is PrefixedIdentifier && parent is ConstructorName && argumentList == null) {
+ ConstructorName name = parent as ConstructorName;
if (name.name == null) {
- SimpleIdentifier prefix2 = ((typeName as PrefixedIdentifier)).prefix;
- element = nameScope.lookup(prefix2, definingLibrary);
+ SimpleIdentifier prefix = ((typeName as PrefixedIdentifier)).prefix;
+ element = nameScope.lookup(prefix, definingLibrary);
if (element is PrefixElement) {
return null;
} else if (element != null) {
name.name = ((typeName as PrefixedIdentifier)).identifier;
name.period = ((typeName as PrefixedIdentifier)).period;
- node.name = prefix2;
- typeName = prefix2;
+ node.name = prefix;
+ typeName = prefix;
}
}
}
@@ -8064,6 +8064,15 @@
reportError(StaticWarningCode.CAST_TO_NON_TYPE, typeName, [typeName.name]);
} else if (isTypeNameInIsExpression(node)) {
reportError(StaticWarningCode.TYPE_TEST_NON_TYPE, typeName, [typeName.name]);
+ } else {
+ ASTNode parent = typeName.parent;
+ while (parent is TypeName) {
+ parent = parent.parent;
+ }
+ if (parent is ExtendsClause || parent is ImplementsClause || parent is WithClause || parent is ClassTypeAlias) {
+ } else {
+ reportError(StaticWarningCode.NOT_A_TYPE, typeName, [typeName.name]);
+ }
}
setElement(typeName, _dynamicType.element);
typeName.staticType = _dynamicType;
@@ -8071,14 +8080,14 @@
return null;
}
if (argumentList != null) {
- NodeList<TypeName> arguments2 = argumentList.arguments;
- int argumentCount = arguments2.length;
+ NodeList<TypeName> arguments = argumentList.arguments;
+ int argumentCount = arguments.length;
List<Type2> parameters = getTypeArguments(type);
int parameterCount = parameters.length;
int count = Math.min(argumentCount, parameterCount);
List<Type2> typeArguments = new List<Type2>();
for (int i = 0; i < count; i++) {
- Type2 argumentType = getType3(arguments2[i]);
+ Type2 argumentType = getType3(arguments[i]);
if (argumentType != null) {
typeArguments.add(argumentType);
}
@@ -8125,21 +8134,21 @@
} else {
declaredType = getType3(typeName);
}
- Element element2 = node.name.element;
- if (element2 is VariableElement) {
- ((element2 as VariableElementImpl)).type = declaredType;
- if (element2 is PropertyInducingElement) {
- PropertyInducingElement variableElement = element2 as PropertyInducingElement;
- PropertyAccessorElementImpl getter2 = variableElement.getter as PropertyAccessorElementImpl;
- FunctionTypeImpl getterType = new FunctionTypeImpl.con1(getter2);
+ Element element = node.name.element;
+ if (element is VariableElement) {
+ ((element as VariableElementImpl)).type = declaredType;
+ if (element is PropertyInducingElement) {
+ PropertyInducingElement variableElement = element as PropertyInducingElement;
+ PropertyAccessorElementImpl getter = variableElement.getter as PropertyAccessorElementImpl;
+ FunctionTypeImpl getterType = new FunctionTypeImpl.con1(getter);
getterType.returnType = declaredType;
- getter2.type = getterType;
- PropertyAccessorElementImpl setter2 = variableElement.setter as PropertyAccessorElementImpl;
- if (setter2 != null) {
- FunctionTypeImpl setterType = new FunctionTypeImpl.con1(setter2);
+ getter.type = getterType;
+ PropertyAccessorElementImpl setter = variableElement.setter as PropertyAccessorElementImpl;
+ if (setter != null) {
+ FunctionTypeImpl setterType = new FunctionTypeImpl.con1(setter);
setterType.returnType = VoidTypeImpl.instance;
setterType.normalParameterTypes = <Type2> [declaredType];
- setter2.type = setterType;
+ setter.type = setterType;
}
}
} else {
@@ -8156,11 +8165,11 @@
if (identifier == null) {
return null;
}
- Element element2 = identifier.element;
- if (element2 is! ClassElementImpl) {
+ Element element = identifier.element;
+ if (element is! ClassElementImpl) {
return null;
}
- return element2 as ClassElementImpl;
+ return element as ClassElementImpl;
}
/**
@@ -8172,9 +8181,9 @@
List<ParameterElement> getElements(FormalParameterList parameterList) {
List<ParameterElement> elements = new List<ParameterElement>();
for (FormalParameter parameter in parameterList.parameters) {
- ParameterElement element2 = parameter.identifier.element as ParameterElement;
- if (element2 != null) {
- elements.add(element2);
+ ParameterElement element = parameter.identifier.element as ParameterElement;
+ if (element != null) {
+ elements.add(element);
}
}
return new List.from(elements);
@@ -8189,11 +8198,11 @@
* were provided
*/
ErrorCode getInvalidTypeParametersErrorCode(TypeName node) {
- ASTNode parent2 = node.parent;
- if (parent2 is ConstructorName) {
- parent2 = parent2.parent;
- if (parent2 is InstanceCreationExpression) {
- if (((parent2 as InstanceCreationExpression)).isConst()) {
+ ASTNode parent = node.parent;
+ if (parent is ConstructorName) {
+ parent = parent.parent;
+ if (parent is InstanceCreationExpression) {
+ if (((parent as InstanceCreationExpression)).isConst()) {
return CompileTimeErrorCode.CONST_WITH_INVALID_TYPE_PARAMETERS;
} else {
return CompileTimeErrorCode.NEW_WITH_INVALID_TYPE_PARAMETERS;
@@ -8228,11 +8237,11 @@
* @return the type represented by the type name
*/
Type2 getType3(TypeName typeName) {
- Type2 type2 = typeName.type;
- if (type2 == null) {
+ Type2 type = typeName.type;
+ if (type == null) {
return _dynamicType;
}
- return type2;
+ return type;
}
/**
@@ -8268,9 +8277,9 @@
* @return {@code true} if the given type name is used as the type in an as expression
*/
bool isTypeNameInAsExpression(TypeName typeName) {
- ASTNode parent2 = typeName.parent;
- if (parent2 is AsExpression) {
- AsExpression asExpression = parent2 as AsExpression;
+ ASTNode parent = typeName.parent;
+ if (parent is AsExpression) {
+ AsExpression asExpression = parent as AsExpression;
return identical(asExpression.type, typeName);
}
return false;
@@ -8282,9 +8291,9 @@
* @return {@code true} if the given type name is used as the exception type in a catch clause
*/
bool isTypeNameInCatchClause(TypeName typeName) {
- ASTNode parent2 = typeName.parent;
- if (parent2 is CatchClause) {
- CatchClause catchClause = parent2 as CatchClause;
+ ASTNode parent = typeName.parent;
+ if (parent is CatchClause) {
+ CatchClause catchClause = parent as CatchClause;
return identical(catchClause.exceptionType, typeName);
}
return false;
@@ -8297,9 +8306,9 @@
* expression
*/
bool isTypeNameInInstanceCreationExpression(TypeName typeName) {
- ASTNode parent2 = typeName.parent;
- if (parent2 is ConstructorName && parent2.parent is InstanceCreationExpression) {
- ConstructorName constructorName = parent2 as ConstructorName;
+ ASTNode parent = typeName.parent;
+ if (parent is ConstructorName && parent.parent is InstanceCreationExpression) {
+ ConstructorName constructorName = parent as ConstructorName;
return constructorName != null && identical(constructorName.type, typeName);
}
return false;
@@ -8311,9 +8320,9 @@
* @return {@code true} if the given type name is used as the type in an is expression
*/
bool isTypeNameInIsExpression(TypeName typeName) {
- ASTNode parent2 = typeName.parent;
- if (parent2 is IsExpression) {
- IsExpression isExpression = parent2 as IsExpression;
+ ASTNode parent = typeName.parent;
+ if (parent is IsExpression) {
+ IsExpression isExpression = parent as IsExpression;
return identical(isExpression.type, typeName);
}
return false;
@@ -8325,12 +8334,12 @@
* @return {@code true} if the given type name is used as the type in a redirected constructor
*/
bool isTypeNameTargetInRedirectedConstructor(TypeName typeName) {
- ASTNode parent2 = typeName.parent;
- if (parent2 is ConstructorName) {
- ConstructorName constructorName = parent2 as ConstructorName;
- parent2 = constructorName.parent;
- if (parent2 is ConstructorDeclaration) {
- ConstructorDeclaration constructorDeclaration = parent2 as ConstructorDeclaration;
+ ASTNode parent = typeName.parent;
+ if (parent is ConstructorName) {
+ ConstructorName constructorName = parent as ConstructorName;
+ parent = constructorName.parent;
+ if (parent is ConstructorDeclaration) {
+ ConstructorDeclaration constructorDeclaration = parent as ConstructorDeclaration;
return constructorName == constructorDeclaration.redirectedConstructor;
}
}
@@ -8361,15 +8370,15 @@
*/
void resolve(ClassElementImpl classElement, WithClause withClause, ImplementsClause implementsClause) {
if (withClause != null) {
- List<InterfaceType> mixinTypes2 = resolveTypes(withClause.mixinTypes, CompileTimeErrorCode.MIXIN_OF_NON_CLASS);
+ List<InterfaceType> mixinTypes = resolveTypes(withClause.mixinTypes, CompileTimeErrorCode.MIXIN_OF_NON_CLASS);
if (classElement != null) {
- classElement.mixins = mixinTypes2;
+ classElement.mixins = mixinTypes;
}
}
if (implementsClause != null) {
- NodeList<TypeName> interfaces2 = implementsClause.interfaces;
- List<InterfaceType> interfaceTypes = resolveTypes(interfaces2, CompileTimeErrorCode.IMPLEMENTS_NON_CLASS);
- List<TypeName> typeNames = new List.from(interfaces2);
+ NodeList<TypeName> interfaces = implementsClause.interfaces;
+ List<InterfaceType> interfaceTypes = resolveTypes(interfaces, CompileTimeErrorCode.IMPLEMENTS_NON_CLASS);
+ List<TypeName> typeNames = new List.from(interfaces);
String dynamicKeyword = sc.Keyword.DYNAMIC.syntax;
List<bool> detectedRepeatOnIndex = new List<bool>.filled(typeNames.length, false);
for (int i = 0; i < detectedRepeatOnIndex.length; i++) {
@@ -8377,18 +8386,18 @@
}
for (int i = 0; i < typeNames.length; i++) {
TypeName typeName = typeNames[i];
- String name3 = typeName.name.name;
- if (name3 == dynamicKeyword) {
+ String name = typeName.name.name;
+ if (name == dynamicKeyword) {
reportError(CompileTimeErrorCode.IMPLEMENTS_DYNAMIC, typeName, []);
}
if (!detectedRepeatOnIndex[i]) {
for (int j = i + 1; j < typeNames.length; j++) {
- Element element3 = typeName.name.element;
+ Element element = typeName.name.element;
TypeName typeName2 = typeNames[j];
Identifier identifier2 = typeName2.name;
String name2 = identifier2.name;
Element element2 = identifier2.element;
- if (element3 != null && element3 == element2) {
+ if (element != null && element == element2) {
detectedRepeatOnIndex[j] = true;
reportError(CompileTimeErrorCode.IMPLEMENTS_REPEATED, typeName2, [name2]);
}
@@ -8409,13 +8418,13 @@
* @return the type specified by the type name
*/
InterfaceType resolveType(TypeName typeName, ErrorCode nonTypeError) {
- Type2 type2 = typeName.type;
- if (type2 is InterfaceType) {
- return type2 as InterfaceType;
+ Type2 type = typeName.type;
+ if (type is InterfaceType) {
+ return type as InterfaceType;
}
- Identifier name2 = typeName.name;
- if (name2.name != sc.Keyword.DYNAMIC.syntax) {
- reportError(nonTypeError, name2, [name2.name]);
+ Identifier name = typeName.name;
+ if (name.name != sc.Keyword.DYNAMIC.syntax) {
+ reportError(nonTypeError, name, [name.name]);
}
return null;
}
@@ -8440,14 +8449,17 @@
void setElement(Identifier typeName, Element element2) {
if (element2 != null) {
if (typeName is SimpleIdentifier) {
+ ((typeName as SimpleIdentifier)).staticElement = element2;
((typeName as SimpleIdentifier)).element = element2;
} else if (typeName is PrefixedIdentifier) {
PrefixedIdentifier identifier = typeName as PrefixedIdentifier;
+ identifier.identifier.staticElement = element2;
identifier.identifier.element = element2;
- SimpleIdentifier prefix2 = identifier.prefix;
- Element prefixElement = nameScope.lookup(prefix2, definingLibrary);
+ SimpleIdentifier prefix = identifier.prefix;
+ Element prefixElement = nameScope.lookup(prefix, definingLibrary);
if (prefixElement != null) {
- prefix2.element = prefixElement;
+ prefix.staticElement = prefixElement;
+ prefix.element = prefixElement;
}
}
}
@@ -8599,8 +8611,8 @@
void defineParameters(ExecutableElement functionElement) {
Scope parameterScope = enclosingScope;
if (functionElement.enclosingElement is ExecutableElement) {
- String name2 = functionElement.name;
- if (name2 != null && !name2.isEmpty) {
+ String name = functionElement.name;
+ if (name != null && !name.isEmpty) {
parameterScope.define(functionElement);
}
}
@@ -8743,32 +8755,32 @@
* @return {@code true} if the given {@link Identifier} is the part of type annotation.
*/
static bool isTypeAnnotation(Identifier identifier) {
- ASTNode parent4 = identifier.parent;
- if (parent4 is TypeName) {
- ASTNode parent2 = parent4.parent;
+ ASTNode parent = identifier.parent;
+ if (parent is TypeName) {
+ ASTNode parent2 = parent.parent;
if (parent2 is FunctionDeclaration) {
FunctionDeclaration decl = parent2 as FunctionDeclaration;
- return identical(decl.returnType, parent4);
+ return identical(decl.returnType, parent);
}
if (parent2 is FunctionTypeAlias) {
FunctionTypeAlias decl = parent2 as FunctionTypeAlias;
- return identical(decl.returnType, parent4);
+ return identical(decl.returnType, parent);
}
if (parent2 is MethodDeclaration) {
MethodDeclaration decl = parent2 as MethodDeclaration;
- return identical(decl.returnType, parent4);
+ return identical(decl.returnType, parent);
}
if (parent2 is VariableDeclarationList) {
VariableDeclarationList decl = parent2 as VariableDeclarationList;
- return identical(decl.type, parent4);
+ return identical(decl.type, parent);
}
if (parent2 is SimpleFormalParameter) {
SimpleFormalParameter decl = parent2 as SimpleFormalParameter;
- return identical(decl.type, parent4);
+ return identical(decl.type, parent);
}
if (parent2 is TypeParameter) {
TypeParameter decl = parent2 as TypeParameter;
- return identical(decl.bound, parent4);
+ return identical(decl.bound, parent);
}
if (parent2 is TypeArgumentList) {
ASTNode parent3 = parent2.parent;
@@ -8987,11 +8999,11 @@
* @return the export namespace that was created
*/
Namespace createExportNamespace(ExportElement element) {
- LibraryElement exportedLibrary2 = element.exportedLibrary;
- if (exportedLibrary2 == null) {
+ LibraryElement exportedLibrary = element.exportedLibrary;
+ if (exportedLibrary == null) {
return Namespace.EMPTY;
}
- Map<String, Element> definedNames = createExportMapping(exportedLibrary2, new Set<LibraryElement>());
+ Map<String, Element> definedNames = createExportMapping(exportedLibrary, new Set<LibraryElement>());
definedNames = apply(definedNames, element.combinators);
return new Namespace(definedNames);
}
@@ -9009,11 +9021,11 @@
* @return the import namespace that was created
*/
Namespace createImportNamespace(ImportElement element) {
- LibraryElement importedLibrary2 = element.importedLibrary;
- if (importedLibrary2 == null) {
+ LibraryElement importedLibrary = element.importedLibrary;
+ if (importedLibrary == null) {
return Namespace.EMPTY;
}
- Map<String, Element> definedNames = createExportMapping(importedLibrary2, new Set<LibraryElement>());
+ Map<String, Element> definedNames = createExportMapping(importedLibrary, new Set<LibraryElement>());
definedNames = apply(definedNames, element.combinators);
definedNames = apply2(definedNames, element.prefix);
return new Namespace(definedNames);
@@ -9061,9 +9073,9 @@
* @param element the element to be added
*/
void addIfPublic(Map<String, Element> definedNames, Element element) {
- String name2 = element.name;
- if (name2 != null && !Scope.isPrivateName(name2)) {
- definedNames[name2] = element;
+ String name = element.name;
+ if (name != null && !Scope.isPrivateName(name)) {
+ definedNames[name] = element;
}
}
@@ -9138,9 +9150,9 @@
try {
Map<String, Element> definedNames = new Map<String, Element>();
for (ExportElement element in library.exports) {
- LibraryElement exportedLibrary2 = element.exportedLibrary;
- if (exportedLibrary2 != null && !visitedElements.contains(exportedLibrary2)) {
- Map<String, Element> exportedNames = createExportMapping(exportedLibrary2, visitedElements);
+ LibraryElement exportedLibrary = element.exportedLibrary;
+ if (exportedLibrary != null && !visitedElements.contains(exportedLibrary)) {
+ Map<String, Element> exportedNames = createExportMapping(exportedLibrary, visitedElements);
exportedNames = apply(exportedNames, element.combinators);
addAll(definedNames, exportedNames);
}
@@ -9282,11 +9294,11 @@
* @return the error code used to report duplicate names within a scope
*/
AnalysisError getErrorForDuplicate(Element existing, Element duplicate) {
- Source source2 = duplicate.source;
- if (source2 == null) {
- source2 = source;
+ Source source = duplicate.source;
+ if (source == null) {
+ source = source;
}
- return new AnalysisError.con2(source2, duplicate.nameOffset, duplicate.displayName.length, CompileTimeErrorCode.DUPLICATE_DEFINITION, [existing.displayName]);
+ return new AnalysisError.con2(source, duplicate.nameOffset, duplicate.displayName.length, CompileTimeErrorCode.DUPLICATE_DEFINITION, [existing.displayName]);
}
/**
@@ -9415,26 +9427,26 @@
Set<Object> keys = new Set<Object>();
List<Expression> invalidKeys = new List<Expression>();
for (MapLiteralEntry entry in node.entries) {
- Expression key2 = entry.key;
+ Expression key = entry.key;
if (isConst) {
- EvaluationResultImpl result = validate(key2, CompileTimeErrorCode.NON_CONSTANT_MAP_KEY);
+ EvaluationResultImpl result = validate(key, CompileTimeErrorCode.NON_CONSTANT_MAP_KEY);
validate(entry.value, CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE);
if (result is ValidResult) {
- Object value2 = ((result as ValidResult)).value;
- if (keys.contains(value2)) {
- invalidKeys.add(key2);
+ Object value = ((result as ValidResult)).value;
+ if (keys.contains(value)) {
+ invalidKeys.add(key);
} else {
- javaSetAdd(keys, value2);
+ javaSetAdd(keys, value);
}
}
} else {
- EvaluationResultImpl result = key2.accept(new ConstantVisitor());
+ EvaluationResultImpl result = key.accept(new ConstantVisitor());
if (result is ValidResult) {
- Object value3 = ((result as ValidResult)).value;
- if (keys.contains(value3)) {
- invalidKeys.add(key2);
+ Object value = ((result as ValidResult)).value;
+ if (keys.contains(value)) {
+ invalidKeys.add(key);
} else {
- javaSetAdd(keys, value3);
+ javaSetAdd(keys, value);
}
} else {
reportEqualKeys = false;
@@ -9460,13 +9472,13 @@
}
Object visitVariableDeclaration(VariableDeclaration node) {
super.visitVariableDeclaration(node);
- Expression initializer2 = node.initializer;
- if (initializer2 != null && node.isConst()) {
- VariableElementImpl element2 = node.element as VariableElementImpl;
- EvaluationResultImpl result = element2.evaluationResult;
+ Expression initializer = node.initializer;
+ if (initializer != null && node.isConst()) {
+ VariableElementImpl element = node.element as VariableElementImpl;
+ EvaluationResultImpl result = element.evaluationResult;
if (result == null) {
- result = validate(initializer2, CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE);
- element2.evaluationResult = result;
+ result = validate(initializer, CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE);
+ element.evaluationResult = result;
} else if (result is ErrorResult) {
reportErrors(result, CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE);
}
@@ -9524,11 +9536,11 @@
if (!node.isConst()) {
return;
}
- ArgumentList argumentList2 = node.argumentList;
- if (argumentList2 == null) {
+ ArgumentList argumentList = node.argumentList;
+ if (argumentList == null) {
return;
}
- for (Expression argument in argumentList2.arguments) {
+ for (Expression argument in argumentList.arguments) {
if (argument is NamedExpression) {
argument = ((argument as NamedExpression)).expression;
}
@@ -9548,12 +9560,12 @@
for (FormalParameter parameter in parameters2.parameters) {
if (parameter is DefaultFormalParameter) {
DefaultFormalParameter defaultParameter = parameter as DefaultFormalParameter;
- Expression defaultValue2 = defaultParameter.defaultValue;
- if (defaultValue2 != null) {
- EvaluationResultImpl result = validate(defaultValue2, CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE);
+ Expression defaultValue = defaultParameter.defaultValue;
+ if (defaultValue != null) {
+ EvaluationResultImpl result = validate(defaultValue, CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE);
if (defaultParameter.isConst()) {
- VariableElementImpl element2 = parameter.element as VariableElementImpl;
- element2.evaluationResult = result;
+ VariableElementImpl element = parameter.element as VariableElementImpl;
+ element.evaluationResult = result;
}
}
}
@@ -9593,8 +9605,8 @@
*/
void validateInitializers(ConstructorDeclaration constructor) {
List<ParameterElement> parameterElements = constructor.parameters.elements;
- NodeList<ConstructorInitializer> initializers2 = constructor.initializers;
- for (ConstructorInitializer initializer in initializers2) {
+ NodeList<ConstructorInitializer> initializers = constructor.initializers;
+ for (ConstructorInitializer initializer in initializers) {
if (initializer is ConstructorFieldInitializer) {
ConstructorFieldInitializer fieldInitializer = initializer as ConstructorFieldInitializer;
validateInitializerExpression(parameterElements, fieldInitializer.expression);
@@ -9615,24 +9627,24 @@
List<ParameterElement> parameterElements;
ConstantVisitor_10(this.ConstantVerifier_this, this.parameterElements) : super();
EvaluationResultImpl visitSimpleIdentifier(SimpleIdentifier node) {
- Element element2 = node.element;
+ Element element = node.element;
for (ParameterElement parameterElement in parameterElements) {
- if (identical(parameterElement, element2) && parameterElement != null) {
- Type2 type2 = parameterElement.type;
- if (type2 != null) {
- if (type2.isDynamic()) {
+ if (identical(parameterElement, element) && parameterElement != null) {
+ Type2 type = parameterElement.type;
+ if (type != null) {
+ if (type.isDynamic()) {
return ValidResult.RESULT_DYNAMIC;
}
- if (type2.isSubtypeOf(ConstantVerifier_this._boolType)) {
+ if (type.isSubtypeOf(ConstantVerifier_this._boolType)) {
return ValidResult.RESULT_BOOL;
}
- if (type2.isSubtypeOf(ConstantVerifier_this._intType)) {
+ if (type.isSubtypeOf(ConstantVerifier_this._intType)) {
return ValidResult.RESULT_INT;
}
- if (type2.isSubtypeOf(ConstantVerifier_this._numType)) {
+ if (type.isSubtypeOf(ConstantVerifier_this._numType)) {
return ValidResult.RESULT_NUM;
}
- if (type2.isSubtypeOf(ConstantVerifier_this._stringType)) {
+ if (type.isSubtypeOf(ConstantVerifier_this._stringType)) {
return ValidResult.RESULT_STRING;
}
}
@@ -9789,8 +9801,8 @@
return super.visitAssertStatement(node);
}
Object visitAssignmentExpression(AssignmentExpression node) {
- sc.Token operator2 = node.operator;
- sc.TokenType operatorType = operator2.type;
+ sc.Token operator = node.operator;
+ sc.TokenType operatorType = operator.type;
if (identical(operatorType, sc.TokenType.EQ)) {
checkForInvalidAssignment2(node.leftHandSide, node.rightHandSide);
} else {
@@ -9816,14 +9828,14 @@
ClassElement outerClass = _enclosingClass;
try {
_enclosingClass = node.element;
- WithClause withClause2 = node.withClause;
- ImplementsClause implementsClause2 = node.implementsClause;
- ExtendsClause extendsClause2 = node.extendsClause;
+ WithClause withClause = node.withClause;
+ ImplementsClause implementsClause = node.implementsClause;
+ ExtendsClause extendsClause = node.extendsClause;
checkForBuiltInIdentifierAsName(node.name, CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE_NAME);
checkForMemberWithClassName();
- checkForAllMixinErrorCodes(withClause2);
- if (implementsClause2 != null || extendsClause2 != null) {
- if (!checkForImplementsDisallowedClass(implementsClause2) && !checkForExtendsDisallowedClass(extendsClause2)) {
+ checkForAllMixinErrorCodes(withClause);
+ if (implementsClause != null || extendsClause != null) {
+ if (!checkForImplementsDisallowedClass(implementsClause) && !checkForExtendsDisallowedClass(extendsClause)) {
checkForNonAbstractClassInheritsAbstractMember(node);
checkForInconsistentMethodInheritance();
checkForRecursiveInterfaceInheritance(_enclosingClass, new List<ClassElement>());
@@ -9932,12 +9944,12 @@
if (node.isSetter() || node.isGetter()) {
checkForMismatchedAccessorTypes(node, methoName);
if (node.isSetter()) {
- FunctionExpression functionExpression2 = node.functionExpression;
- if (functionExpression2 != null) {
- checkForWrongNumberOfParametersForSetter(node.name, functionExpression2.parameters);
+ FunctionExpression functionExpression = node.functionExpression;
+ if (functionExpression != null) {
+ checkForWrongNumberOfParametersForSetter(node.name, functionExpression.parameters);
}
- TypeName returnType2 = node.returnType;
- checkForNonVoidReturnTypeForSetter(returnType2);
+ TypeName returnType = node.returnType;
+ checkForNonVoidReturnTypeForSetter(returnType);
}
}
return super.visitFunctionDeclaration(node);
@@ -9973,11 +9985,11 @@
return super.visitIndexExpression(node);
}
Object visitInstanceCreationExpression(InstanceCreationExpression node) {
- ConstructorName constructorName2 = node.constructorName;
- TypeName typeName = constructorName2.type;
- Type2 type2 = typeName.type;
- if (type2 is InterfaceType) {
- InterfaceType interfaceType = type2 as InterfaceType;
+ ConstructorName constructorName = node.constructorName;
+ TypeName typeName = constructorName.type;
+ Type2 type = typeName.type;
+ if (type is InterfaceType) {
+ InterfaceType interfaceType = type as InterfaceType;
checkForConstOrNewWithAbstractClass(node, typeName, interfaceType);
if (node.isConst()) {
checkForConstWithNonConst(node);
@@ -9986,30 +9998,30 @@
} else {
checkForNewWithUndefinedConstructor(node);
}
- checkForTypeArgumentNotMatchingBounds(node, constructorName2.element, typeName);
+ checkForTypeArgumentNotMatchingBounds(node, constructorName.element, typeName);
}
return super.visitInstanceCreationExpression(node);
}
Object visitListLiteral(ListLiteral node) {
if (node.modifier != null) {
- TypeArgumentList typeArguments2 = node.typeArguments;
- if (typeArguments2 != null) {
- NodeList<TypeName> arguments2 = typeArguments2.arguments;
- if (arguments2.length != 0) {
- checkForInvalidTypeArgumentInConstTypedLiteral(arguments2, CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_LIST);
+ TypeArgumentList typeArguments = node.typeArguments;
+ if (typeArguments != null) {
+ NodeList<TypeName> arguments = typeArguments.arguments;
+ if (arguments.length != 0) {
+ checkForInvalidTypeArgumentInConstTypedLiteral(arguments, CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_LIST);
}
}
}
return super.visitListLiteral(node);
}
Object visitMapLiteral(MapLiteral node) {
- TypeArgumentList typeArguments2 = node.typeArguments;
- if (typeArguments2 != null) {
- NodeList<TypeName> arguments2 = typeArguments2.arguments;
- if (arguments2.length != 0) {
- checkForInvalidTypeArgumentForKey(arguments2);
+ TypeArgumentList typeArguments = node.typeArguments;
+ if (typeArguments != null) {
+ NodeList<TypeName> arguments = typeArguments.arguments;
+ if (arguments.length != 0) {
+ checkForInvalidTypeArgumentForKey(arguments);
if (node.modifier != null) {
- checkForInvalidTypeArgumentInConstTypedLiteral(arguments2, CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_MAP);
+ checkForInvalidTypeArgumentInConstTypedLiteral(arguments, CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_MAP);
}
}
}
@@ -10134,14 +10146,14 @@
Expression initializerNode = node.initializer;
checkForInvalidAssignment2(nameNode, initializerNode);
nameNode.accept(this);
- String name2 = nameNode.name;
- javaSetAdd(_namesForReferenceToDeclaredVariableInInitializer, name2);
+ String name = nameNode.name;
+ javaSetAdd(_namesForReferenceToDeclaredVariableInInitializer, name);
try {
if (initializerNode != null) {
initializerNode.accept(this);
}
} finally {
- _namesForReferenceToDeclaredVariableInInitializer.remove(name2);
+ _namesForReferenceToDeclaredVariableInInitializer.remove(name);
}
return null;
}
@@ -10197,27 +10209,27 @@
}
}
}
- NodeList<ConstructorInitializer> initializers2 = node.initializers;
- for (ConstructorInitializer constructorInitializer in initializers2) {
+ NodeList<ConstructorInitializer> initializers = node.initializers;
+ for (ConstructorInitializer constructorInitializer in initializers) {
if (constructorInitializer is ConstructorFieldInitializer) {
ConstructorFieldInitializer constructorFieldInitializer = constructorInitializer as ConstructorFieldInitializer;
- SimpleIdentifier fieldName2 = constructorFieldInitializer.fieldName;
- Element element2 = fieldName2.element;
- if (element2 is FieldElement) {
- FieldElement fieldElement = element2 as FieldElement;
+ SimpleIdentifier fieldName = constructorFieldInitializer.fieldName;
+ Element element = fieldName.element;
+ if (element is FieldElement) {
+ FieldElement fieldElement = element as FieldElement;
INIT_STATE state = fieldElementsMap[fieldElement];
if (identical(state, INIT_STATE.NOT_INIT)) {
fieldElementsMap[fieldElement] = INIT_STATE.INIT_IN_INITIALIZERS;
} else if (identical(state, INIT_STATE.INIT_IN_DECLARATION)) {
if (fieldElement.isFinal() || fieldElement.isConst()) {
- _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_IN_INITIALIZER_AND_DECLARATION, fieldName2, []);
+ _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_IN_INITIALIZER_AND_DECLARATION, fieldName, []);
foundError = true;
}
} else if (identical(state, INIT_STATE.INIT_IN_FIELD_FORMAL)) {
- _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_IN_PARAMETER_AND_INITIALIZER, fieldName2, []);
+ _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_IN_PARAMETER_AND_INITIALIZER, fieldName, []);
foundError = true;
} else if (identical(state, INIT_STATE.INIT_IN_INITIALIZERS)) {
- _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS, fieldName2, [fieldElement.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS, fieldName, [fieldElement.displayName]);
foundError = true;
}
}
@@ -10514,8 +10526,8 @@
return false;
}
ExportElement exportElement = node.element as ExportElement;
- LibraryElement exportedLibrary2 = exportElement.exportedLibrary;
- if (exportedLibrary2 == null) {
+ LibraryElement exportedLibrary = exportElement.exportedLibrary;
+ if (exportedLibrary == null) {
return false;
}
Namespace namespace = new NamespaceBuilder().createExportNamespace(exportElement);
@@ -10523,7 +10535,7 @@
for (String name in newNames) {
ExportElement prevElement = _exportedNames[name];
if (prevElement != null && prevElement != exportElement) {
- _errorReporter.reportError2(CompileTimeErrorCode.AMBIGUOUS_EXPORT, node, [name, prevElement.exportedLibrary.definingCompilationUnit.displayName, exportedLibrary2.definingCompilationUnit.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.AMBIGUOUS_EXPORT, node, [name, prevElement.exportedLibrary.definingCompilationUnit.displayName, exportedLibrary.definingCompilationUnit.displayName]);
return true;
} else {
_exportedNames[name] = exportElement;
@@ -10539,10 +10551,10 @@
* @see CompileTimeErrorCode#ARGUMENT_DEFINITION_TEST_NON_PARAMETER
*/
bool checkForArgumentDefinitionTestNonParameter(ArgumentDefinitionTest node) {
- SimpleIdentifier identifier2 = node.identifier;
- Element element2 = identifier2.element;
- if (element2 != null && element2 is! ParameterElement) {
- _errorReporter.reportError2(CompileTimeErrorCode.ARGUMENT_DEFINITION_TEST_NON_PARAMETER, identifier2, [identifier2.name]);
+ SimpleIdentifier identifier = node.identifier;
+ Element element = identifier.element;
+ if (element != null && element is! ParameterElement) {
+ _errorReporter.reportError2(CompileTimeErrorCode.ARGUMENT_DEFINITION_TEST_NON_PARAMETER, identifier, [identifier.name]);
return true;
}
return false;
@@ -10575,8 +10587,8 @@
if (argument == null) {
return false;
}
- ParameterElement staticParameterElement2 = argument.staticParameterElement;
- Type2 staticParameterType = staticParameterElement2 == null ? null : staticParameterElement2.type;
+ ParameterElement staticParameterElement = argument.staticParameterElement;
+ Type2 staticParameterType = staticParameterElement == null ? null : staticParameterElement.type;
Type2 staticArgumentType = getStaticType(argument);
if (staticArgumentType == null || staticParameterType == null) {
return false;
@@ -10661,8 +10673,8 @@
* @see CompileTimeErrorCode#BUILT_IN_IDENTIFIER_AS_TYPEDEF_NAME
*/
bool checkForBuiltInIdentifierAsName(SimpleIdentifier identifier, ErrorCode errorCode) {
- sc.Token token2 = identifier.token;
- if (identical(token2.type, sc.TokenType.KEYWORD)) {
+ sc.Token token = identifier.token;
+ if (identical(token.type, sc.TokenType.KEYWORD)) {
_errorReporter.reportError2(errorCode, identifier, [identifier.name]);
return true;
}
@@ -10681,9 +10693,9 @@
Identifier identifier = typeName.name;
if (identifier is SimpleIdentifier) {
SimpleIdentifier simpleIdentifier = identifier as SimpleIdentifier;
- sc.Token token2 = simpleIdentifier.token;
- if (identical(token2.type, sc.TokenType.KEYWORD)) {
- if (((token2 as sc.KeywordToken)).keyword != sc.Keyword.DYNAMIC) {
+ sc.Token token = simpleIdentifier.token;
+ if (identical(token.type, sc.TokenType.KEYWORD)) {
+ if (((token as sc.KeywordToken)).keyword != sc.Keyword.DYNAMIC) {
_errorReporter.reportError2(CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE, identifier, [identifier.name]);
return true;
}
@@ -10701,25 +10713,25 @@
* @see StaticWarningCode#CASE_BLOCK_NOT_TERMINATED
*/
bool checkForCaseBlockNotTerminated(SwitchCase node) {
- NodeList<Statement> statements2 = node.statements;
- if (statements2.isEmpty) {
- ASTNode parent2 = node.parent;
- if (parent2 is SwitchStatement) {
- SwitchStatement switchStatement = parent2 as SwitchStatement;
- NodeList<SwitchMember> members2 = switchStatement.members;
- int index = members2.indexOf(node);
- if (index != -1 && index < members2.length - 1) {
+ NodeList<Statement> statements = node.statements;
+ if (statements.isEmpty) {
+ ASTNode parent = node.parent;
+ if (parent is SwitchStatement) {
+ SwitchStatement switchStatement = parent as SwitchStatement;
+ NodeList<SwitchMember> members = switchStatement.members;
+ int index = members.indexOf(node);
+ if (index != -1 && index < members.length - 1) {
return false;
}
}
} else {
- Statement statement = statements2[statements2.length - 1];
+ Statement statement = statements[statements.length - 1];
if (statement is BreakStatement || statement is ContinueStatement || statement is ReturnStatement) {
return false;
}
if (statement is ExpressionStatement) {
- Expression expression2 = ((statement as ExpressionStatement)).expression;
- if (expression2 is ThrowExpression) {
+ Expression expression = ((statement as ExpressionStatement)).expression;
+ if (expression is ThrowExpression) {
return false;
}
}
@@ -10737,10 +10749,10 @@
*/
bool checkForCaseBlocksNotTerminated(SwitchStatement node) {
bool foundError = false;
- NodeList<SwitchMember> members2 = node.members;
- int lastMember = members2.length - 1;
+ NodeList<SwitchMember> members = node.members;
+ int lastMember = members.length - 1;
for (int i = 0; i < lastMember; i++) {
- SwitchMember member = members2[i];
+ SwitchMember member = members[i];
if (member is SwitchCase) {
foundError = javaBooleanOr(foundError, checkForCaseBlockNotTerminated((member as SwitchCase)));
}
@@ -10756,15 +10768,15 @@
* @see CompileTimeErrorCode#CASE_EXPRESSION_TYPE_IMPLEMENTS_EQUALS
*/
bool checkForCaseExpressionTypeImplementsEquals(SwitchStatement node) {
- Expression expression2 = node.expression;
- Type2 type = getStaticType(expression2);
+ Expression expression = node.expression;
+ Type2 type = getStaticType(expression);
if (type != null && type != _typeProvider.intType && type != _typeProvider.stringType) {
- Element element2 = type.element;
- if (element2 is ClassElement) {
- ClassElement classElement = element2 as ClassElement;
+ Element element = type.element;
+ if (element is ClassElement) {
+ ClassElement classElement = element as ClassElement;
MethodElement method = classElement.lookUpMethod("==", _currentLibrary);
if (method != null && method.enclosingElement.type != _typeProvider.objectType) {
- _errorReporter.reportError2(CompileTimeErrorCode.CASE_EXPRESSION_TYPE_IMPLEMENTS_EQUALS, expression2, [element2.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.CASE_EXPRESSION_TYPE_IMPLEMENTS_EQUALS, expression, [element.displayName]);
return true;
}
}
@@ -10801,34 +10813,34 @@
bool checkForConflictingConstructorNameAndMember(ConstructorDeclaration node) {
ConstructorElement constructorElement = node.element;
SimpleIdentifier constructorName = node.name;
- String name2 = constructorElement.name;
+ String name = constructorElement.name;
ClassElement classElement = constructorElement.enclosingElement;
- List<ConstructorElement> constructors2 = classElement.constructors;
- for (ConstructorElement otherConstructor in constructors2) {
+ List<ConstructorElement> constructors = classElement.constructors;
+ for (ConstructorElement otherConstructor in constructors) {
if (identical(otherConstructor, constructorElement)) {
continue;
}
- if (name2 == otherConstructor.name) {
- if (name2 == null || name2.length == 0) {
+ if (name == otherConstructor.name) {
+ if (name == null || name.length == 0) {
_errorReporter.reportError2(CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_DEFAULT, node, []);
} else {
- _errorReporter.reportError2(CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_NAME, node, [name2]);
+ _errorReporter.reportError2(CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_NAME, node, [name]);
}
return true;
}
}
if (constructorName != null && constructorElement != null && !constructorName.isSynthetic()) {
- List<FieldElement> fields2 = classElement.fields;
- for (FieldElement field in fields2) {
- if (field.name == name2) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_FIELD, node, [name2]);
+ List<FieldElement> fields = classElement.fields;
+ for (FieldElement field in fields) {
+ if (field.name == name) {
+ _errorReporter.reportError2(CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_FIELD, node, [name]);
return true;
}
}
- List<MethodElement> methods2 = classElement.methods;
- for (MethodElement method in methods2) {
- if (method.name == name2) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_METHOD, node, [name2]);
+ List<MethodElement> methods = classElement.methods;
+ for (MethodElement method in methods) {
+ if (method.name == name) {
+ _errorReporter.reportError2(CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_METHOD, node, [name]);
return true;
}
}
@@ -10852,18 +10864,18 @@
if (nameNode == null) {
return false;
}
- String name2 = nameNode.name;
+ String name = nameNode.name;
if (_enclosingClass == null) {
return false;
}
InterfaceType enclosingType = _enclosingClass.type;
ExecutableElement superElement;
- superElement = enclosingType.lookUpGetterInSuperclass(name2, _currentLibrary);
+ superElement = enclosingType.lookUpGetterInSuperclass(name, _currentLibrary);
if (superElement == null) {
- superElement = enclosingType.lookUpSetterInSuperclass(name2, _currentLibrary);
+ superElement = enclosingType.lookUpSetterInSuperclass(name, _currentLibrary);
}
if (superElement == null) {
- superElement = enclosingType.lookUpMethodInSuperclass(name2, _currentLibrary);
+ superElement = enclosingType.lookUpMethodInSuperclass(name, _currentLibrary);
}
if (superElement == null) {
return false;
@@ -10896,12 +10908,12 @@
if (nameNode == null) {
return false;
}
- String name2 = nameNode.name;
+ String name = nameNode.name;
if (_enclosingClass == null) {
return false;
}
InterfaceType enclosingType = _enclosingClass.type;
- ExecutableElement setter = enclosingType.lookUpSetter(name2, _currentLibrary);
+ ExecutableElement setter = enclosingType.lookUpSetter(name, _currentLibrary);
if (setter == null) {
return false;
}
@@ -10929,18 +10941,18 @@
if (nameNode == null) {
return false;
}
- String name2 = nameNode.name;
+ String name = nameNode.name;
if (_enclosingClass == null) {
return false;
}
InterfaceType enclosingType = _enclosingClass.type;
ExecutableElement member;
- member = enclosingType.lookUpMethod(name2, _currentLibrary);
+ member = enclosingType.lookUpMethod(name, _currentLibrary);
if (member == null) {
- member = enclosingType.lookUpGetter(name2, _currentLibrary);
+ member = enclosingType.lookUpGetter(name, _currentLibrary);
}
if (member == null) {
- member = enclosingType.lookUpSetter(name2, _currentLibrary);
+ member = enclosingType.lookUpSetter(name, _currentLibrary);
}
if (member == null) {
return false;
@@ -11015,8 +11027,8 @@
*/
bool checkForConstOrNewWithAbstractClass(InstanceCreationExpression node, TypeName typeName, InterfaceType type) {
if (type.element.isAbstract()) {
- ConstructorElement element2 = node.element;
- if (element2 != null && !element2.isFactory()) {
+ ConstructorElement element = node.element;
+ if (element != null && !element.isFactory()) {
if (identical(((node.keyword as sc.KeywordToken)).keyword, sc.Keyword.CONST)) {
_errorReporter.reportError2(StaticWarningCode.CONST_WITH_ABSTRACT_CLASS, typeName, []);
} else {
@@ -11056,11 +11068,11 @@
* @see CompileTimeErrorCode#CONST_WITH_TYPE_PARAMETERS
*/
bool checkForConstWithTypeParameters(InstanceCreationExpression node) {
- ConstructorName constructorName2 = node.constructorName;
- if (constructorName2 == null) {
+ ConstructorName constructorName = node.constructorName;
+ if (constructorName == null) {
return false;
}
- TypeName typeName = constructorName2.type;
+ TypeName typeName = constructorName.type;
return checkForConstWithTypeParameters2(typeName);
}
@@ -11074,17 +11086,17 @@
if (typeName == null) {
return false;
}
- Identifier name2 = typeName.name;
- if (name2 == null) {
+ Identifier name = typeName.name;
+ if (name == null) {
return false;
}
- if (name2.element is TypeVariableElement) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_TYPE_PARAMETERS, name2, []);
+ if (name.element is TypeVariableElement) {
+ _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_TYPE_PARAMETERS, name, []);
}
- TypeArgumentList typeArguments2 = typeName.typeArguments;
- if (typeArguments2 != null) {
+ TypeArgumentList typeArguments = typeName.typeArguments;
+ if (typeArguments != null) {
bool hasError = false;
- for (TypeName argument in typeArguments2.arguments) {
+ for (TypeName argument in typeArguments.arguments) {
hasError = javaBooleanOr(hasError, checkForConstWithTypeParameters2(argument));
}
return hasError;
@@ -11106,20 +11118,20 @@
if (node.element != null) {
return false;
}
- ConstructorName constructorName2 = node.constructorName;
- if (constructorName2 == null) {
+ ConstructorName constructorName = node.constructorName;
+ if (constructorName == null) {
return false;
}
- TypeName type2 = constructorName2.type;
- if (type2 == null) {
+ TypeName type = constructorName.type;
+ if (type == null) {
return false;
}
- Identifier className = type2.name;
- SimpleIdentifier name2 = constructorName2.name;
- if (name2 != null) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR, name2, [className, name2]);
+ Identifier className = type.name;
+ SimpleIdentifier name = constructorName.name;
+ if (name != null) {
+ _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR, name, [className, name]);
} else {
- _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, constructorName2, [className]);
+ _errorReporter.reportError2(CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, constructorName, [className]);
}
return true;
}
@@ -11133,8 +11145,8 @@
bool checkForDefaultValueInFunctionTypeAlias(FunctionTypeAlias node) {
bool result = false;
FormalParameterList formalParameterList = node.parameters;
- NodeList<FormalParameter> parameters2 = formalParameterList.parameters;
- for (FormalParameter formalParameter in parameters2) {
+ NodeList<FormalParameter> parameters = formalParameterList.parameters;
+ for (FormalParameter formalParameter in parameters) {
if (formalParameter is DefaultFormalParameter) {
DefaultFormalParameter defaultFormalParameter = formalParameter as DefaultFormalParameter;
if (defaultFormalParameter.defaultValue != null) {
@@ -11162,15 +11174,15 @@
if (nodeLibrary == null) {
return false;
}
- String name2 = nodeLibrary.name;
- LibraryElement prevLibrary = _nameToExportElement[name2];
+ String name = nodeLibrary.name;
+ LibraryElement prevLibrary = _nameToExportElement[name];
if (prevLibrary != null) {
if (prevLibrary != nodeLibrary) {
- _errorReporter.reportError2(StaticWarningCode.EXPORT_DUPLICATED_LIBRARY_NAME, node, [prevLibrary.definingCompilationUnit.displayName, nodeLibrary.definingCompilationUnit.displayName, name2]);
+ _errorReporter.reportError2(StaticWarningCode.EXPORT_DUPLICATED_LIBRARY_NAME, node, [prevLibrary.definingCompilationUnit.displayName, nodeLibrary.definingCompilationUnit.displayName, name]);
return true;
}
} else {
- _nameToExportElement[name2] = nodeLibrary;
+ _nameToExportElement[name] = nodeLibrary;
}
return false;
}
@@ -11186,14 +11198,14 @@
if (_isInSystemLibrary) {
return false;
}
- Element element2 = node.element;
- if (element2 is! ExportElement) {
+ Element element = node.element;
+ if (element is! ExportElement) {
return false;
}
- ExportElement exportElement = element2 as ExportElement;
+ ExportElement exportElement = element as ExportElement;
DartSdk sdk = _currentLibrary.context.sourceFactory.dartSdk;
- String uri2 = exportElement.uri;
- SdkLibrary sdkLibrary = sdk.getSdkLibrary(uri2);
+ String uri = exportElement.uri;
+ SdkLibrary sdkLibrary = sdk.getSdkLibrary(uri);
if (sdkLibrary == null) {
return false;
}
@@ -11266,11 +11278,11 @@
}
FieldElement fieldElement = fieldNameElement as FieldElement;
Type2 fieldType = fieldElement.type;
- Expression expression2 = node.expression;
- if (expression2 == null) {
+ Expression expression = node.expression;
+ if (expression == null) {
return false;
}
- Type2 staticType = getStaticType(expression2);
+ Type2 staticType = getStaticType(expression);
if (staticType == null) {
return false;
}
@@ -11278,20 +11290,20 @@
return false;
} else if (_strictMode) {
if (_isEnclosingConstructorConst) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONST_FIELD_INITIALIZER_NOT_ASSIGNABLE, expression2, [staticType.displayName, fieldType.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.CONST_FIELD_INITIALIZER_NOT_ASSIGNABLE, expression, [staticType.displayName, fieldType.displayName]);
} else {
- _errorReporter.reportError2(StaticWarningCode.FIELD_INITIALIZER_NOT_ASSIGNABLE, expression2, [staticType.displayName, fieldType.displayName]);
+ _errorReporter.reportError2(StaticWarningCode.FIELD_INITIALIZER_NOT_ASSIGNABLE, expression, [staticType.displayName, fieldType.displayName]);
}
return true;
}
- Type2 propagatedType = getPropagatedType(expression2);
+ Type2 propagatedType = getPropagatedType(expression);
if (propagatedType != null && propagatedType.isAssignableTo(fieldType)) {
return false;
}
if (_isEnclosingConstructorConst) {
- _errorReporter.reportError2(CompileTimeErrorCode.CONST_FIELD_INITIALIZER_NOT_ASSIGNABLE, expression2, [(propagatedType == null ? staticType : propagatedType).displayName, fieldType.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.CONST_FIELD_INITIALIZER_NOT_ASSIGNABLE, expression, [(propagatedType == null ? staticType : propagatedType).displayName, fieldType.displayName]);
} else {
- _errorReporter.reportError2(StaticWarningCode.FIELD_INITIALIZER_NOT_ASSIGNABLE, expression2, [(propagatedType == null ? staticType : propagatedType).displayName, fieldType.displayName]);
+ _errorReporter.reportError2(StaticWarningCode.FIELD_INITIALIZER_NOT_ASSIGNABLE, expression, [(propagatedType == null ? staticType : propagatedType).displayName, fieldType.displayName]);
}
return true;
}
@@ -11356,8 +11368,8 @@
bool checkForFinalNotInitialized2(VariableDeclarationList node) {
bool foundError = false;
if (!node.isSynthetic() && (node.isConst() || node.isFinal())) {
- NodeList<VariableDeclaration> variables2 = node.variables;
- for (VariableDeclaration variable in variables2) {
+ NodeList<VariableDeclaration> variables = node.variables;
+ for (VariableDeclaration variable in variables) {
if (variable.initializer == null) {
_errorReporter.reportError2(StaticWarningCode.FINAL_NOT_INITIALIZED, variable, [variable.name.name]);
foundError = true;
@@ -11396,34 +11408,34 @@
if (!_isInConstructorInitializer) {
return false;
}
- Element element2 = node.element;
- if (!(element2 is MethodElement || element2 is PropertyAccessorElement)) {
+ Element element = node.element;
+ if (!(element is MethodElement || element is PropertyAccessorElement)) {
return false;
}
- ExecutableElement executableElement = element2 as ExecutableElement;
+ ExecutableElement executableElement = element as ExecutableElement;
if (executableElement.isStatic()) {
return false;
}
- Element enclosingElement2 = element2.enclosingElement;
- if (enclosingElement2 is! ClassElement) {
+ Element enclosingElement = element.enclosingElement;
+ if (enclosingElement is! ClassElement) {
return false;
}
- ASTNode parent2 = node.parent;
- if (parent2 is MethodInvocation) {
- MethodInvocation invocation = parent2 as MethodInvocation;
+ ASTNode parent = node.parent;
+ if (parent is MethodInvocation) {
+ MethodInvocation invocation = parent as MethodInvocation;
if (identical(invocation.methodName, node) && invocation.realTarget != null) {
return false;
}
}
{
- if (parent2 is PropertyAccess) {
- PropertyAccess access = parent2 as PropertyAccess;
+ if (parent is PropertyAccess) {
+ PropertyAccess access = parent as PropertyAccess;
if (identical(access.propertyName, node) && access.realTarget != null) {
return false;
}
}
- if (parent2 is PrefixedIdentifier) {
- PrefixedIdentifier prefixed = parent2 as PrefixedIdentifier;
+ if (parent is PrefixedIdentifier) {
+ PrefixedIdentifier prefixed = parent as PrefixedIdentifier;
if (identical(prefixed.identifier, node)) {
return false;
}
@@ -11449,15 +11461,15 @@
if (nodeLibrary == null) {
return false;
}
- String name2 = nodeLibrary.name;
- LibraryElement prevLibrary = _nameToImportElement[name2];
+ String name = nodeLibrary.name;
+ LibraryElement prevLibrary = _nameToImportElement[name];
if (prevLibrary != null) {
if (prevLibrary != nodeLibrary) {
- _errorReporter.reportError2(StaticWarningCode.IMPORT_DUPLICATED_LIBRARY_NAME, node, [prevLibrary.definingCompilationUnit.displayName, nodeLibrary.definingCompilationUnit.displayName, name2]);
+ _errorReporter.reportError2(StaticWarningCode.IMPORT_DUPLICATED_LIBRARY_NAME, node, [prevLibrary.definingCompilationUnit.displayName, nodeLibrary.definingCompilationUnit.displayName, name]);
return true;
}
} else {
- _nameToImportElement[name2] = nodeLibrary;
+ _nameToImportElement[name] = nodeLibrary;
}
return false;
}
@@ -11473,14 +11485,14 @@
if (_isInSystemLibrary) {
return false;
}
- Element element2 = node.element;
- if (element2 is! ImportElement) {
+ Element element = node.element;
+ if (element is! ImportElement) {
return false;
}
- ImportElement importElement = element2 as ImportElement;
+ ImportElement importElement = element as ImportElement;
DartSdk sdk = _currentLibrary.context.sourceFactory.dartSdk;
- String uri2 = importElement.uri;
- SdkLibrary sdkLibrary = sdk.getSdkLibrary(uri2);
+ String uri = importElement.uri;
+ SdkLibrary sdkLibrary = sdk.getSdkLibrary(uri);
if (sdkLibrary == null) {
return false;
}
@@ -11504,13 +11516,13 @@
for (SwitchMember switchMember in switchMembers) {
if (switchMember is SwitchCase) {
SwitchCase switchCase = switchMember as SwitchCase;
- Expression expression2 = switchCase.expression;
+ Expression expression = switchCase.expression;
if (firstType == null) {
- firstType = getBestType(expression2);
+ firstType = getBestType(expression);
} else {
- Type2 nType = getBestType(expression2);
+ Type2 nType = getBestType(expression);
if (firstType != nType) {
- _errorReporter.reportError2(CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES, expression2, [expression2.toSource(), firstType.displayName]);
+ _errorReporter.reportError2(CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES, expression, [expression.toSource(), firstType.displayName]);
foundError = true;
}
}
@@ -11794,20 +11806,20 @@
if (node.element != null) {
return false;
}
- ConstructorName constructorName2 = node.constructorName;
- if (constructorName2 == null) {
+ ConstructorName constructorName = node.constructorName;
+ if (constructorName == null) {
return false;
}
- TypeName type2 = constructorName2.type;
- if (type2 == null) {
+ TypeName type = constructorName.type;
+ if (type == null) {
return false;
}
- Identifier className = type2.name;
- SimpleIdentifier name2 = constructorName2.name;
- if (name2 != null) {
- _errorReporter.reportError2(StaticWarningCode.NEW_WITH_UNDEFINED_CONSTRUCTOR, name2, [className, name2]);
+ Identifier className = type.name;
+ SimpleIdentifier name = constructorName.name;
+ if (name != null) {
+ _errorReporter.reportError2(StaticWarningCode.NEW_WITH_UNDEFINED_CONSTRUCTOR, name, [className, name]);
} else {
- _errorReporter.reportError2(StaticWarningCode.NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, constructorName2, [className]);
+ _errorReporter.reportError2(StaticWarningCode.NEW_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT, constructorName, [className]);
}
return true;
}
@@ -11830,12 +11842,12 @@
Set<ExecutableElement> missingOverrides = new Set<ExecutableElement>();
Set<String> methodsInEnclosingClass = new Set<String>();
Set<String> accessorsInEnclosingClass = new Set<String>();
- List<MethodElement> methods2 = _enclosingClass.methods;
- for (MethodElement method in methods2) {
+ List<MethodElement> methods = _enclosingClass.methods;
+ for (MethodElement method in methods) {
javaSetAdd(methodsInEnclosingClass, method.name);
}
- List<PropertyAccessorElement> accessors2 = _enclosingClass.accessors;
- for (PropertyAccessorElement accessor in accessors2) {
+ List<PropertyAccessorElement> accessors = _enclosingClass.accessors;
+ for (PropertyAccessorElement accessor in accessors) {
javaSetAdd(accessorsInEnclosingClass, accessor.name);
}
Map<String, ExecutableElement> membersInheritedFromSuperclasses = _inheritanceManager.getMapOfMembersInheritedFromClasses(_enclosingClass);
@@ -11987,14 +11999,14 @@
* @see StaticWarningCode#NON_VOID_RETURN_FOR_OPERATOR
*/
bool checkForNonVoidReturnTypeForOperator(MethodDeclaration node) {
- SimpleIdentifier name2 = node.name;
- if (name2.name != "[]=") {
+ SimpleIdentifier name = node.name;
+ if (name.name != "[]=") {
return false;
}
TypeName typeName = node.returnType;
if (typeName != null) {
- Type2 type2 = typeName.type;
- if (type2 != null && !type2.isVoid()) {
+ Type2 type = typeName.type;
+ if (type != null && !type.isVoid()) {
_errorReporter.reportError2(StaticWarningCode.NON_VOID_RETURN_FOR_OPERATOR, typeName, []);
}
}
@@ -12009,8 +12021,8 @@
*/
bool checkForNonVoidReturnTypeForSetter(TypeName typeName) {
if (typeName != null) {
- Type2 type2 = typeName.type;
- if (type2 != null && !type2.isVoid()) {
+ Type2 type = typeName.type;
+ if (type != null && !type.isVoid()) {
_errorReporter.reportError2(StaticWarningCode.NON_VOID_RETURN_FOR_SETTER, typeName, []);
}
}
@@ -12049,10 +12061,10 @@
* @see CompileTimeErrorCode#PRIVATE_OPTIONAL_PARAMETER
*/
bool checkForPrivateOptionalParameter(DefaultFormalParameter node) {
- sc.Token separator2 = node.separator;
- if (separator2 != null && separator2.lexeme == ":") {
- NormalFormalParameter parameter2 = node.parameter;
- SimpleIdentifier name = parameter2.identifier;
+ sc.Token separator = node.separator;
+ if (separator != null && separator.lexeme == ":") {
+ NormalFormalParameter parameter = node.parameter;
+ SimpleIdentifier name = parameter.identifier;
if (!name.isSynthetic() && name.name.startsWith("_")) {
_errorReporter.reportError2(CompileTimeErrorCode.PRIVATE_OPTIONAL_PARAMETER, node, []);
return true;
@@ -12074,8 +12086,8 @@
}
for (ConstructorInitializer initializer in node.initializers) {
if (initializer is RedirectingConstructorInvocation) {
- ConstructorElement element2 = node.element;
- if (!hasRedirectingFactoryConstructorCycle(element2)) {
+ ConstructorElement element = node.element;
+ if (!hasRedirectingFactoryConstructorCycle(element)) {
return false;
}
_errorReporter.reportError2(CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT, initializer, []);
@@ -12097,8 +12109,8 @@
if (redirectedConstructorNode == null) {
return false;
}
- ConstructorElement element2 = node.element;
- if (!hasRedirectingFactoryConstructorCycle(element2)) {
+ ConstructorElement element = node.element;
+ if (!hasRedirectingFactoryConstructorCycle(element)) {
return false;
}
_errorReporter.reportError2(CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT, redirectedConstructorNode, []);
@@ -12118,7 +12130,7 @@
if (classElt == null) {
return false;
}
- InterfaceType supertype2 = classElt.supertype;
+ InterfaceType supertype = classElt.supertype;
list.add(classElt);
if (list.length != 1 && _enclosingClass == classElt) {
String enclosingClassName = _enclosingClass.displayName;
@@ -12135,7 +12147,7 @@
_errorReporter.reportError3(CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE, _enclosingClass.nameOffset, enclosingClassName.length, [enclosingClassName, builder.toString()]);
return true;
} else if (list.length == 2) {
- ErrorCode errorCode = supertype2 != null && _enclosingClass == supertype2.element ? CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_EXTENDS : CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_IMPLEMENTS;
+ ErrorCode errorCode = supertype != null && _enclosingClass == supertype.element ? CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_EXTENDS : CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_IMPLEMENTS;
_errorReporter.reportError3(errorCode, _enclosingClass.nameOffset, enclosingClassName.length, [enclosingClassName]);
return true;
}
@@ -12148,9 +12160,9 @@
}
List<ClassElement> interfaceElements;
List<InterfaceType> interfaceTypes = classElt.interfaces;
- if (supertype2 != null && !supertype2.isObject()) {
+ if (supertype != null && !supertype.isObject()) {
interfaceElements = new List<ClassElement>(interfaceTypes.length + 1);
- interfaceElements[0] = supertype2.element;
+ interfaceElements[0] = supertype.element;
for (int i = 0; i < interfaceTypes.length; i++) {
interfaceElements[i + 1] = interfaceTypes[i].element;
}
@@ -12217,18 +12229,18 @@
if (redirectedConstructorNode == null) {
return false;
}
- ConstructorElement element2 = node.element;
- if (element2 == null) {
+ ConstructorElement element = node.element;
+ if (element == null) {
return false;
}
- if (!element2.isConst()) {
+ if (!element.isConst()) {
return false;
}
- ConstructorElement redirectedConstructor2 = element2.redirectedConstructor;
- if (redirectedConstructor2 == null) {
+ ConstructorElement redirectedConstructor = element.redirectedConstructor;
+ if (redirectedConstructor == null) {
return false;
}
- if (redirectedConstructor2.isConst()) {
+ if (redirectedConstructor.isConst()) {
return false;
}
_errorReporter.reportError2(CompileTimeErrorCode.REDIRECT_TO_NON_CONST_CONSTRUCTOR, redirectedConstructorNode, []);
@@ -12243,42 +12255,42 @@
* @see CompileTimeErrorCode#REFERENCE_TO_DECLARED_VARIABLE_IN_INITIALIZER
*/
bool checkForReferenceToDeclaredVariableInInitializer(SimpleIdentifier node) {
- ASTNode parent2 = node.parent;
- if (parent2 is PrefixedIdentifier) {
- PrefixedIdentifier prefixedIdentifier = parent2 as PrefixedIdentifier;
+ ASTNode parent = node.parent;
+ if (parent is PrefixedIdentifier) {
+ PrefixedIdentifier prefixedIdentifier = parent as PrefixedIdentifier;
if (identical(prefixedIdentifier.identifier, node)) {
return false;
}
}
- if (parent2 is PropertyAccess) {
- PropertyAccess propertyAccess = parent2 as PropertyAccess;
+ if (parent is PropertyAccess) {
+ PropertyAccess propertyAccess = parent as PropertyAccess;
if (identical(propertyAccess.propertyName, node)) {
return false;
}
}
- if (parent2 is MethodInvocation) {
- MethodInvocation methodInvocation = parent2 as MethodInvocation;
+ if (parent is MethodInvocation) {
+ MethodInvocation methodInvocation = parent as MethodInvocation;
if (methodInvocation.target != null && identical(methodInvocation.methodName, node)) {
return false;
}
}
- if (parent2 is ConstructorName) {
- ConstructorName constructorName = parent2 as ConstructorName;
+ if (parent is ConstructorName) {
+ ConstructorName constructorName = parent as ConstructorName;
if (identical(constructorName.name, node)) {
return false;
}
}
- if (parent2 is Label) {
- Label label = parent2 as Label;
+ if (parent is Label) {
+ Label label = parent as Label;
if (identical(label.label, node)) {
return false;
}
}
- String name2 = node.name;
- if (!_namesForReferenceToDeclaredVariableInInitializer.contains(name2)) {
+ String name = node.name;
+ if (!_namesForReferenceToDeclaredVariableInInitializer.contains(name)) {
return false;
}
- _errorReporter.reportError2(CompileTimeErrorCode.REFERENCE_TO_DECLARED_VARIABLE_IN_INITIALIZER, node, [name2]);
+ _errorReporter.reportError2(CompileTimeErrorCode.REFERENCE_TO_DECLARED_VARIABLE_IN_INITIALIZER, node, [name]);
return true;
}
@@ -12305,11 +12317,11 @@
* @see StaticWarningCode#STATIC_ACCESS_TO_INSTANCE_MEMBER
*/
bool checkForStaticAccessToInstanceMember(Expression target, SimpleIdentifier name2) {
- Element element2 = name2.element;
- if (element2 is! ExecutableElement) {
+ Element element = name2.element;
+ if (element is! ExecutableElement) {
return false;
}
- ExecutableElement memberElement = element2 as ExecutableElement;
+ ExecutableElement memberElement = element as ExecutableElement;
if (memberElement.isStatic()) {
return false;
}
@@ -12328,13 +12340,13 @@
* @see StaticWarningCode#SWITCH_EXPRESSION_NOT_ASSIGNABLE
*/
bool checkForSwitchExpressionNotAssignable(SwitchStatement node) {
- Expression expression2 = node.expression;
- Type2 expressionType = getStaticType(expression2);
+ Expression expression = node.expression;
+ Type2 expressionType = getStaticType(expression);
if (expressionType == null) {
return false;
}
- NodeList<SwitchMember> members2 = node.members;
- for (SwitchMember switchMember in members2) {
+ NodeList<SwitchMember> members = node.members;
+ for (SwitchMember switchMember in members) {
if (switchMember is! SwitchCase) {
continue;
}
@@ -12344,7 +12356,7 @@
if (expressionType.isAssignableTo(caseType)) {
return false;
}
- _errorReporter.reportError2(StaticWarningCode.SWITCH_EXPRESSION_NOT_ASSIGNABLE, expression2, [expressionType, caseType]);
+ _errorReporter.reportError2(StaticWarningCode.SWITCH_EXPRESSION_NOT_ASSIGNABLE, expression, [expressionType, caseType]);
return true;
}
return false;
@@ -12437,20 +12449,20 @@
if (nameNode == null) {
return false;
}
- String name2 = nameNode.name;
+ String name = nameNode.name;
int expected = -1;
- if ("[]=" == name2) {
+ if ("[]=" == name) {
expected = 2;
- } else if ("<" == name2 || ">" == name2 || "<=" == name2 || ">=" == name2 || "==" == name2 || "+" == name2 || "/" == name2 || "~/" == name2 || "*" == name2 || "%" == name2 || "|" == name2 || "^" == name2 || "&" == name2 || "<<" == name2 || ">>" == name2 || "[]" == name2) {
+ } else if ("<" == name || ">" == name || "<=" == name || ">=" == name || "==" == name || "+" == name || "/" == name || "~/" == name || "*" == name || "%" == name || "|" == name || "^" == name || "&" == name || "<<" == name || ">>" == name || "[]" == name) {
expected = 1;
- } else if ("~" == name2) {
+ } else if ("~" == name) {
expected = 0;
}
if (expected != -1 && numParameters != expected) {
- _errorReporter.reportError2(CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_OPERATOR, nameNode, [name2, expected, numParameters]);
+ _errorReporter.reportError2(CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_OPERATOR, nameNode, [name, expected, numParameters]);
return true;
}
- if ("-" == name2 && numParameters > 1) {
+ if ("-" == name && numParameters > 1) {
_errorReporter.reportError2(CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_OPERATOR_MINUS, nameNode, [numParameters]);
return true;
}
@@ -12550,9 +12562,9 @@
*/
VariableElement getVariableElement(Expression expression) {
if (expression is Identifier) {
- Element element2 = ((expression as Identifier)).element;
- if (element2 is VariableElement) {
- return element2 as VariableElement;
+ Element element = ((expression as Identifier)).element;
+ if (element is VariableElement) {
+ return element as VariableElement;
}
}
return null;
@@ -12703,13 +12715,13 @@
String getSourceFullName(ASTNode node) {
CompilationUnit unit = node.getAncestor(CompilationUnit);
if (unit != null) {
- CompilationUnitElement element2 = unit.element;
- if (element2 != null) {
- Source librarySource = element2.source;
+ CompilationUnitElement element = unit.element;
+ if (element != null) {
+ Source librarySource = element.source;
if (librarySource != null) {
- String fullName2 = librarySource.fullName;
- if (fullName2 != null) {
- return fullName2.replaceAll(r'\', '/');
+ String fullName = librarySource.fullName;
+ if (fullName != null) {
+ return fullName.replaceAll(r'\', '/');
}
}
}
diff --git a/pkg/analyzer_experimental/lib/src/generated/scanner.dart b/pkg/analyzer_experimental/lib/src/generated/scanner.dart
index 091e88c..7c3c523 100644
--- a/pkg/analyzer_experimental/lib/src/generated/scanner.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/scanner.dart
@@ -76,10 +76,10 @@
* @return the state that was created
*/
static KeywordState createKeywordStateTable() {
- List<Keyword> values2 = Keyword.values;
- List<String> strings = new List<String>(values2.length);
- for (int i = 0; i < values2.length; i++) {
- strings[i] = values2[i].syntax;
+ List<Keyword> values = Keyword.values;
+ List<String> strings = new List<String>(values.length);
+ for (int i = 0; i < values.length; i++) {
+ strings[i] = values[i].syntax;
}
strings.sort();
return computeKeywordStateTable(0, strings, 0, strings.length);
diff --git a/pkg/analyzer_experimental/lib/src/generated/sdk_io.dart b/pkg/analyzer_experimental/lib/src/generated/sdk_io.dart
index e289af5..2348b7f 100644
--- a/pkg/analyzer_experimental/lib/src/generated/sdk_io.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/sdk_io.dart
@@ -173,9 +173,9 @@
initializeLibraryMap();
_analysisContext = new AnalysisContextImpl();
_analysisContext.sourceFactory = new SourceFactory.con2([new DartUriResolver(this)]);
- List<String> uris2 = uris;
+ List<String> uris = this.uris;
ChangeSet changeSet = new ChangeSet();
- for (String uri in uris2) {
+ for (String uri in uris) {
changeSet.added(_analysisContext.sourceFactory.forUri(uri));
}
_analysisContext.applyChanges(changeSet);
@@ -457,29 +457,29 @@
LibraryMap get librariesMap => _librariesMap;
Object visitMapLiteralEntry(MapLiteralEntry node) {
String libraryName = null;
- Expression key2 = node.key;
- if (key2 is SimpleStringLiteral) {
- libraryName = "${_LIBRARY_PREFIX}${((key2 as SimpleStringLiteral)).value}";
+ Expression key = node.key;
+ if (key is SimpleStringLiteral) {
+ libraryName = "${_LIBRARY_PREFIX}${((key as SimpleStringLiteral)).value}";
}
- Expression value2 = node.value;
- if (value2 is InstanceCreationExpression) {
+ Expression value = node.value;
+ if (value is InstanceCreationExpression) {
SdkLibraryImpl library = new SdkLibraryImpl(libraryName);
- List<Expression> arguments2 = ((value2 as InstanceCreationExpression)).argumentList.arguments;
- for (Expression argument in arguments2) {
+ List<Expression> arguments = ((value as InstanceCreationExpression)).argumentList.arguments;
+ for (Expression argument in arguments) {
if (argument is SimpleStringLiteral) {
library.path = ((argument as SimpleStringLiteral)).value;
} else if (argument is NamedExpression) {
- String name2 = ((argument as NamedExpression)).name.label.name;
- Expression expression2 = ((argument as NamedExpression)).expression;
- if (name2 == _CATEGORY) {
- library.category = ((expression2 as SimpleStringLiteral)).value;
- } else if (name2 == _IMPLEMENTATION) {
- library.implementation = ((expression2 as BooleanLiteral)).value;
- } else if (name2 == _DOCUMENTED) {
- library.documented = ((expression2 as BooleanLiteral)).value;
- } else if (name2 == _PLATFORMS) {
- if (expression2 is SimpleIdentifier) {
- String identifier = ((expression2 as SimpleIdentifier)).name;
+ String name = ((argument as NamedExpression)).name.label.name;
+ Expression expression = ((argument as NamedExpression)).expression;
+ if (name == _CATEGORY) {
+ library.category = ((expression as SimpleStringLiteral)).value;
+ } else if (name == _IMPLEMENTATION) {
+ library.implementation = ((expression as BooleanLiteral)).value;
+ } else if (name == _DOCUMENTED) {
+ library.documented = ((expression as BooleanLiteral)).value;
+ } else if (name == _PLATFORMS) {
+ if (expression is SimpleIdentifier) {
+ String identifier = ((expression as SimpleIdentifier)).name;
if (identifier == _VM_PLATFORM) {
library.setVmLibrary();
} else {
diff --git a/pkg/analyzer_experimental/lib/src/generated/source_io.dart b/pkg/analyzer_experimental/lib/src/generated/source_io.dart
index e473fc9..98d8fc0 100644
--- a/pkg/analyzer_experimental/lib/src/generated/source_io.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/source_io.dart
@@ -165,27 +165,27 @@
if (!isPackageUri(uri)) {
return null;
}
- String path2 = uri.path;
- if (path2 == null) {
- path2 = uri.path;
- if (path2 == null) {
+ String path = uri.path;
+ if (path == null) {
+ path = uri.path;
+ if (path == null) {
return null;
}
}
String pkgName;
String relPath;
- int index = path2.indexOf('/');
+ int index = path.indexOf('/');
if (index == -1) {
- pkgName = path2;
+ pkgName = path;
relPath = "";
} else if (index == 0) {
return null;
} else {
- pkgName = path2.substring(0, index);
- relPath = path2.substring(index + 1);
+ pkgName = path.substring(0, index);
+ relPath = path.substring(index + 1);
}
for (JavaFile packagesDirectory in _packagesDirectories) {
- JavaFile resolvedFile = new JavaFile.relative(packagesDirectory, path2);
+ JavaFile resolvedFile = new JavaFile.relative(packagesDirectory, path);
if (resolvedFile.exists()) {
return new FileBasedSource.con2(contentCache, getCanonicalFile(packagesDirectory, pkgName, relPath), UriKind.PACKAGE_URI);
}
diff --git a/pkg/analyzer_experimental/lib/src/services/formatter.dart b/pkg/analyzer_experimental/lib/src/services/formatter.dart
new file mode 100644
index 0000000..51141dd
--- /dev/null
+++ b/pkg/analyzer_experimental/lib/src/services/formatter.dart
@@ -0,0 +1,10 @@
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+library formatter;
+
+import 'package:analyzer_experimental/src/services/formatter_impl.dart';
+
+//export 'package:analyzer_experimental/src/services/formatter_impl.dart'
+// show CodeFormatter;
\ No newline at end of file
diff --git a/pkg/analyzer_experimental/lib/src/services/formatter_impl.dart b/pkg/analyzer_experimental/lib/src/services/formatter_impl.dart
new file mode 100644
index 0000000..72288144
--- /dev/null
+++ b/pkg/analyzer_experimental/lib/src/services/formatter_impl.dart
@@ -0,0 +1,274 @@
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+library formatter_impl;
+
+
+import 'dart:io';
+
+import 'package:analyzer_experimental/analyzer.dart';
+import 'package:analyzer_experimental/src/generated/parser.dart';
+import 'package:analyzer_experimental/src/generated/scanner.dart';
+import 'package:analyzer_experimental/src/generated/source.dart';
+
+
+/// OS line separator. --- TODO(pquitslund): may not be necessary
+const NEW_LINE = '\n' ; //Platform.pathSeparator;
+
+/// Formatter options.
+class FormatterOptions {
+
+ /// Create formatter options with defaults derived (where defined) from
+ /// the style guide: <http://www.dartlang.org/articles/style-guide/>.
+ const FormatterOptions({this.initialIndentationLevel: 0,
+ this.indentPerLevel: 2,
+ this.lineSeparator: NEW_LINE,
+ this.pageWidth: 80,
+ this.tabSize: 2});
+
+ final String lineSeparator;
+ final int initialIndentationLevel;
+ final int indentPerLevel;
+ final int tabSize;
+ final int pageWidth;
+}
+
+
+/// Thrown when an error occurs in formatting.
+class FormatterException implements Exception {
+
+ /// A message describing the error.
+ final message;
+
+ /// Creates a new FormatterException with an optional error [message].
+ const FormatterException([this.message = '']);
+
+ FormatterException.forError(List<AnalysisError> errors) :
+ // TODO(pquitslund): add descriptive message based on errors
+ message = 'an analysis error occured during format';
+
+ String toString() => 'FormatterException: $message';
+
+}
+
+/// Specifies the kind of code snippet to format.
+class CodeKind {
+
+ final index;
+
+ const CodeKind(this.index);
+
+ /// A compilation unit snippet.
+ static const COMPILATION_UNIT = const CodeKind(0);
+
+ /// A statement snippet.
+ static const STATEMENT = const CodeKind(1);
+
+}
+
+/// Dart source code formatter.
+abstract class CodeFormatter {
+
+ factory CodeFormatter([FormatterOptions options = const FormatterOptions()])
+ => new CodeFormatterImpl(options);
+
+ /// Format the specified portion (from [offset] with [length]) of the given
+ /// [source] string, optionally providing an [indentationLevel].
+ String format(CodeKind kind, String source, {int offset, int end,
+ int indentationLevel:0});
+
+}
+
+class CodeFormatterImpl implements CodeFormatter, AnalysisErrorListener {
+
+ final FormatterOptions options;
+ final List<AnalysisError> errors = <AnalysisError>[];
+
+ CodeFormatterImpl(this.options);
+
+ String format(CodeKind kind, String source, {int offset, int end,
+ int indentationLevel:0}) {
+
+ var start = tokenize(source);
+ _checkForErrors();
+
+ var node = parse(kind, start);
+ _checkForErrors();
+
+ // To be continued...
+
+ return source;
+ }
+
+ ASTNode parse(CodeKind kind, Token start) {
+
+ var parser = new Parser(null, this);
+
+ switch (kind) {
+ case CodeKind.COMPILATION_UNIT:
+ return parser.parseCompilationUnit(start);
+ case CodeKind.STATEMENT:
+ return parser.parseStatement(start);
+ }
+
+ throw new FormatterException('Unsupported format kind: $kind');
+ }
+
+ _checkForErrors() {
+ if (errors.length > 0) {
+ throw new FormatterException.forError(errors);
+ }
+ }
+
+ void onError(AnalysisError error) {
+ errors.add(error);
+ }
+
+ Token tokenize(String source) {
+ var scanner = new StringScanner(null, source, this);
+ return scanner.tokenize();
+ }
+
+}
+
+/// Placeholder class to hold a reference to the Class object representing
+/// the Dart keyword void.
+class Void extends Object {
+
+}
+
+
+/// Records a sequence of edits to a source string that will cause the string
+/// to be formatted when applied.
+class EditRecorder {
+
+ final FormatterOptions options;
+
+ int column = 0;
+
+ int sourceIndex = 0;
+ String source = '';
+
+ Token currentToken;
+
+ int indentationLevel = 0;
+ int numberOfIndentations = 0;
+
+ bool isIndentNeeded = false;
+
+ EditRecorder(this.options);
+
+ /// Count the number of whitespace chars beginning at the current
+ /// [sourceIndex].
+ int countWhitespace() {
+ var count = 0;
+ for (var i = sourceIndex; i < source.length; ++i) {
+ if (isIndentChar(source[i])) {
+ ++count;
+ } else {
+ break;
+ }
+ }
+ return count;
+ }
+
+ /// Indent.
+ void indent() {
+ indentationLevel += options.indentPerLevel;
+ numberOfIndentations++;
+ }
+
+ /// Test if there is a newline at the given source [index].
+ bool isNewlineAt(int index) {
+ if (index < 0 || index + NEW_LINE.length > source.length) {
+ return false;
+ }
+ for (var i = 0; i < NEW_LINE.length; i++) {
+ if (source[index] != NEW_LINE[i]) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+}
+
+const SPACE = ' ';
+
+bool isIndentChar(String ch) => ch == SPACE; // TODO(pquitslund) also check tab
+
+
+/// Manages stored [Edit]s.
+class EditStore {
+
+ /// The underlying sequence of [Edit]s.
+ final edits = <Edit>[];
+
+ /// Add the given [Edit] to the end of the edit sequence.
+ void add(Edit edit) {
+ edits.add(edit);
+ }
+
+ /// Add an [Edit] that describes a textual [replacement] of a text interval
+ /// starting at the given [offset] spanning the given [length].
+ void addEdit(int offset, int length, String replacement) {
+ add(new Edit(offset, length, replacement));
+ }
+
+ /// Get the index of the current edit (for use in caching location
+ /// information).
+ int getCurrentEditIndex() => edits.length - 1;
+
+ /// Get the last edit.
+ Edit getLastEdit() => edits.isEmpty ? null : edits.last;
+
+ /// Add an [Edit] that describes an insertion of text starting at the given
+ /// [offset].
+ void insert(int offset, String insertedString) {
+ addEdit(offset, 0, insertedString);
+ }
+
+ /// Reset cached state.
+ void reset() {
+ edits.clear();
+ }
+
+ String toString() => 'EditStore( ${edits.toString()} )';
+
+}
+
+
+
+/// Describes a text edit.
+class Edit {
+
+ /// The offset at which to apply the edit.
+ final int offset;
+
+ /// The length of the text interval to replace.
+ final int length;
+
+ /// The replacement text.
+ final String replacement;
+
+ /// Create an edit.
+ const Edit(this.offset, this.length, this.replacement);
+
+ /// Create an edit for the given [range].
+ Edit.forRange(SourceRange range, String replacement):
+ this(range.offset, range.length, replacement);
+
+ String toString() => '${offset < 0 ? '(' : 'X('} offset: ${offset} , '
+ 'length ${length}, replacement :> ${replacement} <:)';
+
+}
+
+/// An AST visitor that drives formatting heuristics.
+class FormattingEngine extends RecursiveASTVisitor<Void> {
+
+ final FormatterOptions options;
+
+ FormattingEngine(this.options);
+
+}
diff --git a/pkg/analyzer_experimental/test/generated/ast_test.dart b/pkg/analyzer_experimental/test/generated/ast_test.dart
index a458f11..a6903cd 100644
--- a/pkg/analyzer_experimental/test/generated/ast_test.dart
+++ b/pkg/analyzer_experimental/test/generated/ast_test.dart
@@ -408,9 +408,9 @@
* @return the type name that was created
*/
static TypeName typeName(ClassElement element2, List<TypeName> arguments) {
- SimpleIdentifier name2 = identifier3(element2.name);
- name2.element = element2;
- TypeName typeName = typeName3(name2, arguments);
+ SimpleIdentifier name = identifier3(element2.name);
+ name.element = element2;
+ TypeName typeName = typeName3(name, arguments);
typeName.type = element2.type;
return typeName;
}
@@ -446,8 +446,8 @@
}
class SimpleIdentifierTest extends ParserTestCase {
void test_inDeclarationContext_argumentDefinition() {
- SimpleIdentifier identifier2 = ASTFactory.argumentDefinitionTest("p").identifier;
- JUnitTestCase.assertFalse(identifier2.inDeclarationContext());
+ SimpleIdentifier identifier = ASTFactory.argumentDefinitionTest("p").identifier;
+ JUnitTestCase.assertFalse(identifier.inDeclarationContext());
}
void test_inDeclarationContext_catch_exception() {
SimpleIdentifier identifier = ASTFactory.catchClause("e", []).exceptionParameter;
@@ -470,8 +470,8 @@
JUnitTestCase.assertTrue(identifier.inDeclarationContext());
}
void test_inDeclarationContext_fieldFormalParameter() {
- SimpleIdentifier identifier2 = ASTFactory.fieldFormalParameter2("p").identifier;
- JUnitTestCase.assertFalse(identifier2.inDeclarationContext());
+ SimpleIdentifier identifier = ASTFactory.fieldFormalParameter2("p").identifier;
+ JUnitTestCase.assertFalse(identifier.inDeclarationContext());
}
void test_inDeclarationContext_functionDeclaration() {
SimpleIdentifier identifier = ASTFactory.functionDeclaration(null, null, "f", null).name;
@@ -497,8 +497,8 @@
JUnitTestCase.assertTrue(identifier.inDeclarationContext());
}
void test_inDeclarationContext_simpleFormalParameter() {
- SimpleIdentifier identifier2 = ASTFactory.simpleFormalParameter3("p").identifier;
- JUnitTestCase.assertTrue(identifier2.inDeclarationContext());
+ SimpleIdentifier identifier = ASTFactory.simpleFormalParameter3("p").identifier;
+ JUnitTestCase.assertTrue(identifier.inDeclarationContext());
}
void test_inDeclarationContext_typeParameter_bound() {
TypeName bound = ASTFactory.typeName4("A", []);
@@ -599,10 +599,10 @@
*/
ASTNode topMostNode(SimpleIdentifier identifier) {
ASTNode child = identifier;
- ASTNode parent2 = identifier.parent;
- while (parent2 != null) {
- child = parent2;
- parent2 = parent2.parent;
+ ASTNode parent = identifier.parent;
+ while (parent != null) {
+ child = parent;
+ parent = parent.parent;
}
return child;
}
diff --git a/pkg/analyzer_experimental/test/generated/element_test.dart b/pkg/analyzer_experimental/test/generated/element_test.dart
index 4b440f0..ca36ed7 100644
--- a/pkg/analyzer_experimental/test/generated/element_test.dart
+++ b/pkg/analyzer_experimental/test/generated/element_test.dart
@@ -48,11 +48,11 @@
void test_getComponents() {
String encoding = "a;b;c";
ElementLocationImpl location = new ElementLocationImpl.con2(encoding);
- List<String> components2 = location.components;
- EngineTestCase.assertLength(3, components2);
- JUnitTestCase.assertEquals("a", components2[0]);
- JUnitTestCase.assertEquals("b", components2[1]);
- JUnitTestCase.assertEquals("c", components2[2]);
+ List<String> components = location.components;
+ EngineTestCase.assertLength(3, components);
+ JUnitTestCase.assertEquals("a", components[0]);
+ JUnitTestCase.assertEquals("b", components[1]);
+ JUnitTestCase.assertEquals("c", components[2]);
}
void test_getEncoding() {
String encoding = "a;b;c;;d";
@@ -111,27 +111,27 @@
}
void test_getPrefixes() {
AnalysisContext context = createAnalysisContext();
- LibraryElementImpl library2 = ElementFactory.library(context, "l1");
+ LibraryElementImpl library = ElementFactory.library(context, "l1");
PrefixElement prefixA = new PrefixElementImpl(ASTFactory.identifier3("a"));
PrefixElement prefixB = new PrefixElementImpl(ASTFactory.identifier3("b"));
List<ImportElementImpl> imports = [ElementFactory.importFor(ElementFactory.library(context, "l2"), null, []), ElementFactory.importFor(ElementFactory.library(context, "l3"), null, []), ElementFactory.importFor(ElementFactory.library(context, "l4"), prefixA, []), ElementFactory.importFor(ElementFactory.library(context, "l5"), prefixA, []), ElementFactory.importFor(ElementFactory.library(context, "l6"), prefixB, [])];
- library2.imports = imports;
- List<PrefixElement> prefixes2 = library2.prefixes;
- EngineTestCase.assertLength(2, prefixes2);
- if (identical(prefixA, prefixes2[0])) {
- JUnitTestCase.assertSame(prefixB, prefixes2[1]);
+ library.imports = imports;
+ List<PrefixElement> prefixes = library.prefixes;
+ EngineTestCase.assertLength(2, prefixes);
+ if (identical(prefixA, prefixes[0])) {
+ JUnitTestCase.assertSame(prefixB, prefixes[1]);
} else {
- JUnitTestCase.assertSame(prefixB, prefixes2[0]);
- JUnitTestCase.assertSame(prefixA, prefixes2[1]);
+ JUnitTestCase.assertSame(prefixB, prefixes[0]);
+ JUnitTestCase.assertSame(prefixA, prefixes[1]);
}
}
void test_isUpToDate() {
AnalysisContext context = createAnalysisContext();
context.sourceFactory = new SourceFactory.con2([]);
- LibraryElement library2 = ElementFactory.library(context, "foo");
- context.sourceFactory.setContents(library2.definingCompilationUnit.source, "sdfsdff");
- JUnitTestCase.assertFalse(library2.isUpToDate2(0));
- JUnitTestCase.assertTrue(library2.isUpToDate2(JavaSystem.currentTimeMillis() + 1000));
+ LibraryElement library = ElementFactory.library(context, "foo");
+ context.sourceFactory.setContents(library.definingCompilationUnit.source, "sdfsdff");
+ JUnitTestCase.assertFalse(library.isUpToDate2(0));
+ JUnitTestCase.assertTrue(library.isUpToDate2(JavaSystem.currentTimeMillis() + 1000));
}
void test_setImports() {
AnalysisContext context = createAnalysisContext();
@@ -358,13 +358,13 @@
InterfaceType typeB = classB.type;
ClassElementImpl classC = ElementFactory.classElement2("C", []);
classC.interfaces = <InterfaceType> [typeA, typeB];
- List<InterfaceType> interfaces2 = classC.type.interfaces;
- EngineTestCase.assertLength(2, interfaces2);
- if (identical(interfaces2[0], typeA)) {
- JUnitTestCase.assertSame(typeB, interfaces2[1]);
+ List<InterfaceType> interfaces = classC.type.interfaces;
+ EngineTestCase.assertLength(2, interfaces);
+ if (identical(interfaces[0], typeA)) {
+ JUnitTestCase.assertSame(typeB, interfaces[1]);
} else {
- JUnitTestCase.assertSame(typeB, interfaces2[0]);
- JUnitTestCase.assertSame(typeA, interfaces2[1]);
+ JUnitTestCase.assertSame(typeB, interfaces[0]);
+ JUnitTestCase.assertSame(typeA, interfaces[1]);
}
}
void test_getInterfaces_parameterized() {
@@ -377,9 +377,9 @@
InterfaceType typeI = ElementFactory.classElement2("I", []).type;
InterfaceTypeImpl typeBI = new InterfaceTypeImpl.con1(classB);
typeBI.typeArguments = <Type2> [typeI];
- List<InterfaceType> interfaces2 = typeBI.interfaces;
- EngineTestCase.assertLength(1, interfaces2);
- InterfaceType result = interfaces2[0];
+ List<InterfaceType> interfaces = typeBI.interfaces;
+ EngineTestCase.assertLength(1, interfaces);
+ InterfaceType result = interfaces[0];
JUnitTestCase.assertSame(classA, result.element);
JUnitTestCase.assertSame(typeI, result.typeArguments[0]);
}
@@ -552,17 +552,17 @@
JUnitTestCase.assertEquals(_typeProvider.objectType, string.getLeastUpperBound(num));
}
void test_getLeastUpperBound_typeParameters_different() {
- InterfaceType listType2 = _typeProvider.listType;
- InterfaceType intType2 = _typeProvider.intType;
- InterfaceType doubleType2 = _typeProvider.doubleType;
- InterfaceType listOfIntType = listType2.substitute5(<Type2> [intType2]);
- InterfaceType listOfDoubleType = listType2.substitute5(<Type2> [doubleType2]);
- JUnitTestCase.assertEquals(listType2.substitute5(<Type2> [_typeProvider.dynamicType]), listOfIntType.getLeastUpperBound(listOfDoubleType));
+ InterfaceType listType = _typeProvider.listType;
+ InterfaceType intType = _typeProvider.intType;
+ InterfaceType doubleType = _typeProvider.doubleType;
+ InterfaceType listOfIntType = listType.substitute5(<Type2> [intType]);
+ InterfaceType listOfDoubleType = listType.substitute5(<Type2> [doubleType]);
+ JUnitTestCase.assertEquals(listType.substitute5(<Type2> [_typeProvider.dynamicType]), listOfIntType.getLeastUpperBound(listOfDoubleType));
}
void test_getLeastUpperBound_typeParameters_same() {
- InterfaceType listType2 = _typeProvider.listType;
- InterfaceType intType2 = _typeProvider.intType;
- InterfaceType listOfIntType = listType2.substitute5(<Type2> [intType2]);
+ InterfaceType listType = _typeProvider.listType;
+ InterfaceType intType = _typeProvider.intType;
+ InterfaceType listOfIntType = listType.substitute5(<Type2> [intType]);
JUnitTestCase.assertEquals(listOfIntType, listOfIntType.getLeastUpperBound(listOfIntType));
}
void test_getMethod_implemented() {
@@ -673,13 +673,13 @@
InterfaceType typeI = ElementFactory.classElement2("I", []).type;
InterfaceTypeImpl typeBI = new InterfaceTypeImpl.con1(classB);
typeBI.typeArguments = <Type2> [typeI];
- InterfaceType superclass2 = typeBI.superclass;
- JUnitTestCase.assertSame(classA, superclass2.element);
- JUnitTestCase.assertSame(typeI, superclass2.typeArguments[0]);
+ InterfaceType superclass = typeBI.superclass;
+ JUnitTestCase.assertSame(classA, superclass.element);
+ JUnitTestCase.assertSame(typeI, superclass.typeArguments[0]);
}
void test_getTypeArguments_empty() {
- InterfaceType type2 = ElementFactory.classElement2("A", []).type;
- EngineTestCase.assertLength(0, type2.typeArguments);
+ InterfaceType type = ElementFactory.classElement2("A", []).type;
+ EngineTestCase.assertLength(0, type.typeArguments);
}
void test_isDirectSupertypeOf_extends() {
ClassElement classA = ElementFactory.classElement2("A", []);
@@ -713,8 +713,8 @@
JUnitTestCase.assertTrue(typeA.isDirectSupertypeOf(typeB));
}
void test_isMoreSpecificThan_bottom() {
- Type2 type2 = ElementFactory.classElement2("A", []).type;
- JUnitTestCase.assertTrue(BottomTypeImpl.instance.isMoreSpecificThan(type2));
+ Type2 type = ElementFactory.classElement2("A", []).type;
+ JUnitTestCase.assertTrue(BottomTypeImpl.instance.isMoreSpecificThan(type));
}
void test_isMoreSpecificThan_covariance() {
ClassElement classA = ElementFactory.classElement2("A", ["E"]);
@@ -736,12 +736,12 @@
JUnitTestCase.assertFalse(typeA.isMoreSpecificThan(typeB));
}
void test_isMoreSpecificThan_dynamic() {
- InterfaceType type2 = ElementFactory.classElement2("A", []).type;
- JUnitTestCase.assertTrue(type2.isMoreSpecificThan(DynamicTypeImpl.instance));
+ InterfaceType type = ElementFactory.classElement2("A", []).type;
+ JUnitTestCase.assertTrue(type.isMoreSpecificThan(DynamicTypeImpl.instance));
}
void test_isMoreSpecificThan_self() {
- InterfaceType type2 = ElementFactory.classElement2("A", []).type;
- JUnitTestCase.assertTrue(type2.isMoreSpecificThan(type2));
+ InterfaceType type = ElementFactory.classElement2("A", []).type;
+ JUnitTestCase.assertTrue(type.isMoreSpecificThan(type));
}
void test_isMoreSpecificThan_transitive_interface() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -943,10 +943,10 @@
PropertyAccessorElement getterG = ElementFactory.getterElement(getterName, false, null);
classA.accessors = <PropertyAccessorElement> [getterG];
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(getterG, typeA.lookUpGetter(getterName, library2));
+ JUnitTestCase.assertSame(getterG, typeA.lookUpGetter(getterName, library));
}
void test_lookUpGetter_inherited() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -955,28 +955,28 @@
classA.accessors = <PropertyAccessorElement> [getterG];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
InterfaceType typeB = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(getterG, typeB.lookUpGetter(getterName, library2));
+ JUnitTestCase.assertSame(getterG, typeB.lookUpGetter(getterName, library));
}
void test_lookUpGetter_recursive() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
InterfaceType typeA = classA.type;
ClassElementImpl classB = ElementFactory.classElement("B", typeA, []);
classA.supertype = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(typeA.lookUpGetter("g", library2));
+ JUnitTestCase.assertNull(typeA.lookUpGetter("g", library));
}
void test_lookUpGetter_unimplemented() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(typeA.lookUpGetter("g", library2));
+ JUnitTestCase.assertNull(typeA.lookUpGetter("g", library));
}
void test_lookUpMethod_implemented() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -984,10 +984,10 @@
MethodElementImpl methodM = ElementFactory.methodElement(methodName, null, []);
classA.methods = <MethodElement> [methodM];
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(methodM, typeA.lookUpMethod(methodName, library2));
+ JUnitTestCase.assertSame(methodM, typeA.lookUpMethod(methodName, library));
}
void test_lookUpMethod_inherited() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -996,10 +996,10 @@
classA.methods = <MethodElement> [methodM];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
InterfaceType typeB = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(methodM, typeB.lookUpMethod(methodName, library2));
+ JUnitTestCase.assertSame(methodM, typeB.lookUpMethod(methodName, library));
}
void test_lookUpMethod_parameterized() {
ClassElementImpl classA = ElementFactory.classElement2("A", ["E"]);
@@ -1012,13 +1012,13 @@
InterfaceTypeImpl typeAF = new InterfaceTypeImpl.con1(classA);
typeAF.typeArguments = <Type2> [typeB.typeArguments[0]];
classB.supertype = typeAF;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
InterfaceType typeI = ElementFactory.classElement2("I", []).type;
InterfaceTypeImpl typeBI = new InterfaceTypeImpl.con1(classB);
typeBI.typeArguments = <Type2> [typeI];
- MethodElement method = typeBI.lookUpMethod(methodName, library2);
+ MethodElement method = typeBI.lookUpMethod(methodName, library);
JUnitTestCase.assertNotNull(method);
FunctionType methodType = method.type;
JUnitTestCase.assertSame(typeI, methodType.returnType);
@@ -1031,18 +1031,18 @@
InterfaceType typeA = classA.type;
ClassElementImpl classB = ElementFactory.classElement("B", typeA, []);
classA.supertype = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(typeA.lookUpMethod("m", library2));
+ JUnitTestCase.assertNull(typeA.lookUpMethod("m", library));
}
void test_lookUpMethod_unimplemented() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(typeA.lookUpMethod("m", library2));
+ JUnitTestCase.assertNull(typeA.lookUpMethod("m", library));
}
void test_lookUpSetter_implemented() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -1050,10 +1050,10 @@
PropertyAccessorElement setterS = ElementFactory.setterElement(setterName, false, null);
classA.accessors = <PropertyAccessorElement> [setterS];
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(setterS, typeA.lookUpSetter(setterName, library2));
+ JUnitTestCase.assertSame(setterS, typeA.lookUpSetter(setterName, library));
}
void test_lookUpSetter_inherited() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -1062,34 +1062,34 @@
classA.accessors = <PropertyAccessorElement> [setterS];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
InterfaceType typeB = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(setterS, typeB.lookUpSetter(setterName, library2));
+ JUnitTestCase.assertSame(setterS, typeB.lookUpSetter(setterName, library));
}
void test_lookUpSetter_recursive() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
InterfaceType typeA = classA.type;
ClassElementImpl classB = ElementFactory.classElement("B", typeA, []);
classA.supertype = classB.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(typeA.lookUpSetter("s", library2));
+ JUnitTestCase.assertNull(typeA.lookUpSetter("s", library));
}
void test_lookUpSetter_unimplemented() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
InterfaceType typeA = classA.type;
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
- CompilationUnitElement unit = library2.definingCompilationUnit;
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
+ CompilationUnitElement unit = library.definingCompilationUnit;
((unit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(typeA.lookUpSetter("s", library2));
+ JUnitTestCase.assertNull(typeA.lookUpSetter("s", library));
}
void test_setTypeArguments() {
- InterfaceTypeImpl type2 = ElementFactory.classElement2("A", []).type as InterfaceTypeImpl;
+ InterfaceTypeImpl type = ElementFactory.classElement2("A", []).type as InterfaceTypeImpl;
List<Type2> typeArguments = <Type2> [ElementFactory.classElement2("B", []).type, ElementFactory.classElement2("C", []).type];
- type2.typeArguments = typeArguments;
- JUnitTestCase.assertEquals(typeArguments, type2.typeArguments);
+ type.typeArguments = typeArguments;
+ JUnitTestCase.assertEquals(typeArguments, type.typeArguments);
}
void test_substitute_equal() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
@@ -1567,11 +1567,11 @@
}
static ClassElementImpl classElement2(String typeName, List<String> parameterNames) => classElement(typeName, object.type, parameterNames);
static ConstructorElementImpl constructorElement(ClassElement clazz, String name) {
- Type2 type2 = clazz.type;
+ Type2 type = clazz.type;
ConstructorElementImpl constructor = new ConstructorElementImpl(name == null ? null : ASTFactory.identifier3(name));
FunctionTypeImpl constructorType = new FunctionTypeImpl.con1(constructor);
- constructorType.normalParameterTypes = <Type2> [type2];
- constructorType.returnType = type2;
+ constructorType.normalParameterTypes = <Type2> [type];
+ constructorType.returnType = type;
constructor.type = constructorType;
return constructor;
}
@@ -1911,103 +1911,103 @@
JUnitTestCase.assertTrue(classB.hasNonFinalField());
}
void test_lookUpGetter_declared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String getterName = "g";
PropertyAccessorElement getter = ElementFactory.getterElement(getterName, false, null);
classA.accessors = <PropertyAccessorElement> [getter];
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(getter, classA.lookUpGetter(getterName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertSame(getter, classA.lookUpGetter(getterName, library));
}
void test_lookUpGetter_inherited() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String getterName = "g";
PropertyAccessorElement getter = ElementFactory.getterElement(getterName, false, null);
classA.accessors = <PropertyAccessorElement> [getter];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(getter, classB.lookUpGetter(getterName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertSame(getter, classB.lookUpGetter(getterName, library));
}
void test_lookUpGetter_undeclared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(classA.lookUpGetter("g", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertNull(classA.lookUpGetter("g", library));
}
void test_lookUpGetter_undeclared_recursive() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
classA.supertype = classB.type;
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(classA.lookUpGetter("g", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertNull(classA.lookUpGetter("g", library));
}
void test_lookUpMethod_declared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String methodName = "m";
MethodElement method = ElementFactory.methodElement(methodName, null, []);
classA.methods = <MethodElement> [method];
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(method, classA.lookUpMethod(methodName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertSame(method, classA.lookUpMethod(methodName, library));
}
void test_lookUpMethod_inherited() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String methodName = "m";
MethodElement method = ElementFactory.methodElement(methodName, null, []);
classA.methods = <MethodElement> [method];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(method, classB.lookUpMethod(methodName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertSame(method, classB.lookUpMethod(methodName, library));
}
void test_lookUpMethod_undeclared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(classA.lookUpMethod("m", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertNull(classA.lookUpMethod("m", library));
}
void test_lookUpMethod_undeclared_recursive() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
classA.supertype = classB.type;
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(classA.lookUpMethod("m", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertNull(classA.lookUpMethod("m", library));
}
void test_lookUpSetter_declared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String setterName = "s";
PropertyAccessorElement setter = ElementFactory.setterElement(setterName, false, null);
classA.accessors = <PropertyAccessorElement> [setter];
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertSame(setter, classA.lookUpSetter(setterName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertSame(setter, classA.lookUpSetter(setterName, library));
}
void test_lookUpSetter_inherited() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String setterName = "s";
PropertyAccessorElement setter = ElementFactory.setterElement(setterName, false, null);
classA.accessors = <PropertyAccessorElement> [setter];
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertSame(setter, classB.lookUpSetter(setterName, library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertSame(setter, classB.lookUpSetter(setterName, library));
}
void test_lookUpSetter_undeclared() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
- JUnitTestCase.assertNull(classA.lookUpSetter("s", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA];
+ JUnitTestCase.assertNull(classA.lookUpSetter("s", library));
}
void test_lookUpSetter_undeclared_recursive() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classA = ElementFactory.classElement2("A", []);
ClassElementImpl classB = ElementFactory.classElement("B", classA.type, []);
classA.supertype = classB.type;
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
- JUnitTestCase.assertNull(classA.lookUpSetter("s", library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classA, classB];
+ JUnitTestCase.assertNull(classA.lookUpSetter("s", library));
}
static dartSuite() {
_ut.group('ClassElementImplTest', () {
@@ -2104,9 +2104,9 @@
}
class ElementImplTest extends EngineTestCase {
void test_equals() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElementImpl classElement = ElementFactory.classElement2("C", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
FieldElement field = ElementFactory.fieldElement("next", false, false, false, classElement.type);
classElement.fields = <FieldElement> [field];
JUnitTestCase.assertTrue(field == field);
@@ -2123,10 +2123,10 @@
JUnitTestCase.assertFalse(classElement.isAccessibleIn(library2));
}
void test_isAccessibleIn_private_sameLibrary() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElement classElement = ElementFactory.classElement2("_C", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
- JUnitTestCase.assertTrue(classElement.isAccessibleIn(library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
+ JUnitTestCase.assertTrue(classElement.isAccessibleIn(library));
}
void test_isAccessibleIn_public_differentLibrary() {
AnalysisContextImpl context = createAnalysisContext();
@@ -2137,10 +2137,10 @@
JUnitTestCase.assertTrue(classElement.isAccessibleIn(library2));
}
void test_isAccessibleIn_public_sameLibrary() {
- LibraryElementImpl library2 = ElementFactory.library(createAnalysisContext(), "lib");
+ LibraryElementImpl library = ElementFactory.library(createAnalysisContext(), "lib");
ClassElement classElement = ElementFactory.classElement2("C", []);
- ((library2.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
- JUnitTestCase.assertTrue(classElement.isAccessibleIn(library2));
+ ((library.definingCompilationUnit as CompilationUnitElementImpl)).types = <ClassElement> [classElement];
+ JUnitTestCase.assertTrue(classElement.isAccessibleIn(library));
}
static dartSuite() {
_ut.group('ElementImplTest', () {
@@ -2188,8 +2188,8 @@
}
void test_getReturnType() {
FunctionTypeImpl type = new FunctionTypeImpl.con1(new FunctionElementImpl.con1(ASTFactory.identifier3("f")));
- Type2 returnType2 = type.returnType;
- JUnitTestCase.assertEquals(VoidTypeImpl.instance, returnType2);
+ Type2 returnType = type.returnType;
+ JUnitTestCase.assertEquals(VoidTypeImpl.instance, returnType);
}
void test_getTypeArguments() {
FunctionTypeImpl type = new FunctionTypeImpl.con1(new FunctionElementImpl.con1(ASTFactory.identifier3("f")));
@@ -2422,8 +2422,8 @@
FunctionTypeImpl type = new FunctionTypeImpl.con1(new FunctionElementImpl.con1(ASTFactory.identifier3("f")));
Type2 expectedType = new InterfaceTypeImpl.con1(new ClassElementImpl(ASTFactory.identifier3("C")));
type.returnType = expectedType;
- Type2 returnType2 = type.returnType;
- JUnitTestCase.assertEquals(expectedType, returnType2);
+ Type2 returnType = type.returnType;
+ JUnitTestCase.assertEquals(expectedType, returnType);
}
void test_setTypeArguments() {
FunctionTypeImpl type = new FunctionTypeImpl.con1(new FunctionElementImpl.con1(ASTFactory.identifier3("f")));
diff --git a/pkg/analyzer_experimental/test/generated/parser_test.dart b/pkg/analyzer_experimental/test/generated/parser_test.dart
index 616a497..b420160 100644
--- a/pkg/analyzer_experimental/test/generated/parser_test.dart
+++ b/pkg/analyzer_experimental/test/generated/parser_test.dart
@@ -25,10 +25,10 @@
class SimpleParserTest extends ParserTestCase {
void fail_parseCommentReference_this() {
CommentReference reference = ParserTestCase.parse("parseCommentReference", <Object> ["this", 5], "");
- SimpleIdentifier identifier2 = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
- JUnitTestCase.assertNotNull(identifier2.token);
- JUnitTestCase.assertEquals("a", identifier2.name);
- JUnitTestCase.assertEquals(5, identifier2.offset);
+ SimpleIdentifier identifier = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
+ JUnitTestCase.assertNotNull(identifier.token);
+ JUnitTestCase.assertEquals("a", identifier.name);
+ JUnitTestCase.assertEquals(5, identifier.offset);
}
void test_computeStringValue_emptyInterpolationPrefix() {
JUnitTestCase.assertEquals("", computeStringValue("'''"));
@@ -264,10 +264,10 @@
}
void test_parseArgument_named() {
NamedExpression expression = ParserTestCase.parse5("parseArgument", "n: x", []);
- Label name2 = expression.name;
- JUnitTestCase.assertNotNull(name2);
- JUnitTestCase.assertNotNull(name2.label);
- JUnitTestCase.assertNotNull(name2.colon);
+ Label name = expression.name;
+ JUnitTestCase.assertNotNull(name);
+ JUnitTestCase.assertNotNull(name.label);
+ JUnitTestCase.assertNotNull(name.colon);
JUnitTestCase.assertNotNull(expression.expression);
}
void test_parseArgument_unnamed() {
@@ -282,23 +282,23 @@
}
void test_parseArgumentList_empty() {
ArgumentList argumentList = ParserTestCase.parse5("parseArgumentList", "()", []);
- NodeList<Expression> arguments2 = argumentList.arguments;
- EngineTestCase.assertSize(0, arguments2);
+ NodeList<Expression> arguments = argumentList.arguments;
+ EngineTestCase.assertSize(0, arguments);
}
void test_parseArgumentList_mixed() {
ArgumentList argumentList = ParserTestCase.parse5("parseArgumentList", "(w, x, y: y, z: z)", []);
- NodeList<Expression> arguments2 = argumentList.arguments;
- EngineTestCase.assertSize(4, arguments2);
+ NodeList<Expression> arguments = argumentList.arguments;
+ EngineTestCase.assertSize(4, arguments);
}
void test_parseArgumentList_noNamed() {
ArgumentList argumentList = ParserTestCase.parse5("parseArgumentList", "(x, y, z)", []);
- NodeList<Expression> arguments2 = argumentList.arguments;
- EngineTestCase.assertSize(3, arguments2);
+ NodeList<Expression> arguments = argumentList.arguments;
+ EngineTestCase.assertSize(3, arguments);
}
void test_parseArgumentList_onlyNamed() {
ArgumentList argumentList = ParserTestCase.parse5("parseArgumentList", "(x: x, y: y)", []);
- NodeList<Expression> arguments2 = argumentList.arguments;
- EngineTestCase.assertSize(2, arguments2);
+ NodeList<Expression> arguments = argumentList.arguments;
+ EngineTestCase.assertSize(2, arguments);
}
void test_parseAssertStatement() {
AssertStatement statement = ParserTestCase.parse5("parseAssertStatement", "assert (x);", []);
@@ -312,9 +312,9 @@
PropertyAccess propertyAccess = ParserTestCase.parse("parseAssignableExpression", <Object> [false], "(x)(y).z");
FunctionExpressionInvocation invocation = propertyAccess.target as FunctionExpressionInvocation;
JUnitTestCase.assertNotNull(invocation.function);
- ArgumentList argumentList2 = invocation.argumentList;
- JUnitTestCase.assertNotNull(argumentList2);
- EngineTestCase.assertSize(1, argumentList2.arguments);
+ ArgumentList argumentList = invocation.argumentList;
+ JUnitTestCase.assertNotNull(argumentList);
+ EngineTestCase.assertSize(1, argumentList.arguments);
JUnitTestCase.assertNotNull(propertyAccess.operator);
JUnitTestCase.assertNotNull(propertyAccess.propertyName);
}
@@ -339,9 +339,9 @@
PropertyAccess propertyAccess = ParserTestCase.parse("parseAssignableExpression", <Object> [false], "x(y).z");
MethodInvocation invocation = propertyAccess.target as MethodInvocation;
JUnitTestCase.assertEquals("x", invocation.methodName.name);
- ArgumentList argumentList2 = invocation.argumentList;
- JUnitTestCase.assertNotNull(argumentList2);
- EngineTestCase.assertSize(1, argumentList2.arguments);
+ ArgumentList argumentList = invocation.argumentList;
+ JUnitTestCase.assertNotNull(argumentList);
+ EngineTestCase.assertSize(1, argumentList.arguments);
JUnitTestCase.assertNotNull(propertyAccess.operator);
JUnitTestCase.assertNotNull(propertyAccess.propertyName);
}
@@ -656,9 +656,9 @@
JUnitTestCase.assertNull(field.keyword);
VariableDeclarationList list = field.fields;
JUnitTestCase.assertNotNull(list);
- NodeList<VariableDeclaration> variables2 = list.variables;
- EngineTestCase.assertSize(1, variables2);
- VariableDeclaration variable = variables2[0];
+ NodeList<VariableDeclaration> variables = list.variables;
+ EngineTestCase.assertSize(1, variables);
+ VariableDeclaration variable = variables[0];
JUnitTestCase.assertNotNull(variable.name);
}
void test_parseClassMember_field_namedGet() {
@@ -668,9 +668,9 @@
JUnitTestCase.assertNull(field.keyword);
VariableDeclarationList list = field.fields;
JUnitTestCase.assertNotNull(list);
- NodeList<VariableDeclaration> variables2 = list.variables;
- EngineTestCase.assertSize(1, variables2);
- VariableDeclaration variable = variables2[0];
+ NodeList<VariableDeclaration> variables = list.variables;
+ EngineTestCase.assertSize(1, variables);
+ VariableDeclaration variable = variables[0];
JUnitTestCase.assertNotNull(variable.name);
}
void test_parseClassMember_field_namedOperator() {
@@ -680,9 +680,9 @@
JUnitTestCase.assertNull(field.keyword);
VariableDeclarationList list = field.fields;
JUnitTestCase.assertNotNull(list);
- NodeList<VariableDeclaration> variables2 = list.variables;
- EngineTestCase.assertSize(1, variables2);
- VariableDeclaration variable = variables2[0];
+ NodeList<VariableDeclaration> variables = list.variables;
+ EngineTestCase.assertSize(1, variables);
+ VariableDeclaration variable = variables[0];
JUnitTestCase.assertNotNull(variable.name);
}
void test_parseClassMember_field_namedSet() {
@@ -692,9 +692,9 @@
JUnitTestCase.assertNull(field.keyword);
VariableDeclarationList list = field.fields;
JUnitTestCase.assertNotNull(list);
- NodeList<VariableDeclaration> variables2 = list.variables;
- EngineTestCase.assertSize(1, variables2);
- VariableDeclaration variable = variables2[0];
+ NodeList<VariableDeclaration> variables = list.variables;
+ EngineTestCase.assertSize(1, variables);
+ VariableDeclaration variable = variables[0];
JUnitTestCase.assertNotNull(variable.name);
}
void test_parseClassMember_getter_void() {
@@ -905,8 +905,8 @@
JUnitTestCase.assertNotNull(constructor.body);
}
void test_parseClassTypeAlias() {
- Token token2 = TokenFactory.token(Keyword.TYPEDEF);
- ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token2], "A = B;");
+ Token token = TokenFactory.token(Keyword.TYPEDEF);
+ ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token], "A = B;");
JUnitTestCase.assertNotNull(classTypeAlias.keyword);
JUnitTestCase.assertEquals("A", classTypeAlias.name.name);
JUnitTestCase.assertNotNull(classTypeAlias.equals);
@@ -917,8 +917,8 @@
JUnitTestCase.assertNotNull(classTypeAlias.semicolon);
}
void test_parseClassTypeAlias_abstract() {
- Token token2 = TokenFactory.token(Keyword.TYPEDEF);
- ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token2], "A = abstract B;");
+ Token token = TokenFactory.token(Keyword.TYPEDEF);
+ ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token], "A = abstract B;");
JUnitTestCase.assertNotNull(classTypeAlias.keyword);
JUnitTestCase.assertEquals("A", classTypeAlias.name.name);
JUnitTestCase.assertNotNull(classTypeAlias.equals);
@@ -929,8 +929,8 @@
JUnitTestCase.assertNotNull(classTypeAlias.semicolon);
}
void test_parseClassTypeAlias_implements() {
- Token token2 = TokenFactory.token(Keyword.TYPEDEF);
- ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token2], "A = B implements C;");
+ Token token = TokenFactory.token(Keyword.TYPEDEF);
+ ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token], "A = B implements C;");
JUnitTestCase.assertNotNull(classTypeAlias.keyword);
JUnitTestCase.assertEquals("A", classTypeAlias.name.name);
JUnitTestCase.assertNotNull(classTypeAlias.equals);
@@ -941,8 +941,8 @@
JUnitTestCase.assertNotNull(classTypeAlias.semicolon);
}
void test_parseClassTypeAlias_with() {
- Token token2 = TokenFactory.token(Keyword.TYPEDEF);
- ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token2], "A = B with C;");
+ Token token = TokenFactory.token(Keyword.TYPEDEF);
+ ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token], "A = B with C;");
JUnitTestCase.assertNotNull(classTypeAlias.keyword);
JUnitTestCase.assertEquals("A", classTypeAlias.name.name);
JUnitTestCase.assertNotNull(classTypeAlias.equals);
@@ -953,8 +953,8 @@
JUnitTestCase.assertNotNull(classTypeAlias.semicolon);
}
void test_parseClassTypeAlias_with_implements() {
- Token token2 = TokenFactory.token(Keyword.TYPEDEF);
- ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token2], "A = B with C implements D;");
+ Token token = TokenFactory.token(Keyword.TYPEDEF);
+ ClassTypeAlias classTypeAlias = ParserTestCase.parse("parseClassTypeAlias", <Object> [emptyCommentAndMetadata(), token], "A = B with C implements D;");
JUnitTestCase.assertNotNull(classTypeAlias.keyword);
JUnitTestCase.assertEquals("A", classTypeAlias.name.name);
JUnitTestCase.assertNotNull(classTypeAlias.equals);
@@ -1049,42 +1049,42 @@
void test_parseCommentReference_new_prefixed() {
CommentReference reference = ParserTestCase.parse("parseCommentReference", <Object> ["new a.b", 7], "");
PrefixedIdentifier prefixedIdentifier = EngineTestCase.assertInstanceOf(PrefixedIdentifier, reference.identifier);
- SimpleIdentifier prefix2 = prefixedIdentifier.prefix;
- JUnitTestCase.assertNotNull(prefix2.token);
- JUnitTestCase.assertEquals("a", prefix2.name);
- JUnitTestCase.assertEquals(11, prefix2.offset);
+ SimpleIdentifier prefix = prefixedIdentifier.prefix;
+ JUnitTestCase.assertNotNull(prefix.token);
+ JUnitTestCase.assertEquals("a", prefix.name);
+ JUnitTestCase.assertEquals(11, prefix.offset);
JUnitTestCase.assertNotNull(prefixedIdentifier.period);
- SimpleIdentifier identifier2 = prefixedIdentifier.identifier;
- JUnitTestCase.assertNotNull(identifier2.token);
- JUnitTestCase.assertEquals("b", identifier2.name);
- JUnitTestCase.assertEquals(13, identifier2.offset);
+ SimpleIdentifier identifier = prefixedIdentifier.identifier;
+ JUnitTestCase.assertNotNull(identifier.token);
+ JUnitTestCase.assertEquals("b", identifier.name);
+ JUnitTestCase.assertEquals(13, identifier.offset);
}
void test_parseCommentReference_new_simple() {
CommentReference reference = ParserTestCase.parse("parseCommentReference", <Object> ["new a", 5], "");
- SimpleIdentifier identifier2 = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
- JUnitTestCase.assertNotNull(identifier2.token);
- JUnitTestCase.assertEquals("a", identifier2.name);
- JUnitTestCase.assertEquals(9, identifier2.offset);
+ SimpleIdentifier identifier = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
+ JUnitTestCase.assertNotNull(identifier.token);
+ JUnitTestCase.assertEquals("a", identifier.name);
+ JUnitTestCase.assertEquals(9, identifier.offset);
}
void test_parseCommentReference_prefixed() {
CommentReference reference = ParserTestCase.parse("parseCommentReference", <Object> ["a.b", 7], "");
PrefixedIdentifier prefixedIdentifier = EngineTestCase.assertInstanceOf(PrefixedIdentifier, reference.identifier);
- SimpleIdentifier prefix2 = prefixedIdentifier.prefix;
- JUnitTestCase.assertNotNull(prefix2.token);
- JUnitTestCase.assertEquals("a", prefix2.name);
- JUnitTestCase.assertEquals(7, prefix2.offset);
+ SimpleIdentifier prefix = prefixedIdentifier.prefix;
+ JUnitTestCase.assertNotNull(prefix.token);
+ JUnitTestCase.assertEquals("a", prefix.name);
+ JUnitTestCase.assertEquals(7, prefix.offset);
JUnitTestCase.assertNotNull(prefixedIdentifier.period);
- SimpleIdentifier identifier2 = prefixedIdentifier.identifier;
- JUnitTestCase.assertNotNull(identifier2.token);
- JUnitTestCase.assertEquals("b", identifier2.name);
- JUnitTestCase.assertEquals(9, identifier2.offset);
+ SimpleIdentifier identifier = prefixedIdentifier.identifier;
+ JUnitTestCase.assertNotNull(identifier.token);
+ JUnitTestCase.assertEquals("b", identifier.name);
+ JUnitTestCase.assertEquals(9, identifier.offset);
}
void test_parseCommentReference_simple() {
CommentReference reference = ParserTestCase.parse("parseCommentReference", <Object> ["a", 5], "");
- SimpleIdentifier identifier2 = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
- JUnitTestCase.assertNotNull(identifier2.token);
- JUnitTestCase.assertEquals("a", identifier2.name);
- JUnitTestCase.assertEquals(5, identifier2.offset);
+ SimpleIdentifier identifier = EngineTestCase.assertInstanceOf(SimpleIdentifier, reference.identifier);
+ JUnitTestCase.assertNotNull(identifier.token);
+ JUnitTestCase.assertEquals("a", identifier.name);
+ JUnitTestCase.assertEquals(5, identifier.offset);
}
void test_parseCommentReferences_multiLine() {
List<Token> tokens = <Token> [new StringToken(TokenType.MULTI_LINE_COMMENT, "/** xxx [a] yyy [b] zzz */", 3)];
@@ -1517,9 +1517,9 @@
JUnitTestCase.assertFalse(comment.isBlock());
JUnitTestCase.assertTrue(comment.isDocumentation());
JUnitTestCase.assertFalse(comment.isEndOfLine());
- NodeList<CommentReference> references2 = comment.references;
- EngineTestCase.assertSize(1, references2);
- CommentReference reference = references2[0];
+ NodeList<CommentReference> references = comment.references;
+ EngineTestCase.assertSize(1, references);
+ CommentReference reference = references[0];
JUnitTestCase.assertNotNull(reference);
JUnitTestCase.assertEquals(5, reference.offset);
}
@@ -1658,42 +1658,42 @@
}
void test_parseFinalConstVarOrType_const_noType() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "const");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.CONST, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.CONST, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNull(result.type);
}
void test_parseFinalConstVarOrType_const_type() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "const A a");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.CONST, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.CONST, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNotNull(result.type);
}
void test_parseFinalConstVarOrType_final_noType() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "final");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNull(result.type);
}
void test_parseFinalConstVarOrType_final_prefixedType() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "final p.A a");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNotNull(result.type);
}
void test_parseFinalConstVarOrType_final_type() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "final A a");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.FINAL, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNotNull(result.type);
}
void test_parseFinalConstVarOrType_type_parameterized() {
@@ -1718,10 +1718,10 @@
}
void test_parseFinalConstVarOrType_var() {
FinalConstVarOrType result = ParserTestCase.parse("parseFinalConstVarOrType", <Object> [false], "var");
- Token keyword2 = result.keyword;
- JUnitTestCase.assertNotNull(keyword2);
- JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword2.type);
- JUnitTestCase.assertEquals(Keyword.VAR, ((keyword2 as KeywordToken)).keyword);
+ Token keyword = result.keyword;
+ JUnitTestCase.assertNotNull(keyword);
+ JUnitTestCase.assertEquals(TokenType.KEYWORD, keyword.type);
+ JUnitTestCase.assertEquals(Keyword.VAR, ((keyword as KeywordToken)).keyword);
JUnitTestCase.assertNull(result.type);
}
void test_parseFormalParameter_final_withType_named() {
@@ -1976,10 +1976,10 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (var i = 0;;) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(0, variables2.metadata);
- EngineTestCase.assertSize(1, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(0, variables.metadata);
+ EngineTestCase.assertSize(1, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNull(statement.condition);
@@ -1992,10 +1992,10 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (@A var i = 0;;) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(1, variables2.metadata);
- EngineTestCase.assertSize(1, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(1, variables.metadata);
+ EngineTestCase.assertSize(1, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNull(statement.condition);
@@ -2008,9 +2008,9 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (var i = 0; i < count;) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(1, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(1, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNotNull(statement.condition);
@@ -2023,9 +2023,9 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (var i = 0; i < count; i++) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(1, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(1, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNotNull(statement.condition);
@@ -2038,9 +2038,9 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (int i = 0, j = count; i < j; i++, j--) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(2, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(2, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNotNull(statement.condition);
@@ -2053,9 +2053,9 @@
ForStatement statement = ParserTestCase.parse5("parseForStatement", "for (var i = 0;; i++) {}", []);
JUnitTestCase.assertNotNull(statement.forKeyword);
JUnitTestCase.assertNotNull(statement.leftParenthesis);
- VariableDeclarationList variables2 = statement.variables;
- JUnitTestCase.assertNotNull(variables2);
- EngineTestCase.assertSize(1, variables2.variables);
+ VariableDeclarationList variables = statement.variables;
+ JUnitTestCase.assertNotNull(variables);
+ EngineTestCase.assertSize(1, variables.variables);
JUnitTestCase.assertNull(statement.initialization);
JUnitTestCase.assertNotNull(statement.leftSeparator);
JUnitTestCase.assertNull(statement.condition);
@@ -2298,11 +2298,11 @@
TypeName type = new TypeName.full(new SimpleIdentifier.full(null), null);
FieldDeclaration declaration = ParserTestCase.parse("parseInitializedIdentifierList", <Object> [commentAndMetadata(comment, []), staticKeyword, null, type], "a = 1, b, c = 3;");
JUnitTestCase.assertEquals(comment, declaration.documentationComment);
- VariableDeclarationList fields2 = declaration.fields;
- JUnitTestCase.assertNotNull(fields2);
- JUnitTestCase.assertNull(fields2.keyword);
- JUnitTestCase.assertEquals(type, fields2.type);
- EngineTestCase.assertSize(3, fields2.variables);
+ VariableDeclarationList fields = declaration.fields;
+ JUnitTestCase.assertNotNull(fields);
+ JUnitTestCase.assertNull(fields.keyword);
+ JUnitTestCase.assertEquals(type, fields.type);
+ EngineTestCase.assertSize(3, fields.variables);
JUnitTestCase.assertEquals(staticKeyword, declaration.keyword);
JUnitTestCase.assertNotNull(declaration.semicolon);
}
@@ -2312,18 +2312,18 @@
Token varKeyword = TokenFactory.token(Keyword.VAR);
FieldDeclaration declaration = ParserTestCase.parse("parseInitializedIdentifierList", <Object> [commentAndMetadata(comment, []), staticKeyword, varKeyword, null], "a = 1, b, c = 3;");
JUnitTestCase.assertEquals(comment, declaration.documentationComment);
- VariableDeclarationList fields2 = declaration.fields;
- JUnitTestCase.assertNotNull(fields2);
- JUnitTestCase.assertEquals(varKeyword, fields2.keyword);
- JUnitTestCase.assertNull(fields2.type);
- EngineTestCase.assertSize(3, fields2.variables);
+ VariableDeclarationList fields = declaration.fields;
+ JUnitTestCase.assertNotNull(fields);
+ JUnitTestCase.assertEquals(varKeyword, fields.keyword);
+ JUnitTestCase.assertNull(fields.type);
+ EngineTestCase.assertSize(3, fields.variables);
JUnitTestCase.assertEquals(staticKeyword, declaration.keyword);
JUnitTestCase.assertNotNull(declaration.semicolon);
}
void test_parseInstanceCreationExpression_qualifiedType() {
- Token token2 = TokenFactory.token(Keyword.NEW);
- InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token2], "A.B()");
- JUnitTestCase.assertEquals(token2, expression.keyword);
+ Token token = TokenFactory.token(Keyword.NEW);
+ InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token], "A.B()");
+ JUnitTestCase.assertEquals(token, expression.keyword);
ConstructorName name = expression.constructorName;
JUnitTestCase.assertNotNull(name);
JUnitTestCase.assertNotNull(name.type);
@@ -2332,9 +2332,9 @@
JUnitTestCase.assertNotNull(expression.argumentList);
}
void test_parseInstanceCreationExpression_qualifiedType_named() {
- Token token2 = TokenFactory.token(Keyword.NEW);
- InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token2], "A.B.c()");
- JUnitTestCase.assertEquals(token2, expression.keyword);
+ Token token = TokenFactory.token(Keyword.NEW);
+ InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token], "A.B.c()");
+ JUnitTestCase.assertEquals(token, expression.keyword);
ConstructorName name = expression.constructorName;
JUnitTestCase.assertNotNull(name);
JUnitTestCase.assertNotNull(name.type);
@@ -2343,9 +2343,9 @@
JUnitTestCase.assertNotNull(expression.argumentList);
}
void test_parseInstanceCreationExpression_type() {
- Token token2 = TokenFactory.token(Keyword.NEW);
- InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token2], "A()");
- JUnitTestCase.assertEquals(token2, expression.keyword);
+ Token token = TokenFactory.token(Keyword.NEW);
+ InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token], "A()");
+ JUnitTestCase.assertEquals(token, expression.keyword);
ConstructorName name = expression.constructorName;
JUnitTestCase.assertNotNull(name);
JUnitTestCase.assertNotNull(name.type);
@@ -2354,9 +2354,9 @@
JUnitTestCase.assertNotNull(expression.argumentList);
}
void test_parseInstanceCreationExpression_type_named() {
- Token token2 = TokenFactory.token(Keyword.NEW);
- InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token2], "A<B>.c()");
- JUnitTestCase.assertEquals(token2, expression.keyword);
+ Token token = TokenFactory.token(Keyword.NEW);
+ InstanceCreationExpression expression = ParserTestCase.parse("parseInstanceCreationExpression", <Object> [token], "A<B>.c()");
+ JUnitTestCase.assertEquals(token, expression.keyword);
ConstructorName name = expression.constructorName;
JUnitTestCase.assertNotNull(name);
JUnitTestCase.assertNotNull(name.type);
@@ -2381,20 +2381,20 @@
JUnitTestCase.assertEquals(name, identifier.name);
}
void test_parseListLiteral_empty_oneToken() {
- Token token2 = TokenFactory.token(Keyword.CONST);
+ Token token = TokenFactory.token(Keyword.CONST);
TypeArgumentList typeArguments = new TypeArgumentList.full(null, null, null);
- ListLiteral literal = ParserTestCase.parse("parseListLiteral", <Object> [token2, typeArguments], "[]");
- JUnitTestCase.assertEquals(token2, literal.modifier);
+ ListLiteral literal = ParserTestCase.parse("parseListLiteral", <Object> [token, typeArguments], "[]");
+ JUnitTestCase.assertEquals(token, literal.modifier);
JUnitTestCase.assertEquals(typeArguments, literal.typeArguments);
JUnitTestCase.assertNotNull(literal.leftBracket);
EngineTestCase.assertSize(0, literal.elements);
JUnitTestCase.assertNotNull(literal.rightBracket);
}
void test_parseListLiteral_empty_twoTokens() {
- Token token2 = TokenFactory.token(Keyword.CONST);
+ Token token = TokenFactory.token(Keyword.CONST);
TypeArgumentList typeArguments = new TypeArgumentList.full(null, null, null);
- ListLiteral literal = ParserTestCase.parse("parseListLiteral", <Object> [token2, typeArguments], "[ ]");
- JUnitTestCase.assertEquals(token2, literal.modifier);
+ ListLiteral literal = ParserTestCase.parse("parseListLiteral", <Object> [token, typeArguments], "[ ]");
+ JUnitTestCase.assertEquals(token, literal.modifier);
JUnitTestCase.assertEquals(typeArguments, literal.typeArguments);
JUnitTestCase.assertNotNull(literal.leftBracket);
EngineTestCase.assertSize(0, literal.elements);
@@ -2463,10 +2463,10 @@
JUnitTestCase.assertNotNull(expression.rightOperand);
}
void test_parseMapLiteral_empty() {
- Token token2 = TokenFactory.token(Keyword.CONST);
+ Token token = TokenFactory.token(Keyword.CONST);
TypeArgumentList typeArguments = ASTFactory.typeArgumentList([ASTFactory.typeName4("String", []), ASTFactory.typeName4("int", [])]);
- MapLiteral literal = ParserTestCase.parse("parseMapLiteral", <Object> [token2, typeArguments], "{}");
- JUnitTestCase.assertEquals(token2, literal.modifier);
+ MapLiteral literal = ParserTestCase.parse("parseMapLiteral", <Object> [token, typeArguments], "{}");
+ JUnitTestCase.assertEquals(token, literal.modifier);
JUnitTestCase.assertEquals(typeArguments, literal.typeArguments);
JUnitTestCase.assertNotNull(literal.leftBracket);
EngineTestCase.assertSize(0, literal.entries);
@@ -3050,22 +3050,22 @@
}
void test_parseStringLiteral_adjacent() {
AdjacentStrings literal = ParserTestCase.parse5("parseStringLiteral", "'a' 'b'", []);
- NodeList<StringLiteral> strings2 = literal.strings;
- EngineTestCase.assertSize(2, strings2);
- StringLiteral firstString = strings2[0];
- StringLiteral secondString = strings2[1];
+ NodeList<StringLiteral> strings = literal.strings;
+ EngineTestCase.assertSize(2, strings);
+ StringLiteral firstString = strings[0];
+ StringLiteral secondString = strings[1];
JUnitTestCase.assertEquals("a", ((firstString as SimpleStringLiteral)).value);
JUnitTestCase.assertEquals("b", ((secondString as SimpleStringLiteral)).value);
}
void test_parseStringLiteral_interpolated() {
StringInterpolation literal = ParserTestCase.parse5("parseStringLiteral", "'a \${b} c \$this d'", []);
- NodeList<InterpolationElement> elements2 = literal.elements;
- EngineTestCase.assertSize(5, elements2);
- JUnitTestCase.assertTrue(elements2[0] is InterpolationString);
- JUnitTestCase.assertTrue(elements2[1] is InterpolationExpression);
- JUnitTestCase.assertTrue(elements2[2] is InterpolationString);
- JUnitTestCase.assertTrue(elements2[3] is InterpolationExpression);
- JUnitTestCase.assertTrue(elements2[4] is InterpolationString);
+ NodeList<InterpolationElement> elements = literal.elements;
+ EngineTestCase.assertSize(5, elements);
+ JUnitTestCase.assertTrue(elements[0] is InterpolationString);
+ JUnitTestCase.assertTrue(elements[1] is InterpolationExpression);
+ JUnitTestCase.assertTrue(elements[2] is InterpolationString);
+ JUnitTestCase.assertTrue(elements[3] is InterpolationExpression);
+ JUnitTestCase.assertTrue(elements[4] is InterpolationString);
}
void test_parseStringLiteral_single() {
SimpleStringLiteral literal = ParserTestCase.parse5("parseStringLiteral", "'a'", []);
@@ -3142,9 +3142,9 @@
TryStatement statement = ParserTestCase.parse5("parseTryStatement", "try {} catch (e) {}", []);
JUnitTestCase.assertNotNull(statement.tryKeyword);
JUnitTestCase.assertNotNull(statement.body);
- NodeList<CatchClause> catchClauses2 = statement.catchClauses;
- EngineTestCase.assertSize(1, catchClauses2);
- CatchClause clause = catchClauses2[0];
+ NodeList<CatchClause> catchClauses = statement.catchClauses;
+ EngineTestCase.assertSize(1, catchClauses);
+ CatchClause clause = catchClauses[0];
JUnitTestCase.assertNull(clause.onKeyword);
JUnitTestCase.assertNull(clause.exceptionType);
JUnitTestCase.assertNotNull(clause.catchKeyword);
@@ -3159,9 +3159,9 @@
TryStatement statement = ParserTestCase.parse5("parseTryStatement", "try {} catch (e, s) {} finally {}", []);
JUnitTestCase.assertNotNull(statement.tryKeyword);
JUnitTestCase.assertNotNull(statement.body);
- NodeList<CatchClause> catchClauses2 = statement.catchClauses;
- EngineTestCase.assertSize(1, catchClauses2);
- CatchClause clause = catchClauses2[0];
+ NodeList<CatchClause> catchClauses = statement.catchClauses;
+ EngineTestCase.assertSize(1, catchClauses);
+ CatchClause clause = catchClauses[0];
JUnitTestCase.assertNull(clause.onKeyword);
JUnitTestCase.assertNull(clause.exceptionType);
JUnitTestCase.assertNotNull(clause.catchKeyword);
@@ -3192,9 +3192,9 @@
TryStatement statement = ParserTestCase.parse5("parseTryStatement", "try {} on Error {}", []);
JUnitTestCase.assertNotNull(statement.tryKeyword);
JUnitTestCase.assertNotNull(statement.body);
- NodeList<CatchClause> catchClauses2 = statement.catchClauses;
- EngineTestCase.assertSize(1, catchClauses2);
- CatchClause clause = catchClauses2[0];
+ NodeList<CatchClause> catchClauses = statement.catchClauses;
+ EngineTestCase.assertSize(1, catchClauses);
+ CatchClause clause = catchClauses[0];
JUnitTestCase.assertNotNull(clause.onKeyword);
JUnitTestCase.assertNotNull(clause.exceptionType);
JUnitTestCase.assertNull(clause.catchKeyword);
@@ -3209,9 +3209,9 @@
TryStatement statement = ParserTestCase.parse5("parseTryStatement", "try {} on Error catch (e, s) {}", []);
JUnitTestCase.assertNotNull(statement.tryKeyword);
JUnitTestCase.assertNotNull(statement.body);
- NodeList<CatchClause> catchClauses2 = statement.catchClauses;
- EngineTestCase.assertSize(1, catchClauses2);
- CatchClause clause = catchClauses2[0];
+ NodeList<CatchClause> catchClauses = statement.catchClauses;
+ EngineTestCase.assertSize(1, catchClauses);
+ CatchClause clause = catchClauses[0];
JUnitTestCase.assertNotNull(clause.onKeyword);
JUnitTestCase.assertNotNull(clause.exceptionType);
JUnitTestCase.assertNotNull(clause.catchKeyword);
@@ -3226,9 +3226,9 @@
TryStatement statement = ParserTestCase.parse5("parseTryStatement", "try {} on Error catch (e, s) {} finally {}", []);
JUnitTestCase.assertNotNull(statement.tryKeyword);
JUnitTestCase.assertNotNull(statement.body);
- NodeList<CatchClause> catchClauses2 = statement.catchClauses;
- EngineTestCase.assertSize(1, catchClauses2);
- CatchClause clause = catchClauses2[0];
+ NodeList<CatchClause> catchClauses = statement.catchClauses;
+ EngineTestCase.assertSize(1, catchClauses);
+ CatchClause clause = catchClauses[0];
JUnitTestCase.assertNotNull(clause.onKeyword);
JUnitTestCase.assertNotNull(clause.exceptionType);
JUnitTestCase.assertNotNull(clause.catchKeyword);
@@ -3407,9 +3407,9 @@
JUnitTestCase.assertNotNull(expression.operator);
JUnitTestCase.assertEquals(TokenType.MINUS_MINUS, expression.operator.type);
JUnitTestCase.assertNotNull(expression.operand);
- PropertyAccess operand2 = expression.operand as PropertyAccess;
- JUnitTestCase.assertTrue(operand2.target is SuperExpression);
- JUnitTestCase.assertEquals("x", operand2.propertyName.name);
+ PropertyAccess operand = expression.operand as PropertyAccess;
+ JUnitTestCase.assertTrue(operand.target is SuperExpression);
+ JUnitTestCase.assertEquals("x", operand.propertyName.name);
}
void test_parseUnaryExpression_increment_normal() {
PrefixExpression expression = ParserTestCase.parse5("parseUnaryExpression", "++x", []);
@@ -3422,18 +3422,18 @@
JUnitTestCase.assertNotNull(expression.operator);
JUnitTestCase.assertEquals(TokenType.PLUS_PLUS, expression.operator.type);
JUnitTestCase.assertNotNull(expression.operand);
- IndexExpression operand2 = expression.operand as IndexExpression;
- JUnitTestCase.assertTrue(operand2.realTarget is SuperExpression);
- JUnitTestCase.assertTrue(operand2.index is IntegerLiteral);
+ IndexExpression operand = expression.operand as IndexExpression;
+ JUnitTestCase.assertTrue(operand.realTarget is SuperExpression);
+ JUnitTestCase.assertTrue(operand.index is IntegerLiteral);
}
void test_parseUnaryExpression_increment_super_propertyAccess() {
PrefixExpression expression = ParserTestCase.parse5("parseUnaryExpression", "++super.x", []);
JUnitTestCase.assertNotNull(expression.operator);
JUnitTestCase.assertEquals(TokenType.PLUS_PLUS, expression.operator.type);
JUnitTestCase.assertNotNull(expression.operand);
- PropertyAccess operand2 = expression.operand as PropertyAccess;
- JUnitTestCase.assertTrue(operand2.target is SuperExpression);
- JUnitTestCase.assertEquals("x", operand2.propertyName.name);
+ PropertyAccess operand = expression.operand as PropertyAccess;
+ JUnitTestCase.assertTrue(operand.target is SuperExpression);
+ JUnitTestCase.assertEquals("x", operand.propertyName.name);
}
void test_parseUnaryExpression_minus_normal() {
PrefixExpression expression = ParserTestCase.parse5("parseUnaryExpression", "-x", []);
@@ -5973,14 +5973,14 @@
}
void test_cascade_withAssignment() {
CascadeExpression cascade = ParserTestCase.parseExpression("new Map()..[3] = 4 ..[0] = 11;", []);
- Expression target2 = cascade.target;
+ Expression target = cascade.target;
for (Expression section in cascade.cascadeSections) {
EngineTestCase.assertInstanceOf(AssignmentExpression, section);
Expression lhs = ((section as AssignmentExpression)).leftHandSide;
EngineTestCase.assertInstanceOf(IndexExpression, lhs);
IndexExpression index = lhs as IndexExpression;
JUnitTestCase.assertTrue(index.isCascaded());
- JUnitTestCase.assertSame(target2, index.realTarget);
+ JUnitTestCase.assertSame(target, index.realTarget);
}
}
void test_conditionalExpression_precedence_logicalOrExpression() {
@@ -5989,8 +5989,8 @@
}
void test_constructor_initializer_withParenthesizedExpression() {
CompilationUnit unit = ParserTestCase.parseCompilationUnit(EngineTestCase.createSource(["class C {", " C() :", " this.a = (b == null ? c : d) {", " }", "}"]), []);
- NodeList<CompilationUnitMember> declarations2 = unit.declarations;
- EngineTestCase.assertSize(1, declarations2);
+ NodeList<CompilationUnitMember> declarations = unit.declarations;
+ EngineTestCase.assertSize(1, declarations);
}
void test_equalityExpression_normal() {
BinaryExpression expression = ParserTestCase.parseExpression("x == y != z", []);
@@ -6298,13 +6298,13 @@
* @param node the AST node being validated
*/
void validate(ASTNode node) {
- ASTNode parent2 = node.parent;
+ ASTNode parent = node.parent;
if (node is CompilationUnit) {
- if (parent2 != null) {
+ if (parent != null) {
_errors.add("Compilation units should not have a parent");
}
} else {
- if (parent2 == null) {
+ if (parent == null) {
_errors.add("No parent for ${node.runtimeType.toString()}");
}
}
@@ -6319,15 +6319,15 @@
if (nodeStart < 0 || nodeLength < 0) {
_errors.add("No source info for ${node.runtimeType.toString()}");
}
- if (parent2 != null) {
+ if (parent != null) {
int nodeEnd = nodeStart + nodeLength;
- int parentStart = parent2.offset;
- int parentEnd = parentStart + parent2.length;
+ int parentStart = parent.offset;
+ int parentEnd = parentStart + parent.length;
if (nodeStart < parentStart) {
- _errors.add("Invalid source start (${nodeStart}) for ${node.runtimeType.toString()} inside ${parent2.runtimeType.toString()} (${parentStart})");
+ _errors.add("Invalid source start (${nodeStart}) for ${node.runtimeType.toString()} inside ${parent.runtimeType.toString()} (${parentStart})");
}
if (nodeEnd > parentEnd) {
- _errors.add("Invalid source end (${nodeEnd}) for ${node.runtimeType.toString()} inside ${parent2.runtimeType.toString()} (${parentStart})");
+ _errors.add("Invalid source end (${nodeEnd}) for ${node.runtimeType.toString()} inside ${parent.runtimeType.toString()} (${parentStart})");
}
}
}
@@ -6805,15 +6805,15 @@
CompilationUnit unit = ParserTestCase.parseCompilationUnit("class Bar<T extends Foo> {m(x){if (x is ) return;if (x is !)}}", [ParserErrorCode.EXPECTED_TYPE_NAME, ParserErrorCode.EXPECTED_TYPE_NAME, ParserErrorCode.MISSING_STATEMENT]);
ClassDeclaration declaration = unit.declarations[0] as ClassDeclaration;
MethodDeclaration method = declaration.members[0] as MethodDeclaration;
- BlockFunctionBody body2 = method.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[1] as IfStatement;
+ BlockFunctionBody body = method.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[1] as IfStatement;
IsExpression expression = ifStatement.condition as IsExpression;
JUnitTestCase.assertNotNull(expression.expression);
JUnitTestCase.assertNotNull(expression.isOperator);
JUnitTestCase.assertNotNull(expression.notOperator);
- TypeName type2 = expression.type;
- JUnitTestCase.assertNotNull(type2);
- JUnitTestCase.assertTrue(type2.name.isSynthetic());
+ TypeName type = expression.type;
+ JUnitTestCase.assertNotNull(type);
+ JUnitTestCase.assertTrue(type.name.isSynthetic());
EngineTestCase.assertInstanceOf(EmptyStatement, ifStatement.thenStatement);
}
void test_logicalAndExpression_missing_LHS() {
@@ -6963,9 +6963,9 @@
}
void test_typedef_eof() {
CompilationUnit unit = ParserTestCase.parseCompilationUnit("typedef n", [ParserErrorCode.EXPECTED_TOKEN, ParserErrorCode.MISSING_TYPEDEF_PARAMETERS]);
- NodeList<CompilationUnitMember> declarations2 = unit.declarations;
- EngineTestCase.assertSize(1, declarations2);
- CompilationUnitMember member = declarations2[0];
+ NodeList<CompilationUnitMember> declarations = unit.declarations;
+ EngineTestCase.assertSize(1, declarations);
+ CompilationUnitMember member = declarations[0];
EngineTestCase.assertInstanceOf(FunctionTypeAlias, member);
}
static dartSuite() {
diff --git a/pkg/analyzer_experimental/test/generated/resolver_test.dart b/pkg/analyzer_experimental/test/generated/resolver_test.dart
index 77231c2..a4a9b6b 100644
--- a/pkg/analyzer_experimental/test/generated/resolver_test.dart
+++ b/pkg/analyzer_experimental/test/generated/resolver_test.dart
@@ -30,8 +30,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.thenStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -45,8 +45,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
}
@@ -57,8 +57,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[2] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[2] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeProvider.intType, variableName.propagatedType);
}
@@ -69,8 +69,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[2] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[2] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeProvider.doubleType, variableName.propagatedType);
}
@@ -83,8 +83,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ForEachStatement forStatement = body2.block.statements[0] as ForEachStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ForEachStatement forStatement = body.block.statements[0] as ForEachStatement;
ReturnStatement statement = ((forStatement.body as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -96,8 +96,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeProvider.intType, variableName.propagatedType);
}
@@ -106,8 +106,8 @@
LibraryElement library = resolve(source);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ExpressionStatement statement = body2.block.statements[1] as ExpressionStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ExpressionStatement statement = body.block.statements[1] as ExpressionStatement;
PrefixedIdentifier invocation = statement.expression as PrefixedIdentifier;
SimpleIdentifier variableName = invocation.prefix;
JUnitTestCase.assertSame(typeProvider.stringType, variableName.propagatedType);
@@ -121,8 +121,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[0] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[0] as ReturnStatement;
ConditionalExpression conditional = statement.expression as ConditionalExpression;
SimpleIdentifier variableName = conditional.thenExpression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -136,8 +136,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.thenStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -149,8 +149,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.thenStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(null, variableName.propagatedType);
@@ -164,8 +164,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.thenStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -179,8 +179,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
}
@@ -193,8 +193,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
}
@@ -205,8 +205,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[2] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.thenStatement as Block)).statements[0] as ReturnStatement;
MethodInvocation invocation = statement.expression as MethodInvocation;
JUnitTestCase.assertNotNull(invocation.methodName.element);
@@ -220,8 +220,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- WhileStatement whileStatement = body2.block.statements[0] as WhileStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ WhileStatement whileStatement = body.block.statements[0] as WhileStatement;
ReturnStatement statement = ((whileStatement.body as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -235,8 +235,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[0] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[0] as ReturnStatement;
ConditionalExpression conditional = statement.expression as ConditionalExpression;
SimpleIdentifier variableName = conditional.elseExpression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -250,8 +250,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.elseStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -265,8 +265,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- IfStatement ifStatement = body2.block.statements[0] as IfStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ IfStatement ifStatement = body.block.statements[0] as IfStatement;
ReturnStatement statement = ((ifStatement.elseStatement as Block)).statements[0] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
@@ -280,8 +280,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
}
@@ -294,8 +294,8 @@
ClassDeclaration classA = unit.declarations[0] as ClassDeclaration;
InterfaceType typeA = classA.element.type;
FunctionDeclaration function = unit.declarations[1] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier variableName = statement.expression as SimpleIdentifier;
JUnitTestCase.assertSame(typeA, variableName.propagatedType);
}
@@ -306,8 +306,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
IndexExpression indexExpression = statement.expression as IndexExpression;
JUnitTestCase.assertNull(indexExpression.propagatedType);
}
@@ -318,8 +318,8 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
IndexExpression indexExpression = statement.expression as IndexExpression;
JUnitTestCase.assertSame(typeProvider.intType, indexExpression.propagatedType);
}
@@ -330,15 +330,15 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier identifier = statement.expression as SimpleIdentifier;
- InterfaceType propagatedType2 = identifier.propagatedType as InterfaceType;
- JUnitTestCase.assertSame(typeProvider.mapType.element, propagatedType2.element);
- List<Type2> typeArguments2 = propagatedType2.typeArguments;
- EngineTestCase.assertLength(2, typeArguments2);
- JUnitTestCase.assertSame(typeProvider.dynamicType, typeArguments2[0]);
- JUnitTestCase.assertSame(typeProvider.dynamicType, typeArguments2[1]);
+ InterfaceType propagatedType = identifier.propagatedType as InterfaceType;
+ JUnitTestCase.assertSame(typeProvider.mapType.element, propagatedType.element);
+ List<Type2> typeArguments = propagatedType.typeArguments;
+ EngineTestCase.assertLength(2, typeArguments);
+ JUnitTestCase.assertSame(typeProvider.dynamicType, typeArguments[0]);
+ JUnitTestCase.assertSame(typeProvider.dynamicType, typeArguments[1]);
}
void test_mapLiteral_same() {
Source source = addSource(EngineTestCase.createSource(["f() {", " var v = {'a' : 0, 'b' : 1, 'c' : 2};", " return v;", "}"]));
@@ -347,15 +347,15 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration function = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = function.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[1] as ReturnStatement;
+ BlockFunctionBody body = function.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[1] as ReturnStatement;
SimpleIdentifier identifier = statement.expression as SimpleIdentifier;
- InterfaceType propagatedType2 = identifier.propagatedType as InterfaceType;
- JUnitTestCase.assertSame(typeProvider.mapType.element, propagatedType2.element);
- List<Type2> typeArguments2 = propagatedType2.typeArguments;
- EngineTestCase.assertLength(2, typeArguments2);
- JUnitTestCase.assertSame(typeProvider.stringType, typeArguments2[0]);
- JUnitTestCase.assertSame(typeProvider.intType, typeArguments2[1]);
+ InterfaceType propagatedType = identifier.propagatedType as InterfaceType;
+ JUnitTestCase.assertSame(typeProvider.mapType.element, propagatedType.element);
+ List<Type2> typeArguments = propagatedType.typeArguments;
+ EngineTestCase.assertLength(2, typeArguments);
+ JUnitTestCase.assertSame(typeProvider.stringType, typeArguments[0]);
+ JUnitTestCase.assertSame(typeProvider.intType, typeArguments[1]);
}
void test_query() {
Source source = addSource(EngineTestCase.createSource(["import 'dart:html';", "", "main() {", " var v1 = query('a');", " var v2 = query('A');", " var v3 = query('body:active');", " var v4 = query('button[foo=\"bar\"]');", " var v5 = query('div.class');", " var v6 = query('input#id');", " var v7 = query('select#id');", " // invocation of method", " var m1 = document.query('div');", " // unsupported currently", " var b1 = query('noSuchTag');", " var b2 = query('DART_EDITOR_NO_SUCH_TYPE');", " var b3 = query('body div');", " return [v1, v2, v3, v4, v5, v6, v7, m1, b1, b2, b3];", "}"]));
@@ -364,20 +364,20 @@
verify([source]);
CompilationUnit unit = resolveCompilationUnit(source, library);
FunctionDeclaration main = unit.declarations[0] as FunctionDeclaration;
- BlockFunctionBody body2 = main.functionExpression.body as BlockFunctionBody;
- ReturnStatement statement = body2.block.statements[11] as ReturnStatement;
- NodeList<Expression> elements2 = ((statement.expression as ListLiteral)).elements;
- JUnitTestCase.assertEquals("AnchorElement", elements2[0].propagatedType.name);
- JUnitTestCase.assertEquals("AnchorElement", elements2[1].propagatedType.name);
- JUnitTestCase.assertEquals("BodyElement", elements2[2].propagatedType.name);
- JUnitTestCase.assertEquals("ButtonElement", elements2[3].propagatedType.name);
- JUnitTestCase.assertEquals("DivElement", elements2[4].propagatedType.name);
- JUnitTestCase.assertEquals("InputElement", elements2[5].propagatedType.name);
- JUnitTestCase.assertEquals("SelectElement", elements2[6].propagatedType.name);
- JUnitTestCase.assertEquals("DivElement", elements2[7].propagatedType.name);
- JUnitTestCase.assertEquals("Element", elements2[8].propagatedType.name);
- JUnitTestCase.assertEquals("Element", elements2[9].propagatedType.name);
- JUnitTestCase.assertEquals("Element", elements2[10].propagatedType.name);
+ BlockFunctionBody body = main.functionExpression.body as BlockFunctionBody;
+ ReturnStatement statement = body.block.statements[11] as ReturnStatement;
+ NodeList<Expression> elements = ((statement.expression as ListLiteral)).elements;
+ JUnitTestCase.assertEquals("AnchorElement", elements[0].propagatedType.name);
+ JUnitTestCase.assertEquals("AnchorElement", elements[1].propagatedType.name);
+ JUnitTestCase.assertEquals("BodyElement", elements[2].propagatedType.name);
+ JUnitTestCase.assertEquals("ButtonElement", elements[3].propagatedType.name);
+ JUnitTestCase.assertEquals("DivElement", elements[4].propagatedType.name);
+ JUnitTestCase.assertEquals("InputElement", elements[5].propagatedType.name);
+ JUnitTestCase.assertEquals("SelectElement", elements[6].propagatedType.name);
+ JUnitTestCase.assertEquals("DivElement", elements[7].propagatedType.name);
+ JUnitTestCase.assertEquals("Element", elements[8].propagatedType.name);
+ JUnitTestCase.assertEquals("Element", elements[9].propagatedType.name);
+ JUnitTestCase.assertEquals("Element", elements[10].propagatedType.name);
}
static dartSuite() {
_ut.group('TypePropagationTest', () {
@@ -2299,17 +2299,17 @@
void test_addExport() {
Library exportLibrary = library("/exported.dart");
_library5.addExport(ASTFactory.exportDirective2("exported.dart", []), exportLibrary);
- List<Library> exports2 = _library5.exports;
- EngineTestCase.assertLength(1, exports2);
- JUnitTestCase.assertSame(exportLibrary, exports2[0]);
+ List<Library> exports = _library5.exports;
+ EngineTestCase.assertLength(1, exports);
+ JUnitTestCase.assertSame(exportLibrary, exports[0]);
_errorListener.assertNoErrors();
}
void test_addImport() {
Library importLibrary = library("/imported.dart");
_library5.addImport(ASTFactory.importDirective2("imported.dart", null, []), importLibrary);
- List<Library> imports2 = _library5.imports;
- EngineTestCase.assertLength(1, imports2);
- JUnitTestCase.assertSame(importLibrary, imports2[0]);
+ List<Library> imports = _library5.imports;
+ EngineTestCase.assertLength(1, imports);
+ JUnitTestCase.assertSame(importLibrary, imports[0]);
_errorListener.assertNoErrors();
}
void test_getExplicitlyImportsCore() {
@@ -2879,17 +2879,17 @@
}
void test_visitCatchClause_exception() {
CatchClause clause = ASTFactory.catchClause("e", []);
- SimpleIdentifier exceptionParameter2 = clause.exceptionParameter;
- exceptionParameter2.element = new LocalVariableElementImpl(exceptionParameter2);
+ SimpleIdentifier exceptionParameter = clause.exceptionParameter;
+ exceptionParameter.element = new LocalVariableElementImpl(exceptionParameter);
resolve(clause, _typeProvider.objectType, null, []);
_listener.assertNoErrors();
}
void test_visitCatchClause_exception_stackTrace() {
CatchClause clause = ASTFactory.catchClause2("e", "s", []);
- SimpleIdentifier exceptionParameter2 = clause.exceptionParameter;
- exceptionParameter2.element = new LocalVariableElementImpl(exceptionParameter2);
- SimpleIdentifier stackTraceParameter2 = clause.stackTraceParameter;
- stackTraceParameter2.element = new LocalVariableElementImpl(stackTraceParameter2);
+ SimpleIdentifier exceptionParameter = clause.exceptionParameter;
+ exceptionParameter.element = new LocalVariableElementImpl(exceptionParameter);
+ SimpleIdentifier stackTraceParameter = clause.stackTraceParameter;
+ stackTraceParameter.element = new LocalVariableElementImpl(stackTraceParameter);
resolve(clause, _typeProvider.objectType, _typeProvider.stackTraceType, []);
_listener.assertNoErrors();
}
@@ -2897,8 +2897,8 @@
ClassElement exceptionElement = ElementFactory.classElement2("E", []);
TypeName exceptionType = ASTFactory.typeName(exceptionElement, []);
CatchClause clause = ASTFactory.catchClause4(exceptionType, "e", []);
- SimpleIdentifier exceptionParameter2 = clause.exceptionParameter;
- exceptionParameter2.element = new LocalVariableElementImpl(exceptionParameter2);
+ SimpleIdentifier exceptionParameter = clause.exceptionParameter;
+ exceptionParameter.element = new LocalVariableElementImpl(exceptionParameter);
resolve(clause, exceptionElement.type, null, [exceptionElement]);
_listener.assertNoErrors();
}
@@ -2907,10 +2907,10 @@
TypeName exceptionType = ASTFactory.typeName(exceptionElement, []);
((exceptionType.name as SimpleIdentifier)).element = exceptionElement;
CatchClause clause = ASTFactory.catchClause5(exceptionType, "e", "s", []);
- SimpleIdentifier exceptionParameter2 = clause.exceptionParameter;
- exceptionParameter2.element = new LocalVariableElementImpl(exceptionParameter2);
- SimpleIdentifier stackTraceParameter2 = clause.stackTraceParameter;
- stackTraceParameter2.element = new LocalVariableElementImpl(stackTraceParameter2);
+ SimpleIdentifier exceptionParameter = clause.exceptionParameter;
+ exceptionParameter.element = new LocalVariableElementImpl(exceptionParameter);
+ SimpleIdentifier stackTraceParameter = clause.stackTraceParameter;
+ stackTraceParameter.element = new LocalVariableElementImpl(stackTraceParameter);
resolve(clause, exceptionElement.type, _typeProvider.stackTraceType, [exceptionElement]);
_listener.assertNoErrors();
}
@@ -2919,19 +2919,19 @@
ClassElement elementB = ElementFactory.classElement2("B", []);
ClassElement elementC = ElementFactory.classElement2("C", []);
ClassElement elementD = ElementFactory.classElement2("D", []);
- ExtendsClause extendsClause2 = ASTFactory.extendsClause(ASTFactory.typeName(elementB, []));
- WithClause withClause2 = ASTFactory.withClause([ASTFactory.typeName(elementC, [])]);
- ImplementsClause implementsClause2 = ASTFactory.implementsClause([ASTFactory.typeName(elementD, [])]);
- ClassDeclaration declaration = ASTFactory.classDeclaration(null, "A", null, extendsClause2, withClause2, implementsClause2, []);
+ ExtendsClause extendsClause = ASTFactory.extendsClause(ASTFactory.typeName(elementB, []));
+ WithClause withClause = ASTFactory.withClause([ASTFactory.typeName(elementC, [])]);
+ ImplementsClause implementsClause = ASTFactory.implementsClause([ASTFactory.typeName(elementD, [])]);
+ ClassDeclaration declaration = ASTFactory.classDeclaration(null, "A", null, extendsClause, withClause, implementsClause, []);
declaration.name.element = elementA;
resolveNode(declaration, [elementA, elementB, elementC, elementD]);
JUnitTestCase.assertSame(elementB.type, elementA.supertype);
- List<InterfaceType> mixins2 = elementA.mixins;
- EngineTestCase.assertLength(1, mixins2);
- JUnitTestCase.assertSame(elementC.type, mixins2[0]);
- List<InterfaceType> interfaces2 = elementA.interfaces;
- EngineTestCase.assertLength(1, interfaces2);
- JUnitTestCase.assertSame(elementD.type, interfaces2[0]);
+ List<InterfaceType> mixins = elementA.mixins;
+ EngineTestCase.assertLength(1, mixins);
+ JUnitTestCase.assertSame(elementC.type, mixins[0]);
+ List<InterfaceType> interfaces = elementA.interfaces;
+ EngineTestCase.assertLength(1, interfaces);
+ JUnitTestCase.assertSame(elementD.type, interfaces[0]);
_listener.assertNoErrors();
}
void test_visitClassTypeAlias() {
@@ -2939,18 +2939,18 @@
ClassElement elementB = ElementFactory.classElement2("B", []);
ClassElement elementC = ElementFactory.classElement2("C", []);
ClassElement elementD = ElementFactory.classElement2("D", []);
- WithClause withClause2 = ASTFactory.withClause([ASTFactory.typeName(elementC, [])]);
- ImplementsClause implementsClause2 = ASTFactory.implementsClause([ASTFactory.typeName(elementD, [])]);
- ClassTypeAlias alias = ASTFactory.classTypeAlias("A", null, null, ASTFactory.typeName(elementB, []), withClause2, implementsClause2);
+ WithClause withClause = ASTFactory.withClause([ASTFactory.typeName(elementC, [])]);
+ ImplementsClause implementsClause = ASTFactory.implementsClause([ASTFactory.typeName(elementD, [])]);
+ ClassTypeAlias alias = ASTFactory.classTypeAlias("A", null, null, ASTFactory.typeName(elementB, []), withClause, implementsClause);
alias.name.element = elementA;
resolveNode(alias, [elementA, elementB, elementC, elementD]);
JUnitTestCase.assertSame(elementB.type, elementA.supertype);
- List<InterfaceType> mixins2 = elementA.mixins;
- EngineTestCase.assertLength(1, mixins2);
- JUnitTestCase.assertSame(elementC.type, mixins2[0]);
- List<InterfaceType> interfaces2 = elementA.interfaces;
- EngineTestCase.assertLength(1, interfaces2);
- JUnitTestCase.assertSame(elementD.type, interfaces2[0]);
+ List<InterfaceType> mixins = elementA.mixins;
+ EngineTestCase.assertLength(1, mixins);
+ JUnitTestCase.assertSame(elementC.type, mixins[0]);
+ List<InterfaceType> interfaces = elementA.interfaces;
+ EngineTestCase.assertLength(1, interfaces);
+ JUnitTestCase.assertSame(elementD.type, interfaces[0]);
_listener.assertNoErrors();
}
void test_visitSimpleFormalParameter_noType() {
@@ -2960,30 +2960,30 @@
_listener.assertNoErrors();
}
void test_visitSimpleFormalParameter_type() {
- InterfaceType intType2 = _typeProvider.intType;
- ClassElement intElement = intType2.element;
+ InterfaceType intType = _typeProvider.intType;
+ ClassElement intElement = intType.element;
FormalParameter node = ASTFactory.simpleFormalParameter4(ASTFactory.typeName(intElement, []), "p");
- SimpleIdentifier identifier2 = node.identifier;
- ParameterElementImpl element = new ParameterElementImpl(identifier2);
- identifier2.element = element;
- JUnitTestCase.assertSame(intType2, resolve6(node, [intElement]));
+ SimpleIdentifier identifier = node.identifier;
+ ParameterElementImpl element = new ParameterElementImpl(identifier);
+ identifier.element = element;
+ JUnitTestCase.assertSame(intType, resolve6(node, [intElement]));
_listener.assertNoErrors();
}
void test_visitTypeName_noParameters_noArguments() {
ClassElement classA = ElementFactory.classElement2("A", []);
- TypeName typeName2 = ASTFactory.typeName(classA, []);
- typeName2.type = null;
- resolveNode(typeName2, [classA]);
- JUnitTestCase.assertSame(classA.type, typeName2.type);
+ TypeName typeName = ASTFactory.typeName(classA, []);
+ typeName.type = null;
+ resolveNode(typeName, [classA]);
+ JUnitTestCase.assertSame(classA.type, typeName.type);
_listener.assertNoErrors();
}
void test_visitTypeName_parameters_arguments() {
ClassElement classA = ElementFactory.classElement2("A", ["E"]);
ClassElement classB = ElementFactory.classElement2("B", []);
- TypeName typeName2 = ASTFactory.typeName(classA, [ASTFactory.typeName(classB, [])]);
- typeName2.type = null;
- resolveNode(typeName2, [classA, classB]);
- InterfaceType resultType = typeName2.type as InterfaceType;
+ TypeName typeName = ASTFactory.typeName(classA, [ASTFactory.typeName(classB, [])]);
+ typeName.type = null;
+ resolveNode(typeName, [classA, classB]);
+ InterfaceType resultType = typeName.type as InterfaceType;
JUnitTestCase.assertSame(classA, resultType.element);
List<Type2> resultArguments = resultType.typeArguments;
EngineTestCase.assertLength(1, resultArguments);
@@ -2992,10 +2992,10 @@
}
void test_visitTypeName_parameters_noArguments() {
ClassElement classA = ElementFactory.classElement2("A", ["E"]);
- TypeName typeName2 = ASTFactory.typeName(classA, []);
- typeName2.type = null;
- resolveNode(typeName2, [classA]);
- InterfaceType resultType = typeName2.type as InterfaceType;
+ TypeName typeName = ASTFactory.typeName(classA, []);
+ typeName.type = null;
+ resolveNode(typeName, [classA]);
+ InterfaceType resultType = typeName.type as InterfaceType;
JUnitTestCase.assertSame(classA, resultType.element);
List<Type2> resultArguments = resultType.typeArguments;
EngineTestCase.assertLength(1, resultArguments);
@@ -3022,13 +3022,13 @@
*/
void resolve(CatchClause node, InterfaceType exceptionType, InterfaceType stackTraceType, List<Element> definedElements) {
resolveNode(node, definedElements);
- SimpleIdentifier exceptionParameter2 = node.exceptionParameter;
- if (exceptionParameter2 != null) {
- JUnitTestCase.assertSame(exceptionType, exceptionParameter2.staticType);
+ SimpleIdentifier exceptionParameter = node.exceptionParameter;
+ if (exceptionParameter != null) {
+ JUnitTestCase.assertSame(exceptionType, exceptionParameter.staticType);
}
- SimpleIdentifier stackTraceParameter2 = node.stackTraceParameter;
- if (stackTraceParameter2 != null) {
- JUnitTestCase.assertSame(stackTraceType, stackTraceParameter2.staticType);
+ SimpleIdentifier stackTraceParameter = node.stackTraceParameter;
+ if (stackTraceParameter != null) {
+ JUnitTestCase.assertSame(stackTraceType, stackTraceParameter.staticType);
}
}
@@ -6404,16 +6404,16 @@
return super.visitPrefixedIdentifier(node);
}
Object visitSimpleIdentifier(SimpleIdentifier node) {
- ASTNode parent2 = node.parent;
- if (parent2 is MethodInvocation && identical(node, ((parent2 as MethodInvocation)).methodName)) {
+ ASTNode parent = node.parent;
+ if (parent is MethodInvocation && identical(node, ((parent as MethodInvocation)).methodName)) {
return null;
- } else if (parent2 is RedirectingConstructorInvocation && identical(node, ((parent2 as RedirectingConstructorInvocation)).constructorName)) {
+ } else if (parent is RedirectingConstructorInvocation && identical(node, ((parent as RedirectingConstructorInvocation)).constructorName)) {
return null;
- } else if (parent2 is SuperConstructorInvocation && identical(node, ((parent2 as SuperConstructorInvocation)).constructorName)) {
+ } else if (parent is SuperConstructorInvocation && identical(node, ((parent as SuperConstructorInvocation)).constructorName)) {
return null;
- } else if (parent2 is ConstructorName && identical(node, ((parent2 as ConstructorName)).name)) {
+ } else if (parent is ConstructorName && identical(node, ((parent as ConstructorName)).name)) {
return null;
- } else if (parent2 is ConstructorFieldInitializer && identical(node, ((parent2 as ConstructorFieldInitializer)).fieldName)) {
+ } else if (parent is ConstructorFieldInitializer && identical(node, ((parent as ConstructorFieldInitializer)).fieldName)) {
return null;
} else if (node.element is PrefixElement) {
return null;
@@ -6430,9 +6430,9 @@
}
String getFileName(ASTNode node) {
if (node != null) {
- ASTNode root2 = node.root;
- if (root2 is CompilationUnit) {
- CompilationUnit rootCU = (root2 as CompilationUnit);
+ ASTNode root = node.root;
+ if (root is CompilationUnit) {
+ CompilationUnit rootCU = (root as CompilationUnit);
if (rootCU.element != null) {
return rootCU.element.source.fullName;
} else {
@@ -6634,9 +6634,9 @@
_resolver = createResolver();
}
void test_lookUpMethodInInterfaces() {
- InterfaceType intType2 = _typeProvider.intType;
+ InterfaceType intType = _typeProvider.intType;
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- MethodElement operator = ElementFactory.methodElement("[]", intType2, [intType2]);
+ MethodElement operator = ElementFactory.methodElement("[]", intType, [intType]);
classA.methods = <MethodElement> [operator];
ClassElementImpl classB = ElementFactory.classElement2("B", []);
classB.interfaces = <InterfaceType> [classA.type];
@@ -6650,9 +6650,9 @@
_listener.assertNoErrors();
}
void test_visitAssignmentExpression_compound() {
- InterfaceType intType2 = _typeProvider.intType;
+ InterfaceType intType = _typeProvider.intType;
SimpleIdentifier leftHandSide = ASTFactory.identifier3("a");
- leftHandSide.staticType = intType2;
+ leftHandSide.staticType = intType;
AssignmentExpression assignment = ASTFactory.assignmentExpression(leftHandSide, TokenType.PLUS_EQ, ASTFactory.integer(1));
resolveNode(assignment, []);
JUnitTestCase.assertSame(getMethod(_typeProvider.numType, "+"), assignment.element);
@@ -6665,12 +6665,12 @@
_listener.assertNoErrors();
}
void test_visitBinaryExpression() {
- InterfaceType numType2 = _typeProvider.numType;
+ InterfaceType numType = _typeProvider.numType;
SimpleIdentifier left = ASTFactory.identifier3("i");
- left.staticType = numType2;
+ left.staticType = numType;
BinaryExpression expression = ASTFactory.binaryExpression(left, TokenType.PLUS, ASTFactory.identifier3("j"));
resolveNode(expression, []);
- JUnitTestCase.assertEquals(getMethod(numType2, "+"), expression.element);
+ JUnitTestCase.assertEquals(getMethod(numType, "+"), expression.element);
_listener.assertNoErrors();
}
void test_visitBreakStatement_withLabel() {
@@ -6724,14 +6724,14 @@
_listener.assertNoErrors();
}
void test_visitFieldFormalParameter() {
- InterfaceType intType2 = _typeProvider.intType;
+ InterfaceType intType = _typeProvider.intType;
String fieldName = "f";
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- classA.fields = <FieldElement> [ElementFactory.fieldElement(fieldName, false, false, false, intType2)];
+ classA.fields = <FieldElement> [ElementFactory.fieldElement(fieldName, false, false, false, intType)];
FieldFormalParameter parameter = ASTFactory.fieldFormalParameter2(fieldName);
parameter.identifier.element = ElementFactory.fieldFormalParameter(parameter.identifier);
resolveInClass(parameter, classA);
- JUnitTestCase.assertSame(intType2, parameter.element.type);
+ JUnitTestCase.assertSame(intType, parameter.element.type);
}
void test_visitImportDirective_noCombinators_noPrefix() {
ImportDirective directive = ASTFactory.importDirective2(null, null, []);
@@ -6750,8 +6750,8 @@
}
void test_visitIndexExpression_get() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- InterfaceType intType2 = _typeProvider.intType;
- MethodElement getter = ElementFactory.methodElement("[]", intType2, [intType2]);
+ InterfaceType intType = _typeProvider.intType;
+ MethodElement getter = ElementFactory.methodElement("[]", intType, [intType]);
classA.methods = <MethodElement> [getter];
SimpleIdentifier array = ASTFactory.identifier3("a");
array.staticType = classA.type;
@@ -6761,8 +6761,8 @@
}
void test_visitIndexExpression_set() {
ClassElementImpl classA = ElementFactory.classElement2("A", []);
- InterfaceType intType2 = _typeProvider.intType;
- MethodElement setter = ElementFactory.methodElement("[]=", intType2, [intType2]);
+ InterfaceType intType = _typeProvider.intType;
+ MethodElement setter = ElementFactory.methodElement("[]=", intType, [intType]);
classA.methods = <MethodElement> [setter];
SimpleIdentifier array = ASTFactory.identifier3("a");
array.staticType = classA.type;
@@ -6812,13 +6812,13 @@
_listener.assertNoErrors();
}
void test_visitMethodInvocation() {
- InterfaceType numType2 = _typeProvider.numType;
+ InterfaceType numType = _typeProvider.numType;
SimpleIdentifier left = ASTFactory.identifier3("i");
- left.staticType = numType2;
+ left.staticType = numType;
String methodName = "abs";
MethodInvocation invocation = ASTFactory.methodInvocation(left, methodName, []);
resolveNode(invocation, []);
- JUnitTestCase.assertSame(getMethod(numType2, methodName), invocation.methodName.element);
+ JUnitTestCase.assertSame(getMethod(numType, methodName), invocation.methodName.element);
_listener.assertNoErrors();
}
void test_visitMethodInvocation_namedParameter() {
@@ -6838,25 +6838,25 @@
_listener.assertNoErrors();
}
void test_visitPostfixExpression() {
- InterfaceType numType2 = _typeProvider.numType;
+ InterfaceType numType = _typeProvider.numType;
SimpleIdentifier operand = ASTFactory.identifier3("i");
- operand.staticType = numType2;
+ operand.staticType = numType;
PostfixExpression expression = ASTFactory.postfixExpression(operand, TokenType.PLUS_PLUS);
resolveNode(expression, []);
- JUnitTestCase.assertEquals(getMethod(numType2, "+"), expression.element);
+ JUnitTestCase.assertEquals(getMethod(numType, "+"), expression.element);
_listener.assertNoErrors();
}
void test_visitPrefixedIdentifier_dynamic() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
SimpleIdentifier target = ASTFactory.identifier3("a");
VariableElementImpl variable = ElementFactory.localVariableElement(target);
- variable.type = dynamicType2;
+ variable.type = dynamicType;
target.element = variable;
- target.staticType = dynamicType2;
- PrefixedIdentifier identifier2 = ASTFactory.identifier(target, ASTFactory.identifier3("b"));
- resolveNode(identifier2, []);
- JUnitTestCase.assertNull(identifier2.element);
- JUnitTestCase.assertNull(identifier2.identifier.element);
+ target.staticType = dynamicType;
+ PrefixedIdentifier identifier = ASTFactory.identifier(target, ASTFactory.identifier3("b"));
+ resolveNode(identifier, []);
+ JUnitTestCase.assertNull(identifier.element);
+ JUnitTestCase.assertNull(identifier.identifier.element);
_listener.assertNoErrors();
}
void test_visitPrefixedIdentifier_nonDynamic() {
@@ -6869,19 +6869,19 @@
variable.type = classA.type;
target.element = variable;
target.staticType = classA.type;
- PrefixedIdentifier identifier2 = ASTFactory.identifier(target, ASTFactory.identifier3(getterName));
- resolveNode(identifier2, []);
- JUnitTestCase.assertSame(getter, identifier2.element);
- JUnitTestCase.assertSame(getter, identifier2.identifier.element);
+ PrefixedIdentifier identifier = ASTFactory.identifier(target, ASTFactory.identifier3(getterName));
+ resolveNode(identifier, []);
+ JUnitTestCase.assertSame(getter, identifier.element);
+ JUnitTestCase.assertSame(getter, identifier.identifier.element);
_listener.assertNoErrors();
}
void test_visitPrefixExpression() {
- InterfaceType numType2 = _typeProvider.numType;
+ InterfaceType numType = _typeProvider.numType;
SimpleIdentifier operand = ASTFactory.identifier3("i");
- operand.staticType = numType2;
+ operand.staticType = numType;
PrefixExpression expression = ASTFactory.prefixExpression(TokenType.PLUS_PLUS, operand);
resolveNode(expression, []);
- JUnitTestCase.assertEquals(getMethod(numType2, "+"), expression.element);
+ JUnitTestCase.assertEquals(getMethod(numType, "+"), expression.element);
_listener.assertNoErrors();
}
void test_visitPropertyAccess_getter_identifier() {
@@ -6923,11 +6923,11 @@
_listener.assertNoErrors();
}
void test_visitSimpleIdentifier_classScope() {
- InterfaceType doubleType2 = _typeProvider.doubleType;
+ InterfaceType doubleType = _typeProvider.doubleType;
String fieldName = "NAN";
SimpleIdentifier node = ASTFactory.identifier3(fieldName);
- resolveInClass(node, doubleType2.element);
- JUnitTestCase.assertEquals(getGetter(doubleType2, fieldName), node.element);
+ resolveInClass(node, doubleType.element);
+ JUnitTestCase.assertEquals(getGetter(doubleType, fieldName), node.element);
_listener.assertNoErrors();
}
void test_visitSimpleIdentifier_lexicalScope() {
@@ -6937,18 +6937,18 @@
_listener.assertNoErrors();
}
void test_visitSimpleIdentifier_lexicalScope_field_setter() {
- InterfaceType intType2 = _typeProvider.intType;
+ InterfaceType intType = _typeProvider.intType;
ClassElementImpl classA = ElementFactory.classElement2("A", []);
String fieldName = "a";
- FieldElement field = ElementFactory.fieldElement(fieldName, false, false, false, intType2);
+ FieldElement field = ElementFactory.fieldElement(fieldName, false, false, false, intType);
classA.fields = <FieldElement> [field];
classA.accessors = <PropertyAccessorElement> [field.getter, field.setter];
SimpleIdentifier node = ASTFactory.identifier3(fieldName);
ASTFactory.assignmentExpression(node, TokenType.EQ, ASTFactory.integer(0));
resolveInClass(node, classA);
- Element element2 = node.element;
- EngineTestCase.assertInstanceOf(PropertyAccessorElement, element2);
- JUnitTestCase.assertTrue(((element2 as PropertyAccessorElement)).isSetter());
+ Element element = node.element;
+ EngineTestCase.assertInstanceOf(PropertyAccessorElement, element);
+ JUnitTestCase.assertTrue(((element as PropertyAccessorElement)).isSetter());
_listener.assertNoErrors();
}
void test_visitSuperConstructorInvocation() {
@@ -7301,19 +7301,19 @@
void test_getType_enclosedOverride() {
TypeOverrideManager manager = new TypeOverrideManager();
LocalVariableElementImpl element = ElementFactory.localVariableElement2("v");
- InterfaceType type2 = ElementFactory.classElement2("C", []).type;
+ InterfaceType type = ElementFactory.classElement2("C", []).type;
manager.enterScope();
- manager.setType(element, type2);
+ manager.setType(element, type);
manager.enterScope();
- JUnitTestCase.assertSame(type2, manager.getType(element));
+ JUnitTestCase.assertSame(type, manager.getType(element));
}
void test_getType_immediateOverride() {
TypeOverrideManager manager = new TypeOverrideManager();
LocalVariableElementImpl element = ElementFactory.localVariableElement2("v");
- InterfaceType type2 = ElementFactory.classElement2("C", []).type;
+ InterfaceType type = ElementFactory.classElement2("C", []).type;
manager.enterScope();
- manager.setType(element, type2);
- JUnitTestCase.assertSame(type2, manager.getType(element));
+ manager.setType(element, type);
+ JUnitTestCase.assertSame(type, manager.getType(element));
}
void test_getType_noOverride() {
TypeOverrideManager manager = new TypeOverrideManager();
@@ -7997,7 +7997,7 @@
verify([source]);
}
void test_newWithNonType() {
- Source source = addSource(EngineTestCase.createSource(["var A = 0;", "void f() {", " A a = new A();", "}"]));
+ Source source = addSource(EngineTestCase.createSource(["var A = 0;", "void f() {", " var a = new A();", "}"]));
resolve(source);
assertErrors([StaticWarningCode.NEW_WITH_NON_TYPE]);
verify([source]);
@@ -8109,6 +8109,12 @@
assertErrors([StaticWarningCode.NON_VOID_RETURN_FOR_SETTER]);
verify([source]);
}
+ void test_notAType() {
+ Source source = addSource(EngineTestCase.createSource(["f() {}", "main() {", " f v = null;", "}"]));
+ resolve(source);
+ assertErrors([StaticWarningCode.NOT_A_TYPE]);
+ verify([source]);
+ }
void test_notEnoughRequiredArguments() {
Source source = addSource(EngineTestCase.createSource(["f(int a, String b) {}", "main() {", " f();", "}"]));
resolve(source);
@@ -8619,6 +8625,10 @@
final __test = new StaticWarningCodeTest();
runJUnitTest(__test, __test.test_nonVoidReturnForSetter_method);
});
+ _ut.test('test_notAType', () {
+ final __test = new StaticWarningCodeTest();
+ runJUnitTest(__test, __test.test_notAType);
+ });
_ut.test('test_notEnoughRequiredArguments', () {
final __test = new StaticWarningCodeTest();
runJUnitTest(__test, __test.test_notEnoughRequiredArguments);
@@ -8969,17 +8979,17 @@
*/
static AnalysisContextImpl contextWithCore() {
AnalysisContextImpl sdkContext = DirectoryBasedDartSdk.defaultSdk.context as AnalysisContextImpl;
- SourceFactory sourceFactory2 = sdkContext.sourceFactory;
+ SourceFactory sourceFactory = sdkContext.sourceFactory;
TestTypeProvider provider = new TestTypeProvider();
CompilationUnitElementImpl coreUnit = new CompilationUnitElementImpl("core.dart");
- Source coreSource = sourceFactory2.forUri(DartSdk.DART_CORE);
+ Source coreSource = sourceFactory.forUri(DartSdk.DART_CORE);
sdkContext.setContents(coreSource, "");
coreUnit.source = coreSource;
coreUnit.types = <ClassElement> [provider.boolType.element, provider.doubleType.element, provider.functionType.element, provider.intType.element, provider.listType.element, provider.mapType.element, provider.numType.element, provider.objectType.element, provider.stackTraceType.element, provider.stringType.element, provider.typeType.element];
LibraryElementImpl coreLibrary = new LibraryElementImpl(sdkContext, ASTFactory.libraryIdentifier2(["dart", "core"]));
coreLibrary.definingCompilationUnit = coreUnit;
CompilationUnitElementImpl htmlUnit = new CompilationUnitElementImpl("html_dartium.dart");
- Source htmlSource = sourceFactory2.forUri(DartSdk.DART_HTML);
+ Source htmlSource = sourceFactory.forUri(DartSdk.DART_HTML);
sdkContext.setContents(htmlSource, "");
htmlUnit.source = htmlSource;
ClassElementImpl elementElement = ElementFactory.classElement2("Element", []);
@@ -8999,8 +9009,8 @@
elementMap[htmlSource] = htmlLibrary;
sdkContext.recordLibraryElements(elementMap);
AnalysisContextImpl context = new DelegatingAnalysisContextImpl();
- sourceFactory2 = new SourceFactory.con2([new DartUriResolver(sdkContext.sourceFactory.dartSdk), new FileUriResolver()]);
- context.sourceFactory = sourceFactory2;
+ sourceFactory = new SourceFactory.con2([new DartUriResolver(sdkContext.sourceFactory.dartSdk), new FileUriResolver()]);
+ context.sourceFactory = sourceFactory;
return context;
}
}
@@ -9032,10 +9042,10 @@
Element element = scope.lookup(ASTFactory.identifier3(typeNameB), importingLibrary);
errorListener.assertErrors2([CompileTimeErrorCode.AMBIGUOUS_IMPORT]);
EngineTestCase.assertInstanceOf(MultiplyDefinedElement, element);
- List<Element> conflictingElements2 = ((element as MultiplyDefinedElement)).conflictingElements;
- JUnitTestCase.assertEquals(typeB1, conflictingElements2[0]);
- JUnitTestCase.assertEquals(typeB2, conflictingElements2[1]);
- JUnitTestCase.assertEquals(2, conflictingElements2.length);
+ List<Element> conflictingElements = ((element as MultiplyDefinedElement)).conflictingElements;
+ JUnitTestCase.assertEquals(typeB1, conflictingElements[0]);
+ JUnitTestCase.assertEquals(typeB2, conflictingElements[1]);
+ JUnitTestCase.assertEquals(2, conflictingElements.length);
}
{
GatheringErrorListener errorListener = new GatheringErrorListener();
@@ -9224,11 +9234,11 @@
}
Object visitImportDirective(ImportDirective node) {
checkResolved2(node, node.element, ImportElement);
- SimpleIdentifier prefix2 = node.prefix;
- if (prefix2 == null) {
+ SimpleIdentifier prefix = node.prefix;
+ if (prefix == null) {
return null;
}
- return checkResolved2(prefix2, prefix2.element, PrefixElement);
+ return checkResolved2(prefix, prefix.element, PrefixElement);
}
Object visitIndexExpression(IndexExpression node) {
node.visitChildren(this);
@@ -9275,9 +9285,9 @@
}
String getFileName(ASTNode node) {
if (node != null) {
- ASTNode root2 = node.root;
- if (root2 is CompilationUnit) {
- CompilationUnit rootCU = (root2 as CompilationUnit);
+ ASTNode root = node.root;
+ if (root is CompilationUnit) {
+ CompilationUnit rootCU = (root as CompilationUnit);
if (rootCU.element != null) {
return rootCU.element.source.fullName;
} else {
@@ -9411,19 +9421,19 @@
_listener.assertNoErrors();
}
void test_visitAssignmentExpression_compound() {
- InterfaceType numType2 = _typeProvider.numType;
+ InterfaceType numType = _typeProvider.numType;
SimpleIdentifier identifier = resolvedVariable(_typeProvider.intType, "i");
AssignmentExpression node = ASTFactory.assignmentExpression(identifier, TokenType.PLUS_EQ, resolvedInteger(1));
- MethodElement plusMethod = getMethod(numType2, "+");
+ MethodElement plusMethod = getMethod(numType, "+");
node.staticElement = plusMethod;
node.element = plusMethod;
- JUnitTestCase.assertSame(numType2, analyze(node));
+ JUnitTestCase.assertSame(numType, analyze(node));
_listener.assertNoErrors();
}
void test_visitAssignmentExpression_simple() {
- InterfaceType intType2 = _typeProvider.intType;
- Expression node = ASTFactory.assignmentExpression(resolvedVariable(intType2, "i"), TokenType.EQ, resolvedInteger(0));
- JUnitTestCase.assertSame(intType2, analyze(node));
+ InterfaceType intType = _typeProvider.intType;
+ Expression node = ASTFactory.assignmentExpression(resolvedVariable(intType, "i"), TokenType.EQ, resolvedInteger(0));
+ JUnitTestCase.assertSame(intType, analyze(node));
_listener.assertNoErrors();
}
void test_visitBinaryExpression_equals() {
@@ -9501,181 +9511,181 @@
_listener.assertNoErrors();
}
void test_visitFunctionExpression_named_block() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.namedFormalParameter(ASTFactory.simpleFormalParameter3("p1"), resolvedInteger(0));
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.namedFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.blockFunctionBody([]));
analyze3(p1);
analyze3(p2);
Type2 resultType = analyze(node);
Map<String, Type2> expectedNamedTypes = new Map<String, Type2>();
- expectedNamedTypes["p1"] = dynamicType2;
- expectedNamedTypes["p2"] = dynamicType2;
- assertFunctionType(dynamicType2, null, null, expectedNamedTypes, resultType);
+ expectedNamedTypes["p1"] = dynamicType;
+ expectedNamedTypes["p2"] = dynamicType;
+ assertFunctionType(dynamicType, null, null, expectedNamedTypes, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_named_expression() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p = ASTFactory.namedFormalParameter(ASTFactory.simpleFormalParameter3("p"), resolvedInteger(0));
- setType(p, dynamicType2);
+ setType(p, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p]), ASTFactory.expressionFunctionBody(resolvedInteger(0)));
analyze3(p);
Type2 resultType = analyze(node);
Map<String, Type2> expectedNamedTypes = new Map<String, Type2>();
- expectedNamedTypes["p"] = dynamicType2;
+ expectedNamedTypes["p"] = dynamicType;
assertFunctionType(_typeProvider.intType, null, null, expectedNamedTypes, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normal_block() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.simpleFormalParameter3("p1");
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.simpleFormalParameter3("p2");
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.blockFunctionBody([]));
analyze3(p1);
analyze3(p2);
Type2 resultType = analyze(node);
- assertFunctionType(dynamicType2, <Type2> [dynamicType2, dynamicType2], null, null, resultType);
+ assertFunctionType(dynamicType, <Type2> [dynamicType, dynamicType], null, null, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normal_expression() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p = ASTFactory.simpleFormalParameter3("p");
- setType(p, dynamicType2);
+ setType(p, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p]), ASTFactory.expressionFunctionBody(resolvedInteger(0)));
analyze3(p);
Type2 resultType = analyze(node);
- assertFunctionType(_typeProvider.intType, <Type2> [dynamicType2], null, null, resultType);
+ assertFunctionType(_typeProvider.intType, <Type2> [dynamicType], null, null, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normalAndNamed_block() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.simpleFormalParameter3("p1");
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.namedFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.blockFunctionBody([]));
analyze3(p2);
Type2 resultType = analyze(node);
Map<String, Type2> expectedNamedTypes = new Map<String, Type2>();
- expectedNamedTypes["p2"] = dynamicType2;
- assertFunctionType(dynamicType2, <Type2> [dynamicType2], null, expectedNamedTypes, resultType);
+ expectedNamedTypes["p2"] = dynamicType;
+ assertFunctionType(dynamicType, <Type2> [dynamicType], null, expectedNamedTypes, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normalAndNamed_expression() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.simpleFormalParameter3("p1");
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.namedFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.expressionFunctionBody(resolvedInteger(0)));
analyze3(p2);
Type2 resultType = analyze(node);
Map<String, Type2> expectedNamedTypes = new Map<String, Type2>();
- expectedNamedTypes["p2"] = dynamicType2;
- assertFunctionType(_typeProvider.intType, <Type2> [dynamicType2], null, expectedNamedTypes, resultType);
+ expectedNamedTypes["p2"] = dynamicType;
+ assertFunctionType(_typeProvider.intType, <Type2> [dynamicType], null, expectedNamedTypes, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normalAndPositional_block() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.simpleFormalParameter3("p1");
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.positionalFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.blockFunctionBody([]));
analyze3(p1);
analyze3(p2);
Type2 resultType = analyze(node);
- assertFunctionType(dynamicType2, <Type2> [dynamicType2], <Type2> [dynamicType2], null, resultType);
+ assertFunctionType(dynamicType, <Type2> [dynamicType], <Type2> [dynamicType], null, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_normalAndPositional_expression() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.simpleFormalParameter3("p1");
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.positionalFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.expressionFunctionBody(resolvedInteger(0)));
analyze3(p1);
analyze3(p2);
Type2 resultType = analyze(node);
- assertFunctionType(_typeProvider.intType, <Type2> [dynamicType2], <Type2> [dynamicType2], null, resultType);
+ assertFunctionType(_typeProvider.intType, <Type2> [dynamicType], <Type2> [dynamicType], null, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_positional_block() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p1 = ASTFactory.positionalFormalParameter(ASTFactory.simpleFormalParameter3("p1"), resolvedInteger(0));
- setType(p1, dynamicType2);
+ setType(p1, dynamicType);
FormalParameter p2 = ASTFactory.positionalFormalParameter(ASTFactory.simpleFormalParameter3("p2"), resolvedInteger(0));
- setType(p2, dynamicType2);
+ setType(p2, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p1, p2]), ASTFactory.blockFunctionBody([]));
analyze3(p1);
analyze3(p2);
Type2 resultType = analyze(node);
- assertFunctionType(dynamicType2, null, <Type2> [dynamicType2, dynamicType2], null, resultType);
+ assertFunctionType(dynamicType, null, <Type2> [dynamicType, dynamicType], null, resultType);
_listener.assertNoErrors();
}
void test_visitFunctionExpression_positional_expression() {
- Type2 dynamicType2 = _typeProvider.dynamicType;
+ Type2 dynamicType = _typeProvider.dynamicType;
FormalParameter p = ASTFactory.positionalFormalParameter(ASTFactory.simpleFormalParameter3("p"), resolvedInteger(0));
- setType(p, dynamicType2);
+ setType(p, dynamicType);
FunctionExpression node = resolvedFunctionExpression(ASTFactory.formalParameterList([p]), ASTFactory.expressionFunctionBody(resolvedInteger(0)));
analyze3(p);
Type2 resultType = analyze(node);
- assertFunctionType(_typeProvider.intType, null, <Type2> [dynamicType2], null, resultType);
+ assertFunctionType(_typeProvider.intType, null, <Type2> [dynamicType], null, resultType);
_listener.assertNoErrors();
}
void test_visitIndexExpression_getter() {
- InterfaceType listType2 = _typeProvider.listType;
- SimpleIdentifier identifier = resolvedVariable(listType2, "a");
+ InterfaceType listType = _typeProvider.listType;
+ SimpleIdentifier identifier = resolvedVariable(listType, "a");
IndexExpression node = ASTFactory.indexExpression(identifier, resolvedInteger(2));
- MethodElement indexMethod = listType2.element.methods[0];
+ MethodElement indexMethod = listType.element.methods[0];
node.staticElement = indexMethod;
node.element = indexMethod;
- JUnitTestCase.assertSame(listType2.typeArguments[0], analyze(node));
+ JUnitTestCase.assertSame(listType.typeArguments[0], analyze(node));
_listener.assertNoErrors();
}
void test_visitIndexExpression_setter() {
- InterfaceType listType2 = _typeProvider.listType;
- SimpleIdentifier identifier = resolvedVariable(listType2, "a");
+ InterfaceType listType = _typeProvider.listType;
+ SimpleIdentifier identifier = resolvedVariable(listType, "a");
IndexExpression node = ASTFactory.indexExpression(identifier, resolvedInteger(2));
- MethodElement indexMethod = listType2.element.methods[1];
+ MethodElement indexMethod = listType.element.methods[1];
node.staticElement = indexMethod;
node.element = indexMethod;
ASTFactory.assignmentExpression(node, TokenType.EQ, ASTFactory.integer(0));
- JUnitTestCase.assertSame(listType2.typeArguments[0], analyze(node));
+ JUnitTestCase.assertSame(listType.typeArguments[0], analyze(node));
_listener.assertNoErrors();
}
void test_visitIndexExpression_typeParameters() {
- InterfaceType intType2 = _typeProvider.intType;
- InterfaceType listType2 = _typeProvider.listType;
- MethodElement methodElement = getMethod(listType2, "[]");
+ InterfaceType intType = _typeProvider.intType;
+ InterfaceType listType = _typeProvider.listType;
+ MethodElement methodElement = getMethod(listType, "[]");
SimpleIdentifier identifier = ASTFactory.identifier3("list");
- InterfaceType listOfIntType = listType2.substitute5(<Type2> [intType2]);
+ InterfaceType listOfIntType = listType.substitute5(<Type2> [intType]);
identifier.staticType = listOfIntType;
- IndexExpression indexExpression2 = ASTFactory.indexExpression(identifier, ASTFactory.integer(0));
+ IndexExpression indexExpression = ASTFactory.indexExpression(identifier, ASTFactory.integer(0));
MethodElement indexMethod = MethodMember.from(methodElement, listOfIntType);
- indexExpression2.staticElement = indexMethod;
- indexExpression2.element = indexMethod;
- JUnitTestCase.assertSame(intType2, analyze(indexExpression2));
+ indexExpression.staticElement = indexMethod;
+ indexExpression.element = indexMethod;
+ JUnitTestCase.assertSame(intType, analyze(indexExpression));
_listener.assertNoErrors();
}
void test_visitIndexExpression_typeParameters_inSetterContext() {
- InterfaceType intType2 = _typeProvider.intType;
- InterfaceType listType2 = _typeProvider.listType;
- MethodElement methodElement = getMethod(listType2, "[]=");
+ InterfaceType intType = _typeProvider.intType;
+ InterfaceType listType = _typeProvider.listType;
+ MethodElement methodElement = getMethod(listType, "[]=");
SimpleIdentifier identifier = ASTFactory.identifier3("list");
- InterfaceType listOfIntType = listType2.substitute5(<Type2> [intType2]);
+ InterfaceType listOfIntType = listType.substitute5(<Type2> [intType]);
identifier.staticType = listOfIntType;
- IndexExpression indexExpression2 = ASTFactory.indexExpression(identifier, ASTFactory.integer(0));
+ IndexExpression indexExpression = ASTFactory.indexExpression(identifier, ASTFactory.integer(0));
MethodElement indexMethod = MethodMember.from(methodElement, listOfIntType);
- indexExpression2.staticElement = indexMethod;
- indexExpression2.element = indexMethod;
- ASTFactory.assignmentExpression(indexExpression2, TokenType.EQ, ASTFactory.integer(0));
- JUnitTestCase.assertSame(intType2, analyze(indexExpression2));
+ indexExpression.staticElement = indexMethod;
+ indexExpression.element = indexMethod;
+ ASTFactory.assignmentExpression(indexExpression, TokenType.EQ, ASTFactory.integer(0));
+ JUnitTestCase.assertSame(intType, analyze(indexExpression));
_listener.assertNoErrors();
}
void test_visitInstanceCreationExpression_named() {
@@ -9699,9 +9709,9 @@
FunctionTypeImpl constructorType = new FunctionTypeImpl.con1(constructor);
constructorType.returnType = elementC.type;
constructor.type = constructorType;
- TypeName typeName2 = ASTFactory.typeName(elementC, [ASTFactory.typeName(elementI, [])]);
- typeName2.type = elementC.type.substitute5(<Type2> [elementI.type]);
- InstanceCreationExpression node = ASTFactory.instanceCreationExpression2(null, typeName2, []);
+ TypeName typeName = ASTFactory.typeName(elementC, [ASTFactory.typeName(elementI, [])]);
+ typeName.type = elementC.type.substitute5(<Type2> [elementI.type]);
+ InstanceCreationExpression node = ASTFactory.instanceCreationExpression2(null, typeName, []);
node.element = constructor;
InterfaceType interfaceType = analyze(node) as InterfaceType;
List<Type2> typeArgs = interfaceType.typeArguments;
@@ -9786,20 +9796,20 @@
_listener.assertNoErrors();
}
void test_visitPrefixedIdentifier_getter() {
- Type2 boolType2 = _typeProvider.boolType;
- PropertyAccessorElementImpl getter = ElementFactory.getterElement("b", false, boolType2);
+ Type2 boolType = _typeProvider.boolType;
+ PropertyAccessorElementImpl getter = ElementFactory.getterElement("b", false, boolType);
PrefixedIdentifier node = ASTFactory.identifier5("a", "b");
node.identifier.element = getter;
- JUnitTestCase.assertSame(boolType2, analyze(node));
+ JUnitTestCase.assertSame(boolType, analyze(node));
_listener.assertNoErrors();
}
void test_visitPrefixedIdentifier_setter() {
- Type2 boolType2 = _typeProvider.boolType;
- FieldElementImpl field = ElementFactory.fieldElement("b", false, false, false, boolType2);
- PropertyAccessorElement setter2 = field.setter;
+ Type2 boolType = _typeProvider.boolType;
+ FieldElementImpl field = ElementFactory.fieldElement("b", false, false, false, boolType);
+ PropertyAccessorElement setter = field.setter;
PrefixedIdentifier node = ASTFactory.identifier5("a", "b");
- node.identifier.element = setter2;
- JUnitTestCase.assertSame(boolType2, analyze(node));
+ node.identifier.element = setter;
+ JUnitTestCase.assertSame(boolType, analyze(node));
_listener.assertNoErrors();
}
void test_visitPrefixedIdentifier_variable() {
@@ -9853,20 +9863,20 @@
_listener.assertNoErrors();
}
void test_visitPropertyAccess_getter() {
- Type2 boolType2 = _typeProvider.boolType;
- PropertyAccessorElementImpl getter = ElementFactory.getterElement("b", false, boolType2);
+ Type2 boolType = _typeProvider.boolType;
+ PropertyAccessorElementImpl getter = ElementFactory.getterElement("b", false, boolType);
PropertyAccess node = ASTFactory.propertyAccess2(ASTFactory.identifier3("a"), "b");
node.propertyName.element = getter;
- JUnitTestCase.assertSame(boolType2, analyze(node));
+ JUnitTestCase.assertSame(boolType, analyze(node));
_listener.assertNoErrors();
}
void test_visitPropertyAccess_setter() {
- Type2 boolType2 = _typeProvider.boolType;
- FieldElementImpl field = ElementFactory.fieldElement("b", false, false, false, boolType2);
- PropertyAccessorElement setter2 = field.setter;
+ Type2 boolType = _typeProvider.boolType;
+ FieldElementImpl field = ElementFactory.fieldElement("b", false, false, false, boolType);
+ PropertyAccessorElement setter = field.setter;
PropertyAccess node = ASTFactory.propertyAccess2(ASTFactory.identifier3("a"), "b");
- node.propertyName.element = setter2;
- JUnitTestCase.assertSame(boolType2, analyze(node));
+ node.propertyName.element = setter;
+ JUnitTestCase.assertSame(boolType, analyze(node));
_listener.assertNoErrors();
}
void test_visitSimpleStringLiteral() {
@@ -9985,10 +9995,10 @@
JUnitTestCase.assertEquals(expectedType.displayName, actualType.displayName);
JUnitTestCase.assertEquals(expectedType.element, actualType.element);
List<Type2> expectedArguments = expectedType.typeArguments;
- int length2 = expectedArguments.length;
+ int length = expectedArguments.length;
List<Type2> actualArguments = actualType.typeArguments;
- EngineTestCase.assertLength(length2, actualArguments);
- for (int i = 0; i < length2; i++) {
+ EngineTestCase.assertLength(length, actualArguments);
+ for (int i = 0; i < length; i++) {
assertType2(expectedArguments[i], actualArguments[i]);
}
}
@@ -10107,13 +10117,13 @@
* @param type the new type of the given parameter
*/
void setType(FormalParameter parameter, Type2 type2) {
- SimpleIdentifier identifier2 = parameter.identifier;
- Element element2 = identifier2.element;
- if (element2 is! ParameterElement) {
- element2 = new ParameterElementImpl(identifier2);
- identifier2.element = element2;
+ SimpleIdentifier identifier = parameter.identifier;
+ Element element = identifier.element;
+ if (element is! ParameterElement) {
+ element = new ParameterElementImpl(identifier);
+ identifier.element = element;
}
- ((element2 as ParameterElementImpl)).type = type2;
+ ((element as ParameterElementImpl)).type = type2;
}
static dartSuite() {
_ut.group('StaticTypeAnalyzerTest', () {
@@ -10537,9 +10547,9 @@
*/
void assertTypes(CompilationUnitElement unit, List<String> typeNames) {
JUnitTestCase.assertNotNull(unit);
- List<ClassElement> types2 = unit.types;
- EngineTestCase.assertLength(typeNames.length, types2);
- for (ClassElement type in types2) {
+ List<ClassElement> types = unit.types;
+ EngineTestCase.assertLength(typeNames.length, types);
+ for (ClassElement type in types) {
JUnitTestCase.assertNotNull(type);
String actualTypeName = type.displayName;
bool wasExpected = false;
@@ -11035,25 +11045,25 @@
LibraryElement library = resolve(source);
JUnitTestCase.assertNotNull(library);
ClassElement classElement = library.definingCompilationUnit.types[0];
- List<ParameterElement> parameters2 = classElement.methods[1].parameters;
+ List<ParameterElement> parameters = classElement.methods[1].parameters;
CompilationUnit unit = resolveCompilationUnit(source, library);
JUnitTestCase.assertNotNull(unit);
ClassDeclaration classDeclaration = unit.declarations[0] as ClassDeclaration;
MethodDeclaration methodDeclaration = (classDeclaration.members[0] as MethodDeclaration);
- Block block2 = ((methodDeclaration.body as BlockFunctionBody)).block;
- ExpressionStatement statement = block2.statements[0] as ExpressionStatement;
+ Block block = ((methodDeclaration.body as BlockFunctionBody)).block;
+ ExpressionStatement statement = block.statements[0] as ExpressionStatement;
MethodInvocation invocation = statement.expression as MethodInvocation;
- NodeList<Expression> arguments2 = invocation.argumentList.arguments;
- int argumentCount = arguments2.length;
+ NodeList<Expression> arguments = invocation.argumentList.arguments;
+ int argumentCount = arguments.length;
JUnitTestCase.assertEquals(indices.length, argumentCount);
for (int i = 0; i < argumentCount; i++) {
- Expression argument = arguments2[i];
+ Expression argument = arguments[i];
ParameterElement element = argument.staticParameterElement;
int index = indices[i];
if (index < 0) {
JUnitTestCase.assertNull(element);
} else {
- JUnitTestCase.assertSame(parameters2[index], element);
+ JUnitTestCase.assertSame(parameters[index], element);
}
}
}
diff --git a/pkg/analyzer_experimental/test/generated/scanner_test.dart b/pkg/analyzer_experimental/test/generated/scanner_test.dart
index 0484f0d..e9ff970 100644
--- a/pkg/analyzer_experimental/test/generated/scanner_test.dart
+++ b/pkg/analyzer_experimental/test/generated/scanner_test.dart
@@ -16,18 +16,18 @@
int keywordCount = keywords.length;
List<String> textToTest = new List<String>(keywordCount * 3);
for (int i = 0; i < keywordCount; i++) {
- String syntax2 = keywords[i].syntax;
- textToTest[i] = syntax2;
- textToTest[i + keywordCount] = "${syntax2}x";
- textToTest[i + keywordCount * 2] = syntax2.substring(0, syntax2.length - 1);
+ String syntax = keywords[i].syntax;
+ textToTest[i] = syntax;
+ textToTest[i + keywordCount] = "${syntax}x";
+ textToTest[i + keywordCount * 2] = syntax.substring(0, syntax.length - 1);
}
KeywordState firstState = KeywordState.KEYWORD_STATE;
for (int i = 0; i < textToTest.length; i++) {
String text = textToTest[i];
int index = 0;
- int length2 = text.length;
+ int length = text.length;
KeywordState state = firstState;
- while (index < length2 && state != null) {
+ while (index < length && state != null) {
state = state.next(text.codeUnitAt(index));
index++;
}
@@ -805,10 +805,10 @@
StringScanner scanner = new StringScanner(null, "a", listener);
scanner.setSourceStart(3, 9, offsetDelta);
scanner.tokenize();
- List<int> lineStarts2 = scanner.lineStarts;
- JUnitTestCase.assertNotNull(lineStarts2);
- JUnitTestCase.assertEquals(3, lineStarts2.length);
- JUnitTestCase.assertEquals(33, lineStarts2[2]);
+ List<int> lineStarts = scanner.lineStarts;
+ JUnitTestCase.assertNotNull(lineStarts);
+ JUnitTestCase.assertEquals(3, lineStarts.length);
+ JUnitTestCase.assertEquals(33, lineStarts[2]);
}
Token scan(String source, GatheringErrorListener listener) {
StringScanner scanner = new StringScanner(null, source, listener);
@@ -1499,8 +1499,8 @@
Token currentToken = token;
while (currentToken != null && currentToken.type != TokenType.EOF) {
validateStream(builder, currentToken.precedingComments);
- TokenType type2 = currentToken.type;
- if (identical(type2, TokenType.OPEN_CURLY_BRACKET) || identical(type2, TokenType.OPEN_PAREN) || identical(type2, TokenType.OPEN_SQUARE_BRACKET) || identical(type2, TokenType.STRING_INTERPOLATION_EXPRESSION)) {
+ TokenType type = currentToken.type;
+ if (identical(type, TokenType.OPEN_CURLY_BRACKET) || identical(type, TokenType.OPEN_PAREN) || identical(type, TokenType.OPEN_SQUARE_BRACKET) || identical(type, TokenType.STRING_INTERPOLATION_EXPRESSION)) {
if (currentToken is! BeginToken) {
builder.append("\r\nExpected BeginToken, found ");
builder.append(currentToken.runtimeType.toString());
@@ -1939,12 +1939,12 @@
}
void test_startAndEnd() {
Token token = scan2("a");
- Token previous2 = token.previous;
- JUnitTestCase.assertEquals(token, previous2.next);
- JUnitTestCase.assertEquals(previous2, previous2.previous);
- Token next2 = token.next;
- JUnitTestCase.assertEquals(next2, next2.next);
- JUnitTestCase.assertEquals(token, next2.previous);
+ Token previous = token.previous;
+ JUnitTestCase.assertEquals(token, previous.next);
+ JUnitTestCase.assertEquals(previous, previous.previous);
+ Token next = token.next;
+ JUnitTestCase.assertEquals(next, next.next);
+ JUnitTestCase.assertEquals(token, next.previous);
}
void test_string_multi_double() {
assertToken(TokenType.STRING, "\"\"\"multi-line\nstring\"\"\"");
@@ -2068,18 +2068,18 @@
JUnitTestCase.assertEquals(0, token.offset);
JUnitTestCase.assertEquals(source.length, token.length);
JUnitTestCase.assertEquals(source, token.lexeme);
- Object value2 = token.value();
- JUnitTestCase.assertTrue(value2 is Keyword);
- JUnitTestCase.assertEquals(source, ((value2 as Keyword)).syntax);
+ Object value = token.value();
+ JUnitTestCase.assertTrue(value is Keyword);
+ JUnitTestCase.assertEquals(source, ((value as Keyword)).syntax);
token = scan2(" ${source} ");
JUnitTestCase.assertNotNull(token);
JUnitTestCase.assertEquals(TokenType.KEYWORD, token.type);
JUnitTestCase.assertEquals(1, token.offset);
JUnitTestCase.assertEquals(source.length, token.length);
JUnitTestCase.assertEquals(source, token.lexeme);
- value2 = token.value();
- JUnitTestCase.assertTrue(value2 is Keyword);
- JUnitTestCase.assertEquals(source, ((value2 as Keyword)).syntax);
+ value = token.value();
+ JUnitTestCase.assertTrue(value is Keyword);
+ JUnitTestCase.assertEquals(source, ((value as Keyword)).syntax);
JUnitTestCase.assertEquals(TokenType.EOF, token.next.type);
}
void assertLineInfo(String source, List<AbstractScannerTest_ExpectedLocation> expectedLocations) {
diff --git a/pkg/analyzer_experimental/test/generated/test_support.dart b/pkg/analyzer_experimental/test/generated/test_support.dart
index e156318..ea44668 100644
--- a/pkg/analyzer_experimental/test/generated/test_support.dart
+++ b/pkg/analyzer_experimental/test/generated/test_support.dart
@@ -316,15 +316,15 @@
writer.print(expectedErrors.length);
writer.print(" errors:");
for (AnalysisError error in expectedErrors) {
- Source source2 = error.source;
- LineInfo lineInfo = _lineInfoMap[source2];
+ Source source = error.source;
+ LineInfo lineInfo = _lineInfoMap[source];
writer.newLine();
if (lineInfo == null) {
- int offset2 = error.offset;
- writer.printf(" %s %s (%d..%d)", [source2 == null ? "" : source2.shortName, error.errorCode, offset2, offset2 + error.length]);
+ int offset = error.offset;
+ writer.printf(" %s %s (%d..%d)", [source == null ? "" : source.shortName, error.errorCode, offset, offset + error.length]);
} else {
LineInfo_Location location = lineInfo.getLocation(error.offset);
- writer.printf(" %s %s (%d, %d/%d)", [source2 == null ? "" : source2.shortName, error.errorCode, location.lineNumber, location.columnNumber, error.length]);
+ writer.printf(" %s %s (%d, %d/%d)", [source == null ? "" : source.shortName, error.errorCode, location.lineNumber, location.columnNumber, error.length]);
}
}
writer.newLine();
@@ -332,15 +332,15 @@
writer.print(_errors.length);
writer.print(" errors:");
for (AnalysisError error in _errors) {
- Source source3 = error.source;
- LineInfo lineInfo = _lineInfoMap[source3];
+ Source source = error.source;
+ LineInfo lineInfo = _lineInfoMap[source];
writer.newLine();
if (lineInfo == null) {
- int offset3 = error.offset;
- writer.printf(" %s %s (%d..%d): %s", [source3 == null ? "" : source3.shortName, error.errorCode, offset3, offset3 + error.length, error.message]);
+ int offset = error.offset;
+ writer.printf(" %s %s (%d..%d): %s", [source == null ? "" : source.shortName, error.errorCode, offset, offset + error.length, error.message]);
} else {
LineInfo_Location location = lineInfo.getLocation(error.offset);
- writer.printf(" %s %s (%d, %d/%d): %s", [source3 == null ? "" : source3.shortName, error.errorCode, location.lineNumber, location.columnNumber, error.length, error.message]);
+ writer.printf(" %s %s (%d, %d/%d): %s", [source == null ? "" : source.shortName, error.errorCode, location.lineNumber, location.columnNumber, error.length, error.message]);
}
}
JUnitTestCase.fail(writer.toString());
@@ -388,6 +388,28 @@
}
/**
+ * Assert that the given array is non-{@code null} and contains the expected elements. The
+ * elements can appear in any order.
+ * @param array the array being tested
+ * @param expectedElements the expected elements
+ * @throws AssertionFailedError if the array is {@code null} or does not contain the expected
+ * elements
+ */
+ static void assertContains(List<Object> array, List<Object> expectedElements) {
+ int expectedSize = expectedElements.length;
+ if (array == null) {
+ JUnitTestCase.fail("Expected array of length ${expectedSize}; found null");
+ }
+ if (array.length != expectedSize) {
+ JUnitTestCase.fail("Expected array of length ${expectedSize}; contained ${array.length} elements");
+ }
+ List<bool> found = new List<bool>.filled(expectedSize, false);
+ for (int i = 0; i < expectedSize; i++) {
+ assertContains2(array, found, expectedElements[i]);
+ }
+ }
+
+ /**
* Assert that the array of actual values contain exactly the same values as those in the array of
* expected value, with the exception that the order of the elements is not required to be the
* same.
@@ -457,7 +479,7 @@
if (list.length != expectedSize) {
JUnitTestCase.fail("Expected list of size ${expectedSize}; contained ${list.length} elements");
}
- for (int i = 0; i < expectedElements.length; i++) {
+ for (int i = 0; i < expectedSize; i++) {
Object element = list[i];
Object expectedElement = expectedElements[i];
if (!element == expectedElement) {
@@ -481,7 +503,7 @@
if (array.length != expectedSize) {
JUnitTestCase.fail("Expected array of size ${expectedSize}; contained ${array.length} elements");
}
- for (int i = 0; i < expectedElements.length; i++) {
+ for (int i = 0; i < expectedSize; i++) {
Object element = array[i];
Object expectedElement = expectedElements[i];
if (!element == expectedElement) {
@@ -504,7 +526,7 @@
if (set.length != expectedSize) {
JUnitTestCase.fail("Expected list of size ${expectedSize}; contained ${set.length} elements");
}
- for (int i = 0; i < expectedElements.length; i++) {
+ for (int i = 0; i < expectedSize; i++) {
Object expectedElement = expectedElements[i];
if (!set.contains(expectedElement)) {
JUnitTestCase.fail("Expected ${expectedElement} in set${set}");
@@ -616,6 +638,29 @@
}
return writer.toString();
}
+ static void assertContains2(List<Object> array, List<bool> found, Object element) {
+ if (element == null) {
+ for (int i = 0; i < array.length; i++) {
+ if (!found[i]) {
+ if (array[i] == null) {
+ found[i] = true;
+ return;
+ }
+ }
+ }
+ JUnitTestCase.fail("Does not contain null");
+ } else {
+ for (int i = 0; i < array.length; i++) {
+ if (!found[i]) {
+ if (element == array[i]) {
+ found[i] = true;
+ return;
+ }
+ }
+ }
+ JUnitTestCase.fail("Does not contain ${element}");
+ }
+ }
/**
* Calculate the offset where the given strings differ.
diff --git a/pkg/analyzer_experimental/test/services/formatter_test.dart b/pkg/analyzer_experimental/test/services/formatter_test.dart
new file mode 100644
index 0000000..d88d2d9
--- /dev/null
+++ b/pkg/analyzer_experimental/test/services/formatter_test.dart
@@ -0,0 +1,62 @@
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'package:analyzer_experimental/src/generated/ast.dart';
+import 'package:analyzer_experimental/src/services/formatter.dart';
+import 'package:analyzer_experimental/src/services/formatter_impl.dart';
+import 'package:unittest/unittest.dart';
+
+main() {
+
+ /// Edit recorder tests
+ group('edit recorder', () {
+
+ test('countWhitespace', (){
+ expect(newRecorder(' ').countWhitespace(), equals(3));
+ expect(newRecorder('').countWhitespace(), equals(0));
+ expect(newRecorder(' foo').countWhitespace(), equals(2));
+ });
+
+ test('indent', (){
+ var recorder = newRecorder('');
+ expect(recorder.indentationLevel, equals(0));
+ expect(recorder.options.indentPerLevel, equals(2));
+ recorder.indent();
+ expect(recorder.indentationLevel, equals(2));
+ expect(recorder.numberOfIndentations, equals(1));
+ });
+
+ test('isNewlineAt', (){
+ expect(newRecorder('012\n').isNewlineAt(3), isTrue);
+ expect(newRecorder('012\n3456').isNewlineAt(3), isTrue);
+ expect(newRecorder('\n').isNewlineAt(0), isTrue);
+ });
+
+ });
+
+
+ /// Formatter tests
+ group('formatter', () {
+
+ test('failedParse', () {
+ var formatter = new CodeFormatter();
+ expect(() => formatter.format(CodeKind.COMPILATION_UNIT, "~"),
+ throwsA(new isInstanceOf<FormatterException>('FE')));
+ });
+
+// test('initialIndent', () {
+// var formatter = new CodeFormatter(new Options(initialIndentationLevel:2));
+// var formattedSource = formatter.format(CodeKind.STATEMENT, 'var x;');
+// expect(formattedSource, startsWith(' '));
+// });
+
+ });
+
+}
+
+EditRecorder newRecorder(String source) {
+ var recorder = new EditRecorder(new FormatterOptions());
+ recorder.source = source;
+ return recorder;
+}
diff --git a/pkg/analyzer_experimental/test/services/test_utils.dart b/pkg/analyzer_experimental/test/services/test_utils.dart
new file mode 100644
index 0000000..2128aaa
--- /dev/null
+++ b/pkg/analyzer_experimental/test/services/test_utils.dart
@@ -0,0 +1,215 @@
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+library test_utils;
+
+import 'dart:collection';
+
+import 'package:unittest/unittest.dart';
+
+import 'package:analyzer_experimental/src/generated/engine.dart' show AnalysisContext, AnalysisContextImpl;
+import 'package:analyzer_experimental/src/generated/source.dart';
+import 'package:analyzer_experimental/src/generated/error.dart';
+import 'package:analyzer_experimental/src/generated/scanner.dart';
+import 'package:analyzer_experimental/src/generated/ast.dart';
+import 'package:analyzer_experimental/src/generated/parser.dart';
+
+
+/// Instances of the class [_GatheringErrorListener] implement an error listener
+/// that collects all of the errors passed to it for later examination.
+class _GatheringErrorListener implements AnalysisErrorListener {
+
+ /// The source being parsed.
+ String _rawSource;
+
+ /// The source being parsed after inserting a marker at the beginning and end
+ /// of the range of the most recent error.
+ String _markedSource;
+
+ /// A list containing the errors that were collected.
+ final List<AnalysisError> _errors = new List<AnalysisError>();
+
+ /// A table mapping sources to the line information for the source.
+ final Map<Source, LineInfo> _lineInfoMap = new Map<Source, LineInfo>();
+
+ void onError(AnalysisError error) {
+ if (_rawSource != null) {
+ var left = error.offset;
+ var right = left + error.length - 1;
+ _markedSource = '${_rawSource.substring(0, left)}^${_rawSource.substring(left, right)}^${_rawSource.substring(right)}';
+ }
+ _errors.add(error);
+ }
+
+
+ /// Sets the line information associated with the given source to the given
+ /// information.
+ void setLineInfo(Source source, List<int> lineStarts) {
+ _lineInfoMap[source] = new LineInfo(lineStarts);
+ }
+
+
+ /// Asserts that the number of errors that have been gathered matches the
+ /// number of errors that are given and that they have the expected error
+ /// codes. The order in which the errors were gathered is ignored.
+ void expectErrors(List<ErrorCode> expectedErrorCodes) {
+ var builder = new StringBuffer();
+ var expectedCounts = new Map<ErrorCode, int>();
+
+ for (code in expectedErrorCodes) {
+ var count = expectedCounts[code];
+ if (count == null) {
+ count = 1;
+ } else {
+ count = count + 1;
+ }
+ expectedCounts[code] = count;
+ }
+
+ var errorsByCode = new Map<ErrorCode, List<AnalysisError>>();
+ for (error in _errors) {
+ var code = error.errorCode;
+ var list = errorsByCode[code];
+ if (list == null) {
+ list = new List<AnalysisError>();
+ errorsByCode[code] = list;
+ }
+ list.add(error);
+ }
+
+ for (entry in _getMapEntrySet(expectedCounts)) {
+ var code = entry.getKey();
+ var expectedCount = entry.getValue();
+ var actualCount;
+
+ var list = errorsByCode.remove(code);
+ if (list == null) {
+ actualCount = 0;
+ } else {
+ actualCount = list.length;
+ }
+
+ if (actualCount != expectedCount) {
+ if (builder.length == 0) {
+ builder.write('Expected ');
+ } else {
+ builder.write('; ');
+ }
+ builder.write(expectedCount);
+ builder.write(' errors of type ');
+ builder.write(code);
+ builder.write(', found ');
+ builder.write(actualCount);
+ }
+ }
+
+ for (entry in _getMapEntrySet(errorsByCode)) {
+ var code = entry.getKey();
+ var actualErrors = entry.getValue();
+ var actualCount = actualErrors.length;
+
+ if (builder.length == 0) {
+ builder.write('Expected ');
+ } else {
+ builder.write('; ');
+ }
+
+ builder.write('0 errors of type ');
+ builder.write(code);
+ builder.write(', found ');
+ builder.write(actualCount);
+ builder.write(' (');
+
+ for (int i = 0; i < actualErrors.length; i++) {
+ var error = actualErrors[i];
+ if (i > 0) {
+ builder.write(', ');
+ }
+ builder.write(error.offset);
+ }
+
+ builder.write(')');
+ }
+
+ if (builder.length > 0) {
+ fail(builder.toString());
+ }
+ }
+
+}
+
+
+Set<_MapEntry> _getMapEntrySet(Map m) {
+ var result = new Set();
+ m.forEach((k, v) {
+ result.add(new _MapEntry(k, v));
+ });
+ return result;
+}
+
+
+class _MapEntry<K, V> {
+ K _key;
+ V _value;
+ _MapEntry(this._key, this._value);
+ K getKey() => _key;
+ V getValue() => _value;
+}
+
+
+class _TestSource implements Source {
+
+ bool operator == (Object object) => object is _TestSource;
+
+ AnalysisContext get context => _unsupported();
+
+ void getContents(Source_ContentReceiver receiver) => _unsupported();
+
+ String get fullName => _unsupported();
+
+ String get shortName => _unsupported();
+
+ String get encoding => _unsupported();
+
+ int get modificationStamp =>_unsupported();
+
+ UriKind get uriKind => _unsupported();
+
+ bool exists() => true;
+
+ bool isInSystemLibrary() => _unsupported();
+
+ Source resolve(String uri) => _unsupported();
+
+ Source resolveRelative(Uri uri) => _unsupported();
+
+}
+
+
+_unsupported() => throw new _UnsupportedOperationException();
+
+class _UnsupportedOperationException implements Exception {
+ String toString() => 'UnsupportedOperationException';
+}
+
+
+/// Parse the given [source] as a statement and assert, if provided, that
+/// exactly a given set of [expectedErrorCodes] are encountered.
+Statement parseStatement(String source, [List<ErrorCode> expectedErrorCodes]) {
+
+ var listener = new _GatheringErrorListener();
+ var scanner = new StringScanner(null, source, listener);
+ listener.setLineInfo(new _TestSource(), scanner.lineStarts);
+
+ var token = scanner.tokenize();
+ var parser = new Parser(null, listener);
+ var statement = parser.parseStatement(token);
+ expect(statement, isNotNull);
+
+ if (?expectedErrorCodes) {
+ listener.expectErrors(expectedErrorCodes);
+ }
+
+ return statement;
+}
diff --git a/pkg/pathos/lib/path.dart b/pkg/pathos/lib/path.dart
index 80ffe72..6e7c8c2 100644
--- a/pkg/pathos/lib/path.dart
+++ b/pkg/pathos/lib/path.dart
@@ -31,13 +31,8 @@
* Inserts [length] elements in front of the [list] and fills them with the
* [fillValue].
*/
-void _growListFront(List list, int length, fillValue) {
- list.length += length;
- list.setRange(length, list.length, list);
- for (var i = 0; i < length; i++) {
- list[i] = fillValue;
- }
-}
+void _growListFront(List list, int length, fillValue) =>
+ list.insertAll(0, new List.filled(length, fillValue));
/// Gets the path to the current working directory.
String get current => io.Directory.current.path;
@@ -112,9 +107,17 @@
String rootPrefix(String path) => _builder.rootPrefix(path);
/// Returns `true` if [path] is an absolute path and `false` if it is a
-/// relative path. On POSIX systems, absolute paths start with a `/` (forward
-/// slash). On Windows, an absolute path starts with `\\`, or a drive letter
-/// followed by `:/` or `:\`.
+/// relative path.
+///
+/// On POSIX systems, absolute paths start with a `/` (forward slash). On
+/// Windows, an absolute path starts with `\\`, or a drive letter followed by
+/// `:/` or `:\`. For URLs, absolute paths either start with a protocol and
+/// optional hostname (e.g. `http://dartlang.org`, `file://`) or with a `/`.
+///
+/// URLs that start with `/` are known as "root-relative", since they're
+/// relative to the root of the current URL. Since root-relative paths are still
+/// absolute in every other sense, [isAbsolute] will return true for them. They
+/// can be detected using [isRootRelative].
bool isAbsolute(String path) => _builder.isAbsolute(path);
/// Returns `true` if [path] is a relative path and `false` if it is absolute.
@@ -123,6 +126,16 @@
/// `:/` or `:\`.
bool isRelative(String path) => _builder.isRelative(path);
+/// Returns `true` if [path] is a root-relative path and `false` if it's not.
+///
+/// URLs that start with `/` are known as "root-relative", since they're
+/// relative to the root of the current URL. Since root-relative paths are still
+/// absolute in every other sense, [isAbsolute] will return true for them. They
+/// can be detected using [isRootRelative].
+///
+/// No POSIX and Windows paths are root-relative.
+bool isRootRelative(String path) => _builder.isRootRelative(path);
+
/// Joins the given path parts into a single path using the current platform's
/// [separator]. Example:
///
@@ -340,9 +353,17 @@
}
/// Returns `true` if [path] is an absolute path and `false` if it is a
- /// relative path. On POSIX systems, absolute paths start with a `/` (forward
- /// slash). On Windows, an absolute path starts with `\\`, or a drive letter
- /// followed by `:/` or `:\`.
+ /// relative path.
+ ///
+ /// On POSIX systems, absolute paths start with a `/` (forward slash). On
+ /// Windows, an absolute path starts with `\\`, or a drive letter followed by
+ /// `:/` or `:\`. For URLs, absolute paths either start with a protocol and
+ /// optional hostname (e.g. `http://dartlang.org`, `file://`) or with a `/`.
+ ///
+ /// URLs that start with `/` are known as "root-relative", since they're
+ /// relative to the root of the current URL. Since root-relative paths are
+ /// still absolute in every other sense, [isAbsolute] will return true for
+ /// them. They can be detected using [isRootRelative].
bool isAbsolute(String path) => _parse(path).isAbsolute;
/// Returns `true` if [path] is a relative path and `false` if it is absolute.
@@ -351,6 +372,16 @@
/// `:/` or `:\`.
bool isRelative(String path) => !isAbsolute(path);
+ /// Returns `true` if [path] is a root-relative path and `false` if it's not.
+ ///
+ /// URLs that start with `/` are known as "root-relative", since they're
+ /// relative to the root of the current URL. Since root-relative paths are
+ /// still absolute in every other sense, [isAbsolute] will return true for
+ /// them. They can be detected using [isRootRelative].
+ ///
+ /// No POSIX and Windows paths are root-relative.
+ bool isRootRelative(String path) => _parse(path).isRootRelative;
+
/// Joins the given path parts into a single path. Example:
///
/// builder.join('path', 'to', 'foo'); // -> 'path/to/foo'
@@ -388,11 +419,20 @@
String joinAll(Iterable<String> parts) {
var buffer = new StringBuffer();
var needsSeparator = false;
+ var isAbsoluteAndNotRootRelative = false;
for (var part in parts) {
- if (this.isAbsolute(part)) {
+ if (this.isRootRelative(part) && isAbsoluteAndNotRootRelative) {
+ // If the new part is root-relative, it preserves the previous root but
+ // replaces the path after it.
+ var oldRoot = this.rootPrefix(buffer.toString());
+ buffer.clear();
+ buffer.write(oldRoot);
+ buffer.write(part);
+ } else if (this.isAbsolute(part)) {
+ isAbsoluteAndNotRootRelative = !this.isRootRelative(part);
// An absolute path discards everything before it.
- buffer = new StringBuffer();
+ buffer.clear();
buffer.write(part);
} else {
if (part.length > 0 && part[0].contains(style.separatorPattern)) {
@@ -406,8 +446,7 @@
// Unless this part ends with a separator, we'll need to add one before
// the next part.
- needsSeparator = part.length > 0 &&
- !part[part.length - 1].contains(style.separatorPattern);
+ needsSeparator = part.contains(style.needsSeparatorPattern);
}
return buffer.toString();
@@ -498,7 +537,9 @@
// If the given path is relative, resolve it relative to the root of the
// builder.
- if (this.isRelative(path)) path = this.resolve(path);
+ if (this.isRelative(path) || this.isRootRelative(path)) {
+ path = this.resolve(path);
+ }
// If the path is still relative and `from` is absolute, we're unable to
// find a path from `from` to `path`.
@@ -524,16 +565,17 @@
while (fromParsed.parts.length > 0 && pathParsed.parts.length > 0 &&
fromParsed.parts[0] == pathParsed.parts[0]) {
fromParsed.parts.removeAt(0);
- fromParsed.separators.removeAt(0);
+ fromParsed.separators.removeAt(1);
pathParsed.parts.removeAt(0);
- pathParsed.separators.removeAt(0);
+ pathParsed.separators.removeAt(1);
}
// If there are any directories left in the root path, we need to walk up
// out of them.
_growListFront(pathParsed.parts, fromParsed.parts.length, '..');
- _growListFront(
- pathParsed.separators, fromParsed.parts.length, style.separator);
+ pathParsed.separators[0] = '';
+ pathParsed.separators.insertAll(1,
+ new List.filled(fromParsed.parts.length, style.separator));
// Corner case: the paths completely collapsed.
if (pathParsed.parts.length == 0) return '.';
@@ -566,11 +608,21 @@
// Remove the root prefix, if any.
var root = style.getRoot(path);
+ var isRootRelative = style.getRelativeRoot(path) != null;
if (root != null) path = path.substring(root.length);
// Split the parts on path separators.
var parts = [];
var separators = [];
+
+ var firstSeparator = style.separatorPattern.firstMatch(path);
+ if (firstSeparator != null && firstSeparator.start == 0) {
+ separators.add(firstSeparator[0]);
+ path = path.substring(firstSeparator[0].length);
+ } else {
+ separators.add('');
+ }
+
var start = 0;
for (var match in style.separatorPattern.allMatches(path)) {
parts.add(path.substring(start, match.start));
@@ -584,7 +636,7 @@
separators.add('');
}
- return new _ParsedPath(style, root, parts, separators);
+ return new _ParsedPath(style, root, isRootRelative, parts, separators);
}
}
@@ -592,20 +644,34 @@
class Style {
/// POSIX-style paths use "/" (forward slash) as separators. Absolute paths
/// start with "/". Used by UNIX, Linux, Mac OS X, and others.
- static final posix = new Style._('posix', '/', '/', '/');
+ static final posix = new Style._('posix', '/', '/', r'[^/]$', '/');
/// Windows paths use "\" (backslash) as separators. Absolute paths start with
/// a drive letter followed by a colon (example, "C:") or two backslashes
/// ("\\") for UNC paths.
// TODO(rnystrom): The UNC root prefix should include the drive name too, not
// just the "\\".
- static final windows = new Style._('windows', '\\', r'[/\\]',
+ static final windows = new Style._('windows', '\\', r'[/\\]', r'[^/\\]$',
r'\\\\|[a-zA-Z]:[/\\]');
+ /// URLs aren't filesystem paths, but they're supported by Pathos to make it
+ /// easier to manipulate URL paths in the browser.
+ ///
+ /// URLs use "/" (forward slash) as separators. Absolute paths either start
+ /// with a protocol and optional hostname (e.g. `http://dartlang.org`,
+ /// `file://`) or with "/".
+ static final url = new Style._('url', '/', '/',
+ r"(^[a-zA-Z][-+.a-zA-Z\d]*://|[^/])$",
+ r"[a-zA-Z][-+.a-zA-Z\d]*://[^/]*", r"/");
+
Style._(this.name, this.separator, String separatorPattern,
- String rootPattern)
+ String needsSeparatorPattern, String rootPattern,
+ [String relativeRootPattern])
: separatorPattern = new RegExp(separatorPattern),
- _rootPattern = new RegExp('^$rootPattern');
+ needsSeparatorPattern = new RegExp(needsSeparatorPattern),
+ _rootPattern = new RegExp('^$rootPattern'),
+ _relativeRootPattern = relativeRootPattern == null ? null :
+ new RegExp('^$relativeRootPattern');
/// The name of this path style. Will be "posix" or "windows".
final String name;
@@ -619,15 +685,42 @@
/// "\" is the canonical one.
final Pattern separatorPattern;
+ /// The [Pattern] that matches path components that need a separator after
+ /// them.
+ ///
+ /// Windows and POSIX styles just need separators when the previous component
+ /// doesn't already end in a separator, but the URL always needs to place a
+ /// separator between the root and the first component, even if the root
+ /// already ends in a separator character. For example, to join "file://" and
+ /// "usr", an additional "/" is needed (making "file:///usr").
+ final Pattern needsSeparatorPattern;
+
// TODO(nweiz): make this a Pattern when issue 7080 is fixed.
/// The [RegExp] that can be used to match the root prefix of an absolute
/// path in this style.
final RegExp _rootPattern;
+ /// The [RegExp] that can be used to match the root prefix of a root-relative
+ /// path in this style.
+ ///
+ /// This can be null to indicate that this style doesn't support root-relative
+ /// paths.
+ final RegExp _relativeRootPattern;
+
/// Gets the root prefix of [path] if path is absolute. If [path] is relative,
/// returns `null`.
String getRoot(String path) {
var match = _rootPattern.firstMatch(path);
+ if (match != null) return match[0];
+ return getRelativeRoot(path);
+ }
+
+ /// Gets the root prefix of [path] if it's root-relative.
+ ///
+ /// If [path] is relative or absolute and not root-relative, returns `null`.
+ String getRelativeRoot(String path) {
+ if (_relativeRootPattern == null) return null;
+ var match = _relativeRootPattern.firstMatch(path);
if (match == null) return null;
return match[0];
}
@@ -646,12 +739,20 @@
/// letters.
String root;
+ /// Whether this path is root-relative.
+ ///
+ /// See [Builder.isRootRelative].
+ bool isRootRelative;
+
/// The path-separated parts of the path. All but the last will be
/// directories.
List<String> parts;
- /// The path separators following each part. The last one will be an empty
- /// string unless the path ends with a trailing separator.
+ /// The path separators preceding each part.
+ ///
+ /// The first one will be an empty string unless the root requires a separator
+ /// between it and the path. The last one will be an empty string unless the
+ /// path ends with a trailing separator.
List<String> separators;
/// The file extension of the last part, or "" if it doesn't have one.
@@ -660,7 +761,8 @@
/// `true` if this is an absolute path.
bool get isAbsolute => root != null;
- _ParsedPath(this.style, this.root, this.parts, this.separators);
+ _ParsedPath(this.style, this.root, this.isRootRelative, this.parts,
+ this.separators);
String get basename {
var copy = this.clone();
@@ -715,8 +817,12 @@
}
// Canonicalize separators.
- var newSeparators = [];
- _growListFront(newSeparators, newParts.length, style.separator);
+ var newSeparators = new List.generate(
+ newParts.length, (_) => style.separator, growable: true);
+ newSeparators.insert(0,
+ isAbsolute && newParts.length > 0 &&
+ root.contains(style.needsSeparatorPattern) ?
+ style.separator : '');
parts = newParts;
separators = newSeparators;
@@ -732,9 +838,10 @@
var builder = new StringBuffer();
if (root != null) builder.write(root);
for (var i = 0; i < parts.length; i++) {
- builder.write(parts[i]);
builder.write(separators[i]);
+ builder.write(parts[i]);
}
+ builder.write(separators.last);
return builder.toString();
}
@@ -758,5 +865,6 @@
}
_ParsedPath clone() => new _ParsedPath(
- style, root, new List.from(parts), new List.from(separators));
+ style, root, isRootRelative,
+ new List.from(parts), new List.from(separators));
}
diff --git a/pkg/pathos/test/pathos_url_test.dart b/pkg/pathos/test/pathos_url_test.dart
new file mode 100644
index 0000000..f419af4
--- /dev/null
+++ b/pkg/pathos/test/pathos_url_test.dart
@@ -0,0 +1,611 @@
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+import 'dart:io' as io;
+
+import 'package:unittest/unittest.dart';
+import 'package:pathos/path.dart' as path;
+
+main() {
+ var builder = new path.Builder(style: path.Style.url,
+ root: 'http://dartlang.org/root/path');
+
+ test('separator', () {
+ expect(builder.separator, '/');
+ });
+
+ test('extension', () {
+ expect(builder.extension(''), '');
+ expect(builder.extension('foo.dart'), '.dart');
+ expect(builder.extension('foo.dart.js'), '.js');
+ expect(builder.extension('a.b/c'), '');
+ expect(builder.extension('a.b/c.d'), '.d');
+ expect(builder.extension(r'a.b\c'), r'.b\c');
+ });
+
+ test('rootPrefix', () {
+ expect(builder.rootPrefix(''), '');
+ expect(builder.rootPrefix('a'), '');
+ expect(builder.rootPrefix('a/b'), '');
+ expect(builder.rootPrefix('http://dartlang.org/a/c'),
+ 'http://dartlang.org');
+ expect(builder.rootPrefix('file:///a/c'), 'file://');
+ expect(builder.rootPrefix('/a/c'), '/');
+ expect(builder.rootPrefix('http://dartlang.org/'), 'http://dartlang.org');
+ expect(builder.rootPrefix('file:///'), 'file://');
+ expect(builder.rootPrefix('http://dartlang.org'), 'http://dartlang.org');
+ expect(builder.rootPrefix('file://'), 'file://');
+ expect(builder.rootPrefix('/'), '/');
+ });
+
+ test('dirname', () {
+ expect(builder.dirname(''), '.');
+ expect(builder.dirname('a'), '.');
+ expect(builder.dirname('a/b'), 'a');
+ expect(builder.dirname('a/b/c'), 'a/b');
+ expect(builder.dirname('a/b.c'), 'a');
+ expect(builder.dirname('a/'), '.');
+ expect(builder.dirname('a/.'), 'a');
+ expect(builder.dirname(r'a\b/c'), r'a\b');
+ expect(builder.dirname('http://dartlang.org/a'), 'http://dartlang.org');
+ expect(builder.dirname('file:///a'), 'file://');
+ expect(builder.dirname('/a'), '/');
+ expect(builder.dirname('http://dartlang.org///a'), 'http://dartlang.org');
+ expect(builder.dirname('file://///a'), 'file://');
+ expect(builder.dirname('///a'), '/');
+ expect(builder.dirname('http://dartlang.org/'), 'http://dartlang.org');
+ expect(builder.dirname('http://dartlang.org'), 'http://dartlang.org');
+ expect(builder.dirname('file:///'), 'file://');
+ expect(builder.dirname('file://'), 'file://');
+ expect(builder.dirname('/'), '/');
+ expect(builder.dirname('http://dartlang.org///'), 'http://dartlang.org');
+ expect(builder.dirname('file://///'), 'file://');
+ expect(builder.dirname('///'), '/');
+ expect(builder.dirname('a/b/'), 'a');
+ expect(builder.dirname(r'a/b\c'), 'a');
+ expect(builder.dirname('a//'), '.');
+ expect(builder.dirname('a/b//'), 'a');
+ expect(builder.dirname('a//b'), 'a');
+ });
+
+ test('basename', () {
+ expect(builder.basename(''), '');
+ expect(builder.basename('a'), 'a');
+ expect(builder.basename('a/b'), 'b');
+ expect(builder.basename('a/b/c'), 'c');
+ expect(builder.basename('a/b.c'), 'b.c');
+ expect(builder.basename('a/'), 'a');
+ expect(builder.basename('a/.'), '.');
+ expect(builder.basename(r'a\b/c'), 'c');
+ expect(builder.basename('http://dartlang.org/a'), 'a');
+ expect(builder.basename('file:///a'), 'a');
+ expect(builder.basename('/a'), 'a');
+ expect(builder.basename('http://dartlang.org/'), 'http://dartlang.org');
+ expect(builder.basename('http://dartlang.org'), 'http://dartlang.org');
+ expect(builder.basename('file:///'), 'file://');
+ expect(builder.basename('file://'), 'file://');
+ expect(builder.basename('/'), '/');
+ expect(builder.basename('a/b/'), 'b');
+ expect(builder.basename(r'a/b\c'), r'b\c');
+ expect(builder.basename('a//'), 'a');
+ expect(builder.basename('a/b//'), 'b');
+ expect(builder.basename('a//b'), 'b');
+ });
+
+ test('basenameWithoutExtension', () {
+ expect(builder.basenameWithoutExtension(''), '');
+ expect(builder.basenameWithoutExtension('a'), 'a');
+ expect(builder.basenameWithoutExtension('a/b'), 'b');
+ expect(builder.basenameWithoutExtension('a/b/c'), 'c');
+ expect(builder.basenameWithoutExtension('a/b.c'), 'b');
+ expect(builder.basenameWithoutExtension('a/'), 'a');
+ expect(builder.basenameWithoutExtension('a/.'), '.');
+ expect(builder.basenameWithoutExtension(r'a/b\c'), r'b\c');
+ expect(builder.basenameWithoutExtension('a/.bashrc'), '.bashrc');
+ expect(builder.basenameWithoutExtension('a/b/c.d.e'), 'c.d');
+ expect(builder.basenameWithoutExtension('a//'), 'a');
+ expect(builder.basenameWithoutExtension('a/b//'), 'b');
+ expect(builder.basenameWithoutExtension('a//b'), 'b');
+ expect(builder.basenameWithoutExtension('a/b.c/'), 'b');
+ expect(builder.basenameWithoutExtension('a/b.c//'), 'b');
+ });
+
+ test('isAbsolute', () {
+ expect(builder.isAbsolute(''), false);
+ expect(builder.isAbsolute('a'), false);
+ expect(builder.isAbsolute('a/b'), false);
+ expect(builder.isAbsolute('http://dartlang.org/a'), true);
+ expect(builder.isAbsolute('file:///a'), true);
+ expect(builder.isAbsolute('/a'), true);
+ expect(builder.isAbsolute('http://dartlang.org/a/b'), true);
+ expect(builder.isAbsolute('file:///a/b'), true);
+ expect(builder.isAbsolute('/a/b'), true);
+ expect(builder.isAbsolute('http://dartlang.org/'), true);
+ expect(builder.isAbsolute('file:///'), true);
+ expect(builder.isAbsolute('http://dartlang.org'), true);
+ expect(builder.isAbsolute('file://'), true);
+ expect(builder.isAbsolute('/'), true);
+ expect(builder.isAbsolute('~'), false);
+ expect(builder.isAbsolute('.'), false);
+ expect(builder.isAbsolute('../a'), false);
+ expect(builder.isAbsolute('C:/a'), false);
+ expect(builder.isAbsolute(r'C:\a'), false);
+ expect(builder.isAbsolute(r'\\a'), false);
+ });
+
+ test('isRelative', () {
+ expect(builder.isRelative(''), true);
+ expect(builder.isRelative('a'), true);
+ expect(builder.isRelative('a/b'), true);
+ expect(builder.isRelative('http://dartlang.org/a'), false);
+ expect(builder.isRelative('file:///a'), false);
+ expect(builder.isRelative('/a'), false);
+ expect(builder.isRelative('http://dartlang.org/a/b'), false);
+ expect(builder.isRelative('file:///a/b'), false);
+ expect(builder.isRelative('/a/b'), false);
+ expect(builder.isRelative('http://dartlang.org/'), false);
+ expect(builder.isRelative('file:///'), false);
+ expect(builder.isRelative('http://dartlang.org'), false);
+ expect(builder.isRelative('file://'), false);
+ expect(builder.isRelative('/'), false);
+ expect(builder.isRelative('~'), true);
+ expect(builder.isRelative('.'), true);
+ expect(builder.isRelative('../a'), true);
+ expect(builder.isRelative('C:/a'), true);
+ expect(builder.isRelative(r'C:\a'), true);
+ expect(builder.isRelative(r'\\a'), true);
+ });
+
+ test('isRootRelative', () {
+ expect(builder.isRootRelative(''), false);
+ expect(builder.isRootRelative('a'), false);
+ expect(builder.isRootRelative('a/b'), false);
+ expect(builder.isRootRelative('http://dartlang.org/a'), false);
+ expect(builder.isRootRelative('file:///a'), false);
+ expect(builder.isRootRelative('/a'), true);
+ expect(builder.isRootRelative('http://dartlang.org/a/b'), false);
+ expect(builder.isRootRelative('file:///a/b'), false);
+ expect(builder.isRootRelative('/a/b'), true);
+ expect(builder.isRootRelative('http://dartlang.org/'), false);
+ expect(builder.isRootRelative('file:///'), false);
+ expect(builder.isRootRelative('http://dartlang.org'), false);
+ expect(builder.isRootRelative('file://'), false);
+ expect(builder.isRootRelative('/'), true);
+ expect(builder.isRootRelative('~'), false);
+ expect(builder.isRootRelative('.'), false);
+ expect(builder.isRootRelative('../a'), false);
+ expect(builder.isRootRelative('C:/a'), false);
+ expect(builder.isRootRelative(r'C:\a'), false);
+ expect(builder.isRootRelative(r'\\a'), false);
+ });
+
+ group('join', () {
+ test('allows up to eight parts', () {
+ expect(builder.join('a'), 'a');
+ expect(builder.join('a', 'b'), 'a/b');
+ expect(builder.join('a', 'b', 'c'), 'a/b/c');
+ expect(builder.join('a', 'b', 'c', 'd'), 'a/b/c/d');
+ expect(builder.join('a', 'b', 'c', 'd', 'e'), 'a/b/c/d/e');
+ expect(builder.join('a', 'b', 'c', 'd', 'e', 'f'), 'a/b/c/d/e/f');
+ expect(builder.join('a', 'b', 'c', 'd', 'e', 'f', 'g'), 'a/b/c/d/e/f/g');
+ expect(builder.join('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'),
+ 'a/b/c/d/e/f/g/h');
+ });
+
+ test('does not add separator if a part ends in one', () {
+ expect(builder.join('a/', 'b', 'c/', 'd'), 'a/b/c/d');
+ expect(builder.join('a\\', 'b'), r'a\/b');
+ });
+
+ test('ignores parts before an absolute path', () {
+ expect(builder.join('a', 'http://dartlang.org', 'b', 'c'),
+ 'http://dartlang.org/b/c');
+ expect(builder.join('a', 'file://', 'b', 'c'), 'file:///b/c');
+ expect(builder.join('a', '/', 'b', 'c'), '/b/c');
+ expect(builder.join('a', '/b', 'http://dartlang.org/c', 'd'),
+ 'http://dartlang.org/c/d');
+ expect(builder.join(
+ 'a', 'http://google.com/b', 'http://dartlang.org/c', 'd'),
+ 'http://dartlang.org/c/d');
+ expect(builder.join('a', '/b', '/c', 'd'), '/c/d');
+ expect(builder.join('a', r'c:\b', 'c', 'd'), r'a/c:\b/c/d');
+ expect(builder.join('a', r'\\b', 'c', 'd'), r'a/\\b/c/d');
+ });
+
+ test('preserves roots before a root-relative path', () {
+ expect(builder.join('http://dartlang.org', 'a', '/b', 'c'),
+ 'http://dartlang.org/b/c');
+ expect(builder.join('file://', 'a', '/b', 'c'), 'file:///b/c');
+ expect(builder.join('file://', 'a', '/b', 'c', '/d'), 'file:///d');
+ });
+
+ test('ignores trailing nulls', () {
+ expect(builder.join('a', null), equals('a'));
+ expect(builder.join('a', 'b', 'c', null, null), equals('a/b/c'));
+ });
+
+ test('disallows intermediate nulls', () {
+ expect(() => builder.join('a', null, 'b'), throwsArgumentError);
+ expect(() => builder.join(null, 'a'), throwsArgumentError);
+ });
+ });
+
+ group('joinAll', () {
+ test('allows more than eight parts', () {
+ expect(builder.joinAll(['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']),
+ 'a/b/c/d/e/f/g/h/i');
+ });
+
+ test('ignores parts before an absolute path', () {
+ expect(builder.joinAll(['a', 'http://dartlang.org', 'b', 'c']),
+ 'http://dartlang.org/b/c');
+ expect(builder.joinAll(['a', 'file://', 'b', 'c']), 'file:///b/c');
+ expect(builder.joinAll(['a', '/', 'b', 'c']), '/b/c');
+ expect(builder.joinAll(['a', '/b', 'http://dartlang.org/c', 'd']),
+ 'http://dartlang.org/c/d');
+ expect(builder.joinAll(
+ ['a', 'http://google.com/b', 'http://dartlang.org/c', 'd']),
+ 'http://dartlang.org/c/d');
+ expect(builder.joinAll(['a', '/b', '/c', 'd']), '/c/d');
+ expect(builder.joinAll(['a', r'c:\b', 'c', 'd']), r'a/c:\b/c/d');
+ expect(builder.joinAll(['a', r'\\b', 'c', 'd']), r'a/\\b/c/d');
+ });
+
+ test('preserves roots before a root-relative path', () {
+ expect(builder.joinAll(['http://dartlang.org', 'a', '/b', 'c']),
+ 'http://dartlang.org/b/c');
+ expect(builder.joinAll(['file://', 'a', '/b', 'c']), 'file:///b/c');
+ expect(builder.joinAll(['file://', 'a', '/b', 'c', '/d']), 'file:///d');
+ });
+ });
+
+ group('split', () {
+ test('simple cases', () {
+ expect(builder.split(''), []);
+ expect(builder.split('.'), ['.']);
+ expect(builder.split('..'), ['..']);
+ expect(builder.split('foo'), equals(['foo']));
+ expect(builder.split('foo/bar.txt'), equals(['foo', 'bar.txt']));
+ expect(builder.split('foo/bar/baz'), equals(['foo', 'bar', 'baz']));
+ expect(builder.split('foo/../bar/./baz'),
+ equals(['foo', '..', 'bar', '.', 'baz']));
+ expect(builder.split('foo//bar///baz'), equals(['foo', 'bar', 'baz']));
+ expect(builder.split('foo/\\/baz'), equals(['foo', '\\', 'baz']));
+ expect(builder.split('.'), equals(['.']));
+ expect(builder.split(''), equals([]));
+ expect(builder.split('foo/'), equals(['foo']));
+ expect(builder.split('http://dartlang.org//'),
+ equals(['http://dartlang.org']));
+ expect(builder.split('file:////'), equals(['file://']));
+ expect(builder.split('//'), equals(['/']));
+ });
+
+ test('includes the root for absolute paths', () {
+ expect(builder.split('http://dartlang.org/foo/bar/baz'),
+ equals(['http://dartlang.org', 'foo', 'bar', 'baz']));
+ expect(builder.split('file:///foo/bar/baz'),
+ equals(['file://', 'foo', 'bar', 'baz']));
+ expect(builder.split('/foo/bar/baz'), equals(['/', 'foo', 'bar', 'baz']));
+ expect(builder.split('http://dartlang.org/'),
+ equals(['http://dartlang.org']));
+ expect(builder.split('http://dartlang.org'),
+ equals(['http://dartlang.org']));
+ expect(builder.split('file:///'), equals(['file://']));
+ expect(builder.split('file://'), equals(['file://']));
+ expect(builder.split('/'), equals(['/']));
+ });
+ });
+
+ group('normalize', () {
+ test('simple cases', () {
+ expect(builder.normalize(''), '');
+ expect(builder.normalize('.'), '.');
+ expect(builder.normalize('..'), '..');
+ expect(builder.normalize('a'), 'a');
+ expect(builder.normalize('http://dartlang.org/'), 'http://dartlang.org');
+ expect(builder.normalize('http://dartlang.org'), 'http://dartlang.org');
+ expect(builder.normalize('file://'), 'file://');
+ expect(builder.normalize('file:///'), 'file://');
+ expect(builder.normalize('/'), '/');
+ expect(builder.normalize(r'\'), r'\');
+ });
+
+ test('collapses redundant separators', () {
+ expect(builder.normalize(r'a/b/c'), r'a/b/c');
+ expect(builder.normalize(r'a//b///c////d'), r'a/b/c/d');
+ });
+
+ test('does not collapse separators for other platform', () {
+ expect(builder.normalize(r'a\\b\\\c'), r'a\\b\\\c');
+ });
+
+ test('eliminates "." parts', () {
+ expect(builder.normalize('./'), '.');
+ expect(builder.normalize('http://dartlang.org/.'), 'http://dartlang.org');
+ expect(builder.normalize('file:///.'), 'file://');
+ expect(builder.normalize('/.'), '/');
+ expect(builder.normalize('http://dartlang.org/./'),
+ 'http://dartlang.org');
+ expect(builder.normalize('file:///./'), 'file://');
+ expect(builder.normalize('/./'), '/');
+ expect(builder.normalize('./.'), '.');
+ expect(builder.normalize('a/./b'), 'a/b');
+ expect(builder.normalize('a/.b/c'), 'a/.b/c');
+ expect(builder.normalize('a/././b/./c'), 'a/b/c');
+ expect(builder.normalize('././a'), 'a');
+ expect(builder.normalize('a/./.'), 'a');
+ });
+
+ test('eliminates ".." parts', () {
+ expect(builder.normalize('..'), '..');
+ expect(builder.normalize('../'), '..');
+ expect(builder.normalize('../../..'), '../../..');
+ expect(builder.normalize('../../../'), '../../..');
+ expect(builder.normalize('http://dartlang.org/..'),
+ 'http://dartlang.org');
+ expect(builder.normalize('file:///..'), 'file://');
+ expect(builder.normalize('/..'), '/');
+ expect(builder.normalize('http://dartlang.org/../../..'),
+ 'http://dartlang.org');
+ expect(builder.normalize('file:///../../..'), 'file://');
+ expect(builder.normalize('/../../..'), '/');
+ expect(builder.normalize('http://dartlang.org/../../../a'),
+ 'http://dartlang.org/a');
+ expect(builder.normalize('file:///../../../a'), 'file:///a');
+ expect(builder.normalize('/../../../a'), '/a');
+ expect(builder.normalize('a/..'), '.');
+ expect(builder.normalize('a/b/..'), 'a');
+ expect(builder.normalize('a/../b'), 'b');
+ expect(builder.normalize('a/./../b'), 'b');
+ expect(builder.normalize('a/b/c/../../d/e/..'), 'a/d');
+ expect(builder.normalize('a/b/../../../../c'), '../../c');
+ });
+
+ test('does not walk before root on absolute paths', () {
+ expect(builder.normalize('..'), '..');
+ expect(builder.normalize('../'), '..');
+ expect(builder.normalize('http://dartlang.org/..'),
+ 'http://dartlang.org');
+ expect(builder.normalize('file:///..'), 'file://');
+ expect(builder.normalize('/..'), '/');
+ expect(builder.normalize('a/..'), '.');
+ expect(builder.normalize('a/b/..'), 'a');
+ expect(builder.normalize('a/../b'), 'b');
+ expect(builder.normalize('a/./../b'), 'b');
+ expect(builder.normalize('a/b/c/../../d/e/..'), 'a/d');
+ expect(builder.normalize('a/b/../../../../c'), '../../c');
+ });
+
+ test('removes trailing separators', () {
+ expect(builder.normalize('./'), '.');
+ expect(builder.normalize('.//'), '.');
+ expect(builder.normalize('a/'), 'a');
+ expect(builder.normalize('a/b/'), 'a/b');
+ expect(builder.normalize('a/b///'), 'a/b');
+ });
+ });
+
+ group('relative', () {
+ group('from absolute root', () {
+ test('given absolute path in root', () {
+ expect(builder.relative('http://dartlang.org'), '../..');
+ expect(builder.relative('http://dartlang.org/'), '../..');
+ expect(builder.relative('/'), '../..');
+ expect(builder.relative('http://dartlang.org/root'), '..');
+ expect(builder.relative('/root'), '..');
+ expect(builder.relative('http://dartlang.org/root/path'), '.');
+ expect(builder.relative('/root/path'), '.');
+ expect(builder.relative('http://dartlang.org/root/path/a'), 'a');
+ expect(builder.relative('/root/path/a'), 'a');
+ expect(builder.relative('http://dartlang.org/root/path/a/b.txt'),
+ 'a/b.txt');
+ expect(builder.relative('/root/path/a/b.txt'), 'a/b.txt');
+ expect(builder.relative('http://dartlang.org/root/a/b.txt'),
+ '../a/b.txt');
+ expect(builder.relative('/root/a/b.txt'), '../a/b.txt');
+ });
+
+ test('given absolute path outside of root', () {
+ expect(builder.relative('http://dartlang.org/a/b'), '../../a/b');
+ expect(builder.relative('/a/b'), '../../a/b');
+ expect(builder.relative('http://dartlang.org/root/path/a'), 'a');
+ expect(builder.relative('/root/path/a'), 'a');
+ expect(builder.relative('http://dartlang.org/root/path/a/b.txt'),
+ 'a/b.txt');
+ expect(builder.relative('http://dartlang.org/root/path/a/b.txt'),
+ 'a/b.txt');
+ expect(builder.relative('http://dartlang.org/root/a/b.txt'),
+ '../a/b.txt');
+ });
+
+ test('given absolute path with different hostname/protocol', () {
+ expect(builder.relative(r'http://google.com/a/b'),
+ r'http://google.com/a/b');
+ expect(builder.relative(r'file:///a/b'),
+ r'file:///a/b');
+ });
+
+ test('given relative path', () {
+ // The path is considered relative to the root, so it basically just
+ // normalizes.
+ expect(builder.relative(''), '.');
+ expect(builder.relative('.'), '.');
+ expect(builder.relative('a'), 'a');
+ expect(builder.relative('a/b.txt'), 'a/b.txt');
+ expect(builder.relative('../a/b.txt'), '../a/b.txt');
+ expect(builder.relative('a/./b/../c.txt'), 'a/c.txt');
+ });
+ });
+
+ group('from relative root', () {
+ var r = new path.Builder(style: path.Style.url, root: 'foo/bar');
+
+ test('given absolute path', () {
+ expect(r.relative('http://google.com/'), equals('http://google.com'));
+ expect(r.relative('http://google.com'), equals('http://google.com'));
+ expect(r.relative('file:///'), equals('file://'));
+ expect(r.relative('file://'), equals('file://'));
+ expect(r.relative('/'), equals('/'));
+ expect(r.relative('/a/b'), equals('/a/b'));
+ });
+
+ test('given relative path', () {
+ // The path is considered relative to the root, so it basically just
+ // normalizes.
+ expect(r.relative(''), '.');
+ expect(r.relative('.'), '.');
+ expect(r.relative('..'), '..');
+ expect(r.relative('a'), 'a');
+ expect(r.relative('a/b.txt'), 'a/b.txt');
+ expect(r.relative('../a/b.txt'), '../a/b.txt');
+ expect(r.relative('a/./b/../c.txt'), 'a/c.txt');
+ });
+ });
+
+ group('from root-relative root', () {
+ var r = new path.Builder(style: path.Style.url, root: '/foo/bar');
+
+ test('given absolute path', () {
+ expect(r.relative('http://google.com/'), equals('http://google.com'));
+ expect(r.relative('http://google.com'), equals('http://google.com'));
+ expect(r.relative('file:///'), equals('file://'));
+ expect(r.relative('file://'), equals('file://'));
+ expect(r.relative('/'), equals('../..'));
+ expect(r.relative('/a/b'), equals('../../a/b'));
+ });
+
+ test('given relative path', () {
+ // The path is considered relative to the root, so it basically just
+ // normalizes.
+ expect(r.relative(''), '.');
+ expect(r.relative('.'), '.');
+ expect(r.relative('..'), '..');
+ expect(r.relative('a'), 'a');
+ expect(r.relative('a/b.txt'), 'a/b.txt');
+ expect(r.relative('../a/b.txt'), '../a/b.txt');
+ expect(r.relative('a/./b/../c.txt'), 'a/c.txt');
+ });
+ });
+
+ test('from a root with extension', () {
+ var r = new path.Builder(style: path.Style.url, root: '/dir.ext');
+ expect(r.relative('/dir.ext/file'), 'file');
+ });
+
+ test('with a root parameter', () {
+ expect(builder.relative('/foo/bar/baz', from: '/foo/bar'), equals('baz'));
+ expect(
+ builder.relative('/foo/bar/baz', from: 'http://dartlang.org/foo/bar'),
+ equals('baz'));
+ expect(
+ builder.relative('http://dartlang.org/foo/bar/baz', from: '/foo/bar'),
+ equals('baz'));
+ expect(builder.relative('http://dartlang.org/foo/bar/baz',
+ from: 'file:///foo/bar'),
+ equals('http://dartlang.org/foo/bar/baz'));
+ expect(builder.relative('http://dartlang.org/foo/bar/baz',
+ from: 'http://dartlang.org/foo/bar'), equals('baz'));
+ expect(
+ builder.relative('/foo/bar/baz', from: 'file:///foo/bar'),
+ equals('http://dartlang.org/foo/bar/baz'));
+ expect(
+ builder.relative('file:///foo/bar/baz', from: '/foo/bar'),
+ equals('file:///foo/bar/baz'));
+
+ expect(builder.relative('..', from: '/foo/bar'), equals('../../root'));
+ expect(builder.relative('..', from: 'http://dartlang.org/foo/bar'),
+ equals('../../root'));
+ expect(builder.relative('..', from: 'file:///foo/bar'),
+ equals('http://dartlang.org/root'));
+ expect(builder.relative('..', from: '/foo/bar'), equals('../../root'));
+
+ expect(builder.relative('http://dartlang.org/foo/bar/baz',
+ from: 'foo/bar'),
+ equals('../../../../foo/bar/baz'));
+ expect(builder.relative('file:///foo/bar/baz', from: 'foo/bar'),
+ equals('file:///foo/bar/baz'));
+ expect(builder.relative('/foo/bar/baz', from: 'foo/bar'),
+ equals('../../../../foo/bar/baz'));
+
+ expect(builder.relative('..', from: 'foo/bar'), equals('../../..'));
+ });
+
+ test('with a root parameter and a relative root', () {
+ var r = new path.Builder(style: path.Style.url, root: 'relative/root');
+ expect(r.relative('/foo/bar/baz', from: '/foo/bar'), equals('baz'));
+ expect(
+ r.relative('/foo/bar/baz', from: 'http://dartlang.org/foo/bar'),
+ equals('/foo/bar/baz'));
+ expect(
+ r.relative('http://dartlang.org/foo/bar/baz', from: '/foo/bar'),
+ equals('http://dartlang.org/foo/bar/baz'));
+ expect(r.relative('http://dartlang.org/foo/bar/baz',
+ from: 'file:///foo/bar'),
+ equals('http://dartlang.org/foo/bar/baz'));
+ expect(r.relative('http://dartlang.org/foo/bar/baz',
+ from: 'http://dartlang.org/foo/bar'), equals('baz'));
+
+ expect(r.relative('http://dartlang.org/foo/bar/baz', from: 'foo/bar'),
+ equals('http://dartlang.org/foo/bar/baz'));
+ expect(r.relative('file:///foo/bar/baz', from: 'foo/bar'),
+ equals('file:///foo/bar/baz'));
+ expect(r.relative('/foo/bar/baz', from: 'foo/bar'),
+ equals('/foo/bar/baz'));
+
+ expect(r.relative('..', from: 'foo/bar'), equals('../../..'));
+ });
+ });
+
+ group('resolve', () {
+ test('allows up to seven parts', () {
+ expect(builder.resolve('a'), 'http://dartlang.org/root/path/a');
+ expect(builder.resolve('a', 'b'), 'http://dartlang.org/root/path/a/b');
+ expect(builder.resolve('a', 'b', 'c'),
+ 'http://dartlang.org/root/path/a/b/c');
+ expect(builder.resolve('a', 'b', 'c', 'd'),
+ 'http://dartlang.org/root/path/a/b/c/d');
+ expect(builder.resolve('a', 'b', 'c', 'd', 'e'),
+ 'http://dartlang.org/root/path/a/b/c/d/e');
+ expect(builder.resolve('a', 'b', 'c', 'd', 'e', 'f'),
+ 'http://dartlang.org/root/path/a/b/c/d/e/f');
+ expect(builder.resolve('a', 'b', 'c', 'd', 'e', 'f', 'g'),
+ 'http://dartlang.org/root/path/a/b/c/d/e/f/g');
+ });
+
+ test('does not add separator if a part ends in one', () {
+ expect(builder.resolve('a/', 'b', 'c/', 'd'),
+ 'http://dartlang.org/root/path/a/b/c/d');
+ expect(builder.resolve(r'a\', 'b'),
+ r'http://dartlang.org/root/path/a\/b');
+ });
+
+ test('ignores parts before an absolute path', () {
+ expect(builder.resolve('a', '/b', '/c', 'd'), 'http://dartlang.org/c/d');
+ expect(builder.resolve('a', '/b', 'file:///c', 'd'), 'file:///c/d');
+ expect(builder.resolve('a', r'c:\b', 'c', 'd'),
+ r'http://dartlang.org/root/path/a/c:\b/c/d');
+ expect(builder.resolve('a', r'\\b', 'c', 'd'),
+ r'http://dartlang.org/root/path/a/\\b/c/d');
+ });
+ });
+
+ test('withoutExtension', () {
+ expect(builder.withoutExtension(''), '');
+ expect(builder.withoutExtension('a'), 'a');
+ expect(builder.withoutExtension('.a'), '.a');
+ expect(builder.withoutExtension('a.b'), 'a');
+ expect(builder.withoutExtension('a/b.c'), 'a/b');
+ expect(builder.withoutExtension('a/b.c.d'), 'a/b.c');
+ expect(builder.withoutExtension('a/'), 'a/');
+ expect(builder.withoutExtension('a/b/'), 'a/b/');
+ expect(builder.withoutExtension('a/.'), 'a/.');
+ expect(builder.withoutExtension('a/.b'), 'a/.b');
+ expect(builder.withoutExtension('a.b/c'), 'a.b/c');
+ expect(builder.withoutExtension(r'a.b\c'), r'a');
+ expect(builder.withoutExtension(r'a/b\c'), r'a/b\c');
+ expect(builder.withoutExtension(r'a/b\c.d'), r'a/b\c');
+ expect(builder.withoutExtension('a/b.c/'), 'a/b/');
+ expect(builder.withoutExtension('a/b.c//'), 'a/b//');
+ });
+}
diff --git a/pkg/pkg.status b/pkg/pkg.status
index 0f21f41..311fce9 100644
--- a/pkg/pkg.status
+++ b/pkg/pkg.status
@@ -68,6 +68,7 @@
analyzer_experimental/test/generated/resolver_test: Skip # Imports dart:io.
analyzer_experimental/test/generated/scanner_test: Skip # Imports dart:io.
analyzer_experimental/test/error_test: Skip # Imports dart:io.
+analyzer_experimental/test/services/formatter_test: Skip #Imports dart:io
# Issue 8440 forces us to use pathos in the scheduled_test tests, which would
# otherwise be dart2js-compatible.
@@ -107,6 +108,7 @@
analyzer_experimental/test/generated/resolver_test: Skip
analyzer_experimental/test/generated/scanner_test: Skip
analyzer_experimental/test/error_test: Skip # Imports dart:io.
+analyzer_experimental/test/services/formatter_test.dart: Skip #Imports dart:io
[ $compiler == dartc ]
unittest/test/mock_regexp_negative_test: Fail
diff --git a/runtime/lib/expando_patch.dart b/runtime/lib/expando_patch.dart
index 75369a2..d614535 100644
--- a/runtime/lib/expando_patch.dart
+++ b/runtime/lib/expando_patch.dart
@@ -40,10 +40,10 @@
_data[i] = null;
}
}
- if (i !== _data.length && value == null) {
+ if (i != _data.length && value == null) {
doCompact = true;
_data[i] = null;
- } else if (i !== _data.length) {
+ } else if (i != _data.length) {
_data[i].value = value;
} else {
_data.add(new _WeakProperty(object, value));
diff --git a/runtime/vm/class_finalizer.cc b/runtime/vm/class_finalizer.cc
index 05a16e8..9fff0d7 100644
--- a/runtime/vm/class_finalizer.cc
+++ b/runtime/vm/class_finalizer.cc
@@ -377,7 +377,7 @@
// Update redirection data with resolved target.
factory.SetRedirectionTarget(target);
// Not needed anymore.
- factory.SetRedirectionIdentifier(String::null_object());
+ factory.SetRedirectionIdentifier(Object::null_string());
if (!target.IsRedirectingFactory()) {
return;
}
@@ -885,7 +885,7 @@
parameterized_type_name.ToCString()));
return BoundedType::New(parameterized_type,
malformed_bound,
- TypeParameter::null_object());
+ TypeParameter::Handle());
}
if (finalization >= kCanonicalize) {
@@ -1917,7 +1917,7 @@
if (FLAG_enable_type_checks || !type.HasResolvedTypeClass()) {
type.set_malformed_error(error);
}
- type.set_arguments(AbstractTypeArguments::null_object());
+ type.set_arguments(Object::null_abstract_type_arguments());
if (!type.IsFinalized()) {
type.SetIsFinalized();
// Do not canonicalize malformed types, since they may not be resolved.
diff --git a/runtime/vm/exceptions.cc b/runtime/vm/exceptions.cc
index 9cc15fd..b155564 100644
--- a/runtime/vm/exceptions.cc
+++ b/runtime/vm/exceptions.cc
@@ -14,6 +14,19 @@
#include "vm/stub_code.h"
#include "vm/symbols.h"
+// Allow the use of ASan (AddressSanitizer). This is needed as ASan needs to be
+// told about areas where the VM does the equivalent of a long-jump.
+#if defined(__has_feature)
+#if __has_feature(address_sanitizer)
+extern "C" void __asan_unpoison_memory_region(void *, size_t);
+#else // __has_feature(address_sanitizer)
+void __asan_unpoison_memory_region(void* ignore1, size_t ignore2) {}
+#endif // __has_feature(address_sanitizer)
+#else // defined(__has_feature)
+void __asan_unpoison_memory_region(void* ignore1, size_t ignore2) {}
+#endif // defined(__has_feature)
+
+
namespace dart {
DEFINE_FLAG(bool, print_stacktrace_at_throw, false,
@@ -243,6 +256,11 @@
typedef void (*ExcpHandler)(uword, uword, uword, RawObject*, RawObject*);
ExcpHandler func = reinterpret_cast<ExcpHandler>(
StubCode::JumpToExceptionHandlerEntryPoint());
+
+ // Unpoison the stack before we tear it down in the generated stub code.
+ uword current_sp = reinterpret_cast<uword>(&program_counter) - 1024;
+ __asan_unpoison_memory_region(reinterpret_cast<void*>(current_sp),
+ stack_pointer - current_sp);
func(program_counter, stack_pointer, frame_pointer,
raw_exception, raw_stacktrace);
#endif
diff --git a/runtime/vm/intermediate_language_x64.cc b/runtime/vm/intermediate_language_x64.cc
index 26bcf90..f84bb4c 100644
--- a/runtime/vm/intermediate_language_x64.cc
+++ b/runtime/vm/intermediate_language_x64.cc
@@ -3697,6 +3697,7 @@
kDeoptUnaryOp);
__ negq(value);
__ j(OVERFLOW, deopt);
+ Emit53BitOverflowCheck(compiler, deopt, value);
break;
}
case Token::kBIT_NOT:
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index b2a77b9..cf218c8 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -73,6 +73,10 @@
#endif
#define RAW_NULL kHeapObjectTag
Object* Object::null_object_ = NULL;
+Array* Object::null_array_ = NULL;
+String* Object::null_string_ = NULL;
+Instance* Object::null_instance_ = NULL;
+AbstractTypeArguments* Object::null_abstract_type_arguments_ = NULL;
Array* Object::empty_array_ = NULL;
Instance* Object::sentinel_ = NULL;
Instance* Object::transition_sentinel_ = NULL;
@@ -326,7 +330,11 @@
Heap* heap = isolate->heap();
// Allocate the read only object handles here.
- null_object_ = Array::ReadOnlyHandle();
+ null_object_ = Object::ReadOnlyHandle();
+ null_array_ = Array::ReadOnlyHandle();
+ null_string_ = String::ReadOnlyHandle();
+ null_instance_ = Instance::ReadOnlyHandle();
+ null_abstract_type_arguments_ = AbstractTypeArguments::ReadOnlyHandle();
empty_array_ = Array::ReadOnlyHandle();
sentinel_ = Instance::ReadOnlyHandle();
transition_sentinel_ = Instance::ReadOnlyHandle();
@@ -347,7 +355,11 @@
InitializeObject(address, kNullCid, Instance::InstanceSize());
}
- *null_object_ = null_;
+ *null_object_ = Object::null();
+ *null_array_ = Array::null();
+ *null_string_ = String::null();
+ *null_instance_ = Instance::null();
+ *null_abstract_type_arguments_ = AbstractTypeArguments::null();
// Initialize the empty array handle to null_ in order to be able to check
// if the empty array was allocated (RAW_NULL is not available).
@@ -547,6 +559,14 @@
LanguageError::New(String::Handle(String::New("SnapshotWriter Error")));
ASSERT(!null_object_->IsSmi());
+ ASSERT(!null_array_->IsSmi());
+ ASSERT(null_array_->IsArray());
+ ASSERT(!null_string_->IsSmi());
+ ASSERT(null_string_->IsString());
+ ASSERT(!null_instance_->IsSmi());
+ ASSERT(null_instance_->IsInstance());
+ ASSERT(!null_abstract_type_arguments_->IsSmi());
+ ASSERT(null_abstract_type_arguments_->IsAbstractTypeArguments());
ASSERT(!empty_array_->IsSmi());
ASSERT(empty_array_->IsArray());
ASSERT(!sentinel_->IsSmi());
@@ -1066,7 +1086,7 @@
// Remove the Object superclass cycle by setting the super type to null (not
// to the type of null).
cls = object_store->object_class();
- cls.set_super_type(Type::null_object());
+ cls.set_super_type(AbstractType::Handle());
ClassFinalizer::VerifyBootstrapClasses();
MarkInvisibleFunctions();
@@ -1604,7 +1624,7 @@
}
num_type_args += cls.NumTypeParameters();
// Object is its own super class during bootstrap.
- if (cls.super_type() == Type::null() ||
+ if (cls.super_type() == AbstractType::null() ||
cls.super_type() == isolate->object_store()->object_type()) {
break;
}
@@ -1626,7 +1646,7 @@
RawClass* Class::SuperClass() const {
- if (super_type() == Type::null()) {
+ if (super_type() == AbstractType::null()) {
return Class::null();
}
const AbstractType& sup_type = AbstractType::Handle(super_type());
@@ -4882,7 +4902,7 @@
result.set_name(name);
result.set_is_static(is_static);
if (is_static) {
- result.set_value(Instance::null_object());
+ result.set_value(Object::null_instance());
} else {
result.SetOffset(0);
}
@@ -4893,7 +4913,7 @@
result.set_has_initializer(false);
result.set_guarded_cid(kIllegalCid);
result.set_is_nullable(false);
- result.set_dependent_code(Array::null_object());
+ result.set_dependent_code(Object::null_array());
return result.raw();
}
@@ -4906,7 +4926,7 @@
const PatchClass& clone_owner =
PatchClass::Handle(PatchClass::New(new_owner, owner));
clone.set_owner(clone_owner);
- clone.set_dependent_code(Array::null_object());
+ clone.set_dependent_code(Object::null_array());
if (!clone.is_static()) {
clone.SetOffset(0);
}
@@ -5000,7 +5020,7 @@
if (code_objects.IsNull()) {
return;
}
- set_dependent_code(Array::null_object());
+ set_dependent_code(Object::null_array());
// Deoptimize all dependent code on the stack.
Code& code = Code::Handle();
@@ -5645,7 +5665,7 @@
const Array& symbols = Array::Handle(isolate,
object_store->keyword_symbols());
ASSERT(!symbols.IsNull());
- ASSERT(symbols.At(kind - Token::kFirstKeyword) != String::null());
+ ASSERT(symbols.At(kind - Token::kFirstKeyword) != Object::null());
return String::RawCast(symbols.At(kind - Token::kFirstKeyword));
}
return Symbols::New(Token::Str(kind));
@@ -6530,7 +6550,7 @@
const Library& core_lib = Library::Handle(Library::CoreLibrary());
ASSERT(!core_lib.IsNull());
const Namespace& ns = Namespace::Handle(
- Namespace::New(core_lib, Array::null_object(), Array::null_object()));
+ Namespace::New(core_lib, Object::null_array(), Object::null_array()));
result.AddImport(ns);
}
return result.raw();
@@ -6548,7 +6568,7 @@
Library::Handle(Library::NewLibraryHelper(core_lib_url, false));
core_lib.Register();
isolate->object_store()->set_bootstrap_library(ObjectStore::kCore, core_lib);
- isolate->object_store()->set_root_library(Library::null_object());
+ isolate->object_store()->set_root_library(Library::Handle());
// Hook up predefined classes without setting their library pointers. These
// classes are coming from the VM isolate, and are shared between multiple
@@ -10412,6 +10432,14 @@
}
+// Throw FiftyThreeBitOverflow exception.
+static void ThrowFiftyThreeBitOverflow(const Integer& i) {
+ const Array& exc_args = Array::Handle(Array::New(1));
+ exc_args.SetAt(0, i);
+ Exceptions::ThrowByType(Exceptions::kFiftyThreeBitOverflowError, exc_args);
+}
+
+
RawInteger* Integer::New(const String& str, Heap::Space space) {
// We are not supposed to have integers represented as two byte strings.
ASSERT(str.IsOneByteString());
@@ -10420,12 +10448,19 @@
const Bigint& big = Bigint::Handle(Bigint::New(str, space));
ASSERT(!BigintOperations::FitsIntoSmi(big));
ASSERT(!BigintOperations::FitsIntoInt64(big));
+ if (FLAG_throw_on_javascript_int_overflow) {
+ ThrowFiftyThreeBitOverflow(big);
+ }
return big.raw();
}
return Integer::New(value, space);
}
+// This is called from LiteralToken::New() in the parser, so we can't
+// raise an exception for 53-bit overflow here. Instead we do it in
+// Parser::CurrentIntegerLiteral(), which is the point in the parser where
+// integer literals escape, so we can call Parser::ErrorMsg().
RawInteger* Integer::NewCanonical(const String& str) {
// We are not supposed to have integers represented as two byte strings.
ASSERT(str.IsOneByteString());
@@ -10443,14 +10478,6 @@
}
-// Throw FiftyThreeBitOverflow exception.
-static void ThrowFiftyThreeBitOverflow(const Integer& i) {
- const Array& exc_args = Array::Handle(Array::New(1));
- exc_args.SetAt(0, i);
- Exceptions::ThrowByType(Exceptions::kFiftyThreeBitOverflowError, exc_args);
-}
-
-
RawInteger* Integer::New(int64_t value, Heap::Space space) {
if ((value <= Smi::kMaxValue) && (value >= Smi::kMinValue)) {
return Smi::New(value);
@@ -10495,31 +10522,32 @@
}
-static void CheckFiftyThreeBitOverflow(const Integer &i) {
+// Returns true if the signed Integer requires more than 53 bits.
+bool Integer::CheckFiftyThreeBitOverflow() const {
// Always overflow if the value doesn't fit into an int64_t.
int64_t value = 1ULL << 63;
- if (i.IsSmi()) {
- value = i.AsInt64Value();
- } else if (i.IsMint()) {
+ if (IsSmi()) {
+ value = AsInt64Value();
+ } else if (IsMint()) {
Mint& mint = Mint::Handle();
- mint ^= i.raw();
+ mint ^= raw();
value = mint.value();
} else {
- ASSERT(i.IsBigint());
+ ASSERT(IsBigint());
Bigint& big_value = Bigint::Handle();
- big_value ^= i.raw();
+ big_value ^= raw();
if (BigintOperations::FitsIntoInt64(big_value)) {
value = BigintOperations::ToInt64(big_value);
}
}
- if (Utils::IsInt(53, value)) return;
- ThrowFiftyThreeBitOverflow(i);
+ return !Utils::IsInt(53, value);
}
RawInteger* Integer::AsValidInteger() const {
- if (FLAG_throw_on_javascript_int_overflow) {
- CheckFiftyThreeBitOverflow(*this);
+ if (FLAG_throw_on_javascript_int_overflow &&
+ CheckFiftyThreeBitOverflow()) {
+ ThrowFiftyThreeBitOverflow(*this);
}
if (IsSmi()) return raw();
if (IsMint()) {
@@ -12639,7 +12667,7 @@
intptr_t index = Length() - 1;
const Array& contents = Array::Handle(data());
const Object& obj = Object::Handle(contents.At(index));
- contents.SetAt(index, null_object());
+ contents.SetAt(index, Object::null_object());
SetLength(index);
return obj.raw();
}
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 482f696..149b390 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -117,9 +117,6 @@
static Raw##object* null() { \
return reinterpret_cast<Raw##object*>(Object::null()); \
} \
- static const object& null_object() { \
- return reinterpret_cast<const object&>(Object::null_object()); \
- } \
virtual const char* ToCString() const; \
static const ClassId kClassId = k##object##Cid; \
private: /* NOLINT */ \
@@ -283,6 +280,12 @@
initializeHandle(obj, raw_ptr);
return *obj;
}
+ static Object* ReadOnlyHandle() {
+ Object* obj = reinterpret_cast<Object*>(
+ Dart::AllocateReadOnlyHandle());
+ initializeHandle(obj, Object::null());
+ return obj;
+ }
static Object& Handle() {
return Handle(Isolate::Current(), null_);
@@ -316,6 +319,22 @@
ASSERT(null_object_ != NULL);
return *null_object_;
}
+ static const Array& null_array() {
+ ASSERT(null_array_ != NULL);
+ return *null_array_;
+ }
+ static const String& null_string() {
+ ASSERT(null_string_ != NULL);
+ return *null_string_;
+ }
+ static const Instance& null_instance() {
+ ASSERT(null_instance_ != NULL);
+ return *null_instance_;
+ }
+ static const AbstractTypeArguments& null_abstract_type_arguments() {
+ ASSERT(null_abstract_type_arguments_ != NULL);
+ return *null_abstract_type_arguments_;
+ }
static const Array& empty_array() {
ASSERT(empty_array_ != NULL);
return *empty_array_;
@@ -550,6 +569,10 @@
// The static values below are read-only handle pointers for singleton
// objects that are shared between the different isolates.
static Object* null_object_;
+ static Array* null_array_;
+ static String* null_string_;
+ static Instance* null_instance_;
+ static AbstractTypeArguments* null_abstract_type_arguments_;
static Array* empty_array_;
static Instance* sentinel_;
static Instance* transition_sentinel_;
@@ -4012,6 +4035,9 @@
RawInteger* ArithmeticOp(Token::Kind operation, const Integer& other) const;
RawInteger* BitOp(Token::Kind operation, const Integer& other) const;
+ // Returns true if the Integer does not fit in 53 bits.
+ bool CheckFiftyThreeBitOverflow() const;
+
private:
// Return an integer in the form of a RawBigint.
RawBigint* AsBigint() const;
diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc
index bcc02b0..aff2cb1 100644
--- a/runtime/vm/parser.cc
+++ b/runtime/vm/parser.cc
@@ -29,6 +29,7 @@
DEFINE_FLAG(bool, trace_parser, false, "Trace parser operations.");
DEFINE_FLAG(bool, warning_as_error, false, "Treat warnings as errors.");
DEFINE_FLAG(bool, silent_warnings, false, "Silence warnings.");
+DECLARE_FLAG(bool, throw_on_javascript_int_overflow);
static void CheckedModeHandler(bool value) {
FLAG_enable_asserts = value;
@@ -402,7 +403,15 @@
RawInteger* Parser::CurrentIntegerLiteral() const {
literal_token_ ^= tokens_iterator_.CurrentToken();
ASSERT(literal_token_.kind() == Token::kINTEGER);
- return Integer::RawCast(literal_token_.value());
+ RawInteger* ri = Integer::RawCast(literal_token_.value());
+ if (FLAG_throw_on_javascript_int_overflow) {
+ const Integer& i = Integer::Handle(ri);
+ if (i.CheckFiftyThreeBitOverflow()) {
+ ErrorMsg(TokenPos(), "Integer literal does not fit in 53 bits: %s.",
+ i.ToCString());
+ }
+ }
+ return ri;
}
@@ -4460,7 +4469,7 @@
Library& core_lib = Library::Handle(Library::CoreLibrary());
ASSERT(!core_lib.IsNull());
const Namespace& core_ns = Namespace::Handle(
- Namespace::New(core_lib, Array::null_object(), Array::null_object()));
+ Namespace::New(core_lib, Object::null_array(), Object::null_array()));
library_.AddImport(core_ns);
}
while (CurrentToken() == Token::kPART) {
@@ -4514,8 +4523,9 @@
ParsePartHeader();
}
+ const Class& cls = Class::Handle(isolate());
while (true) {
- set_current_class(Class::null_object()); // No current class.
+ set_current_class(cls); // No current class.
SkipMetadata();
if (CurrentToken() == Token::kCLASS) {
ParseClassDeclaration(pending_classes);
@@ -6571,7 +6581,7 @@
}
-void Parser::ErrorMsg(intptr_t token_pos, const char* format, ...) {
+void Parser::ErrorMsg(intptr_t token_pos, const char* format, ...) const {
va_list args;
va_start(args, format);
const Error& error = Error::Handle(
@@ -8093,7 +8103,7 @@
// generated AST is not deterministic. Therefore mark the function as
// not optimizable.
current_function().set_is_optimizable(false);
- field.set_value(Instance::null_object());
+ field.set_value(Object::null_instance());
// It is a compile-time error if evaluation of a compile-time constant
// would raise an exception.
AppendErrorMsg(error, TokenPos(),
@@ -8687,8 +8697,7 @@
parameterized_type ^= type.raw();
parameterized_type.set_type_class(
Class::Handle(isolate(), Object::dynamic_class()));
- parameterized_type.set_arguments(
- AbstractTypeArguments::null_object());
+ parameterized_type.set_arguments(Object::null_abstract_type_arguments());
parameterized_type.set_malformed_error(malformed_error);
}
if (finalization >= ClassFinalizer::kTryResolve) {
diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h
index f78b9f2..42e1074 100644
--- a/runtime/vm/parser.h
+++ b/runtime/vm/parser.h
@@ -301,7 +301,7 @@
void Unimplemented(const char* msg);
// Reports error message at given location.
- void ErrorMsg(intptr_t token_pos, const char* msg, ...)
+ void ErrorMsg(intptr_t token_pos, const char* msg, ...) const
PRINTF_ATTRIBUTE(3, 4);
void Warning(intptr_t token_pos, const char* msg, ...)
PRINTF_ATTRIBUTE(3, 4);
diff --git a/runtime/vm/scanner.cc b/runtime/vm/scanner.cc
index 4600760..6162d1a 100644
--- a/runtime/vm/scanner.cc
+++ b/runtime/vm/scanner.cc
@@ -751,13 +751,10 @@
}
break;
- case '!': // ! != !==
+ case '!': // ! !=
Recognize(Token::kNOT);
if (c0_ == '=') {
Recognize(Token::kNE);
- if (c0_ == '=') {
- Recognize(Token::kNE_STRICT);
- }
}
break;
@@ -771,13 +768,10 @@
}
break;
- case '=': // = == === =>
+ case '=': // = == =>
Recognize(Token::kASSIGN);
if (c0_ == '=') {
Recognize(Token::kEQ);
- if (c0_ == '=') {
- Recognize(Token::kEQ_STRICT);
- }
} else if (c0_ == '>') {
Recognize(Token::kARROW);
}
diff --git a/runtime/vm/snapshot_test.cc b/runtime/vm/snapshot_test.cc
index d0d3365..c092a32 100644
--- a/runtime/vm/snapshot_test.cc
+++ b/runtime/vm/snapshot_test.cc
@@ -1061,7 +1061,7 @@
" static Fields testMain() {"
" Fields obj = new Fields(10, 20);"
" Fields.fld3 = 100;"
- " if (obj === null) {"
+ " if (obj == null) {"
" throw new Exception('Allocation failure');"
" }"
" if (obj.fld1 != 10) {"
diff --git a/sdk/lib/_internal/dartdoc/lib/dartdoc.dart b/sdk/lib/_internal/dartdoc/lib/dartdoc.dart
index f470414..ed1e8a6 100644
--- a/sdk/lib/_internal/dartdoc/lib/dartdoc.dart
+++ b/sdk/lib/_internal/dartdoc/lib/dartdoc.dart
@@ -140,9 +140,7 @@
new Path(dartPath), libPath,
options: const <String>['--categories=Client,Server', '--minify'])
.then((jsCode) {
- if (jsCode != null) {
- writeString(new File(jsPath), jsCode);
- }
+ if (jsCode != null) writeString(new File(jsPath), jsCode);
});
}
@@ -792,16 +790,21 @@
String jsonString = json.stringify(createNavigationInfo());
String dartString = jsonString.replaceAll(r"$", r"\$");
var filePath = pathos.join(tmpPath, 'client.dart');
- var clientDir = pathos.relative(
- pathos.join(normalizedDartdocPath, 'lib', 'src', 'client'),
- from: tmpPath);
+
+ var fileBuilder = new pathos.Builder(style: pathos.Style.url);
+
+ var clientDir = fileBuilder.join(
+ 'file:///',
+ fileBuilder.relative(
+ fileBuilder.join(normalizedDartdocPath, 'lib', 'src', 'client'),
+ from: tmpPath));
writeString(new File(filePath),
'''library client;
import 'dart:html';
import 'dart:json';
- import '${pathos.join(clientDir, 'client-shared.dart')}';
- import '${pathos.join(clientDir, 'dropdown.dart')}';
+ import '${fileBuilder.join(clientDir, 'client-shared.dart')}';
+ import '${fileBuilder.join(clientDir, 'dropdown.dart')}';
main() {
setup();
diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart
index a3f0363..703977e 100644
--- a/sdk/lib/html/dart2js/html_dart2js.dart
+++ b/sdk/lib/html/dart2js/html_dart2js.dart
@@ -1928,11 +1928,12 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/filter-effects/
+@Experimental // untriaged
class CssFilterRule extends CssRule native "WebKitCSSFilterRule" {
@DomName('WebKitCSSFilterRule.style')
@DocsEditable
+ @Experimental // untriaged
final CssStyleDeclaration style;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -1941,6 +1942,89 @@
@DocsEditable
+@DomName('WebKitCSSFilterValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssFilterValue extends _CssValueList native "WebKitCSSFilterValue" {
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_BLUR')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_BLUR = 10;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_BRIGHTNESS')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_BRIGHTNESS = 8;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_CONTRAST')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_CONTRAST = 9;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_CUSTOM')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_CUSTOM = 12;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_DROP_SHADOW')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_DROP_SHADOW = 11;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_GRAYSCALE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_GRAYSCALE = 2;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_HUE_ROTATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_HUE_ROTATE = 5;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_INVERT')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_INVERT = 6;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_OPACITY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_OPACITY = 7;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_REFERENCE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_REFERENCE = 1;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_SATURATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_SATURATE = 4;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_SEPIA')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_SEPIA = 3;
+
+ @DomName('WebKitCSSFilterValue.operationType')
+ @DocsEditable
+ @Experimental // untriaged
+ final int operationType;
+
+ @DomName('WebKitCSSFilterValue.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _CSSValue __getter__(int index) native;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('CSSFontFaceLoadEvent')
// http://www.w3.org/TR/css3-fonts/
@Experimental
@@ -2024,15 +2108,17 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/css3-animations/#CSSKeyframeRule-interface
+@Experimental // untriaged
class CssKeyframeRule extends CssRule native "WebKitCSSKeyframeRule" {
@DomName('WebKitCSSKeyframeRule.keyText')
@DocsEditable
+ @Experimental // untriaged
String keyText;
@DomName('WebKitCSSKeyframeRule.style')
@DocsEditable
+ @Experimental // untriaged
final CssStyleDeclaration style;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2045,17 +2131,19 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/css3-animations/#csskeyframesrule
+@Experimental // untriaged
class CssKeyframesRule extends CssRule native "WebKitCSSKeyframesRule" {
@DomName('WebKitCSSKeyframesRule.cssRules')
@DocsEditable
+ @Experimental // untriaged
@Returns('_CssRuleList')
@Creates('_CssRuleList')
final List<CssRule> cssRules;
@DomName('WebKitCSSKeyframesRule.name')
@DocsEditable
+ @Experimental // untriaged
String name;
@DomName('WebKitCSSKeyframesRule.__getter__')
@@ -2065,14 +2153,17 @@
@DomName('WebKitCSSKeyframesRule.deleteRule')
@DocsEditable
+ @Experimental // untriaged
void deleteRule(String key) native;
@DomName('WebKitCSSKeyframesRule.findRule')
@DocsEditable
+ @Experimental // untriaged
CssKeyframeRule findRule(String key) native;
@DomName('WebKitCSSKeyframesRule.insertRule')
@DocsEditable
+ @Experimental // untriaged
void insertRule(String rule) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2081,6 +2172,193 @@
@DocsEditable
+@DomName('WebKitCSSMatrix')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssMatrix native "WebKitCSSMatrix" {
+
+ @DomName('WebKitCSSMatrix.CSSMatrix')
+ @DocsEditable
+ factory CssMatrix([String cssValue]) {
+ if (cssValue != null) {
+ return CssMatrix._create_1(cssValue);
+ }
+ return CssMatrix._create_2();
+ }
+ static CssMatrix _create_1(cssValue) => JS('CssMatrix', 'new WebKitCSSMatrix(#)', cssValue);
+ static CssMatrix _create_2() => JS('CssMatrix', 'new WebKitCSSMatrix()');
+
+ @DomName('WebKitCSSMatrix.a')
+ @DocsEditable
+ @Experimental // untriaged
+ num a;
+
+ @DomName('WebKitCSSMatrix.b')
+ @DocsEditable
+ @Experimental // untriaged
+ num b;
+
+ @DomName('WebKitCSSMatrix.c')
+ @DocsEditable
+ @Experimental // untriaged
+ num c;
+
+ @DomName('WebKitCSSMatrix.d')
+ @DocsEditable
+ @Experimental // untriaged
+ num d;
+
+ @DomName('WebKitCSSMatrix.e')
+ @DocsEditable
+ @Experimental // untriaged
+ num e;
+
+ @DomName('WebKitCSSMatrix.f')
+ @DocsEditable
+ @Experimental // untriaged
+ num f;
+
+ @DomName('WebKitCSSMatrix.m11')
+ @DocsEditable
+ @Experimental // untriaged
+ num m11;
+
+ @DomName('WebKitCSSMatrix.m12')
+ @DocsEditable
+ @Experimental // untriaged
+ num m12;
+
+ @DomName('WebKitCSSMatrix.m13')
+ @DocsEditable
+ @Experimental // untriaged
+ num m13;
+
+ @DomName('WebKitCSSMatrix.m14')
+ @DocsEditable
+ @Experimental // untriaged
+ num m14;
+
+ @DomName('WebKitCSSMatrix.m21')
+ @DocsEditable
+ @Experimental // untriaged
+ num m21;
+
+ @DomName('WebKitCSSMatrix.m22')
+ @DocsEditable
+ @Experimental // untriaged
+ num m22;
+
+ @DomName('WebKitCSSMatrix.m23')
+ @DocsEditable
+ @Experimental // untriaged
+ num m23;
+
+ @DomName('WebKitCSSMatrix.m24')
+ @DocsEditable
+ @Experimental // untriaged
+ num m24;
+
+ @DomName('WebKitCSSMatrix.m31')
+ @DocsEditable
+ @Experimental // untriaged
+ num m31;
+
+ @DomName('WebKitCSSMatrix.m32')
+ @DocsEditable
+ @Experimental // untriaged
+ num m32;
+
+ @DomName('WebKitCSSMatrix.m33')
+ @DocsEditable
+ @Experimental // untriaged
+ num m33;
+
+ @DomName('WebKitCSSMatrix.m34')
+ @DocsEditable
+ @Experimental // untriaged
+ num m34;
+
+ @DomName('WebKitCSSMatrix.m41')
+ @DocsEditable
+ @Experimental // untriaged
+ num m41;
+
+ @DomName('WebKitCSSMatrix.m42')
+ @DocsEditable
+ @Experimental // untriaged
+ num m42;
+
+ @DomName('WebKitCSSMatrix.m43')
+ @DocsEditable
+ @Experimental // untriaged
+ num m43;
+
+ @DomName('WebKitCSSMatrix.m44')
+ @DocsEditable
+ @Experimental // untriaged
+ num m44;
+
+ @DomName('WebKitCSSMatrix.inverse')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix inverse() native;
+
+ @DomName('WebKitCSSMatrix.multiply')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix multiply(CssMatrix secondMatrix) native;
+
+ @DomName('WebKitCSSMatrix.rotate')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix rotate(num rotX, num rotY, num rotZ) native;
+
+ @DomName('WebKitCSSMatrix.rotateAxisAngle')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix rotateAxisAngle(num x, num y, num z, num angle) native;
+
+ @DomName('WebKitCSSMatrix.scale')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix scale(num scaleX, num scaleY, num scaleZ) native;
+
+ @DomName('WebKitCSSMatrix.setMatrixValue')
+ @DocsEditable
+ @Experimental // untriaged
+ void setMatrixValue(String string) native;
+
+ @DomName('WebKitCSSMatrix.skewX')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix skewX(num angle) native;
+
+ @DomName('WebKitCSSMatrix.skewY')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix skewY(num angle) native;
+
+ @DomName('WebKitCSSMatrix.toString')
+ @DocsEditable
+ @Experimental // untriaged
+ String toString() native;
+
+ @DomName('WebKitCSSMatrix.translate')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix translate(num x, num y, num z) native;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('CSSMediaRule')
class CssMediaRule extends CssRule native "CSSMediaRule" {
@@ -2108,6 +2386,19 @@
@DocsEditable
+@DomName('WebKitCSSMixFunctionValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssMixFunctionValue extends _CssValueList native "WebKitCSSMixFunctionValue" {
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('CSSPageRule')
class CssPageRule extends CssRule native "CSSPageRule" {
@@ -2129,11 +2420,12 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://dev.w3.org/csswg/css-regions/#region-style-rule-interface
+@Experimental // untriaged
class CssRegionRule extends CssRule native "WebKitCSSRegionRule" {
@DomName('WebKitCSSRegionRule.cssRules')
@DocsEditable
+ @Experimental // untriaged
@Returns('_CssRuleList')
@Creates('_CssRuleList')
final List<CssRule> cssRules;
@@ -2255,6 +2547,11 @@
@DocsEditable
final CssRule parentRule;
+ @DomName('CSSStyleDeclaration.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(String propertyName, String propertyValue) native;
+
@DomName('CSSStyleDeclaration.getPropertyPriority')
@DocsEditable
String getPropertyPriority(String propertyName) native;
@@ -5557,6 +5854,134 @@
@DocsEditable
+@DomName('WebKitCSSTransformValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssTransformValue extends _CssValueList native "WebKitCSSTransformValue" {
+
+ @DomName('WebKitCSSTransformValue.CSS_MATRIX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_MATRIX = 11;
+
+ @DomName('WebKitCSSTransformValue.CSS_MATRIX3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_MATRIX3D = 21;
+
+ @DomName('WebKitCSSTransformValue.CSS_PERSPECTIVE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_PERSPECTIVE = 20;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATE = 4;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATE3D = 17;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEX = 14;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEY = 15;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEZ = 16;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALE = 5;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALE3D = 19;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEX = 6;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEY = 7;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEZ = 18;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEW')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEW = 8;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEWX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEWX = 9;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEWY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEWY = 10;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATE = 1;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATE3D = 13;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEX = 2;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEY = 3;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEZ = 12;
+
+ @DomName('WebKitCSSTransformValue.operationType')
+ @DocsEditable
+ @Experimental // untriaged
+ final int operationType;
+
+ @DomName('WebKitCSSTransformValue.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _CSSValue __getter__(int index) native;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('CSSUnknownRule')
// http://dev.w3.org/csswg/cssom/#the-cssstylesheet-interface
@deprecated // deprecated
@@ -7204,7 +7629,11 @@
@DomName('DOMStringMap')
abstract class DomStringMap {
+ bool __delete__(String name);
+
String __getter__(String name);
+
+ void __setter__(String name, String value);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -8533,15 +8962,6 @@
@DocsEditable
final String tagName;
- @JSName('webkitInsertionParent')
- @DomName('Element.webkitInsertionParent')
- @DocsEditable
- @SupportedBrowser(SupportedBrowser.CHROME)
- @SupportedBrowser(SupportedBrowser.SAFARI)
- @Experimental
- // https://www.w3.org/Bugs/Public/show_bug.cgi?id=21067
- final Node insertionParent;
-
@JSName('webkitPseudo')
@DomName('Element.webkitPseudo')
@DocsEditable
@@ -9173,6 +9593,16 @@
@DomName('HTMLEmbedElement.width')
@DocsEditable
String width;
+
+ @DomName('HTMLEmbedElement.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __getter__(index_OR_name) native;
+
+ @DomName('HTMLEmbedElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(index_OR_name, Node value) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -9534,6 +9964,14 @@
@DocsEditable
final int eventPhase;
+ @DomName('Event.path')
+ @DocsEditable
+ // https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#extensions-to-event
+ @Experimental
+ @Returns('NodeList')
+ @Creates('NodeList')
+ final List<Node> path;
+
EventTarget get target => _convertNativeToDart_EventTarget(this._get_target);
@JSName('target')
@DomName('Event.target')
@@ -9555,14 +9993,6 @@
@DocsEditable
void $dom_initEvent(String eventTypeArg, bool canBubbleArg, bool cancelableArg) native;
- @DomName('Event.path')
- @DocsEditable
- // https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#extensions-to-event
- @Experimental
- @Returns('NodeList')
- @Creates('NodeList')
- List<Node> path() native;
-
@DomName('Event.preventDefault')
@DocsEditable
void preventDefault() native;
@@ -10995,7 +11425,7 @@
if (JS("bool", "# >>> 0 !== # || # >= #", index,
index, index, length))
throw new RangeError.range(index, 0, length);
- return JS("Node", "#[#]", this, index);
+ return this.item(index);
}
void operator[]=(int index, Node value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
@@ -11035,6 +11465,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('HTMLAllCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(int index) native;
+
@DomName('HTMLAllCollection.item')
@DocsEditable
Node item(int index) native;
@@ -11106,6 +11541,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('HTMLCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(String name) native;
+
@DomName('HTMLCollection.item')
@DocsEditable
Node item(int index) native;
@@ -13308,6 +13748,11 @@
@DocsEditable
String hreflang;
+ @DomName('HTMLLinkElement.import')
+ @DocsEditable
+ @Experimental // untriaged
+ final DocumentFragment import;
+
@DomName('HTMLLinkElement.media')
@DocsEditable
String media;
@@ -14900,6 +15345,43 @@
@DocsEditable
+@DomName('MIDIAccess')
+@Experimental // untriaged
+class MidiAccess extends EventTarget native "MIDIAccess" {
+
+ @JSName('addEventListener')
+ @DomName('MIDIAccess.addEventListener')
+ @DocsEditable
+ @Experimental // untriaged
+ void $dom_addEventListener(String type, EventListener listener, [bool useCapture]) native;
+
+ @DomName('MIDIAccess.dispatchEvent')
+ @DocsEditable
+ @Experimental // untriaged
+ bool dispatchEvent(Event event) native;
+
+ @DomName('MIDIAccess.inputs')
+ @DocsEditable
+ @Experimental // untriaged
+ List<MidiInput> inputs() native;
+
+ @DomName('MIDIAccess.outputs')
+ @DocsEditable
+ @Experimental // untriaged
+ List<MidiOutput> outputs() native;
+
+ @JSName('removeEventListener')
+ @DomName('MIDIAccess.removeEventListener')
+ @DocsEditable
+ @Experimental // untriaged
+ void $dom_removeEventListener(String type, EventListener listener, [bool useCapture]) native;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('MIDIConnectionEvent')
// http://webaudio.github.io/web-midi-api/#midiconnectionevent-interface
@Experimental
@@ -15091,6 +15573,11 @@
MimeType elementAt(int index) => this[index];
// -- end List<MimeType> mixins.
+ @DomName('MimeTypeArray.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ MimeType __getter__(String name) native;
+
@DomName('MimeTypeArray.item')
@DocsEditable
MimeType item(int index) native;
@@ -15578,6 +16065,11 @@
@DocsEditable
final int length;
+ @DomName('WebKitNamedFlowCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ NamedFlow __getter__(String name) native;
+
@DomName('WebKitNamedFlowCollection.item')
@DocsEditable
NamedFlow item(int index) native;
@@ -15795,15 +16287,20 @@
@Experimental
class NavigatorUserMediaError native "NavigatorUserMediaError" {
- @DomName('NavigatorUserMediaError.PERMISSION_DENIED')
+ @DomName('NavigatorUserMediaError.constraintName')
@DocsEditable
- @Experimental // nonstandard
- static const int PERMISSION_DENIED = 1;
+ @Experimental // untriaged
+ final String constraintName;
- @DomName('NavigatorUserMediaError.code')
+ @DomName('NavigatorUserMediaError.message')
@DocsEditable
- @Experimental // nonstandard
- final int code;
+ @Experimental // untriaged
+ final String message;
+
+ @DomName('NavigatorUserMediaError.name')
+ @DocsEditable
+ @Experimental // untriaged
+ final String name;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -16749,6 +17246,16 @@
@DocsEditable
final bool willValidate;
+ @DomName('HTMLObjectElement.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __getter__(index_OR_name) native;
+
+ @DomName('HTMLObjectElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(index_OR_name, Node value) native;
+
@DomName('HTMLObjectElement.checkValidity')
@DocsEditable
bool checkValidity() native;
@@ -17424,6 +17931,11 @@
@DocsEditable
final String name;
+ @DomName('Plugin.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ MimeType __getter__(String name) native;
+
@DomName('Plugin.item')
@DocsEditable
MimeType item(int index) native;
@@ -17490,6 +18002,11 @@
Plugin elementAt(int index) => this[index];
// -- end List<Plugin> mixins.
+ @DomName('PluginArray.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Plugin __getter__(String name) native;
+
@DomName('PluginArray.item')
@DocsEditable
Plugin item(int index) native;
@@ -17924,6 +18441,21 @@
@DocsEditable
+@DomName('ResourceProgressEvent')
+@Experimental // untriaged
+class ResourceProgressEvent extends ProgressEvent native "ResourceProgressEvent" {
+
+ @DomName('ResourceProgressEvent.url')
+ @DocsEditable
+ @Experimental // untriaged
+ final String url;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('RTCDataChannel')
// http://dev.w3.org/2011/webrtc/editor/webrtc.html#idl-def-RTCDataChannel
@Experimental
@@ -18543,6 +19075,11 @@
@Experimental
class RtcStatsResponse native "RTCStatsResponse" {
+ @DomName('RTCStatsResponse.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ RtcStatsReport __getter__(String name) native;
+
@DomName('RTCStatsResponse.namedItem')
@DocsEditable
RtcStatsReport namedItem(String name) native;
@@ -18859,6 +19396,11 @@
@DocsEditable
final bool willValidate;
+ @DomName('HTMLSelectElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(int index, OptionElement value) native;
+
@DomName('HTMLSelectElement.checkValidity')
@DocsEditable
bool checkValidity() native;
@@ -19926,11 +20468,21 @@
@DocsEditable
final int $dom_length;
+ @DomName('Storage.__delete__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __delete__(index_OR_name) native;
+
@DomName('Storage.__getter__')
@DocsEditable
@Experimental // untriaged
String __getter__(index_OR_name) native;
+ @DomName('Storage.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(index_OR_name, String value) native;
+
@JSName('clear')
@DomName('Storage.clear')
@DocsEditable
@@ -20623,15 +21175,6 @@
class Text extends CharacterData native "Text" {
factory Text(String data) => document.$dom_createTextNode(data);
- @JSName('webkitInsertionParent')
- @DomName('Text.webkitInsertionParent')
- @DocsEditable
- @SupportedBrowser(SupportedBrowser.CHROME)
- @SupportedBrowser(SupportedBrowser.SAFARI)
- @Experimental
- // https://www.w3.org/Bugs/Public/show_bug.cgi?id=21067
- final Node insertionParent;
-
@DomName('Text.wholeText')
@DocsEditable
final String wholeText;
@@ -22926,8 +23469,14 @@
@Experimental // untriaged
@Creates('Window|=Object')
@Returns('Window|=Object')
- WindowBase __getter__(int index) {
- return _convertNativeToDart_Window(___getter___1(index));
+ WindowBase __getter__(index_OR_name) {
+ if ((index_OR_name is int || index_OR_name == null)) {
+ return _convertNativeToDart_Window(___getter___1(index_OR_name));
+ }
+ if ((index_OR_name is String || index_OR_name == null)) {
+ return _convertNativeToDart_Window(___getter___2(index_OR_name));
+ }
+ throw new ArgumentError("Incorrect number or type of arguments");
}
@JSName('__getter__')
@DomName('Window.__getter__')
@@ -22935,7 +23484,14 @@
@Experimental // untriaged
@Creates('Window|=Object')
@Returns('Window|=Object')
- ___getter___1(index) native;
+ ___getter___1(int index) native;
+ @JSName('__getter__')
+ @DomName('Window.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ @Creates('Window|=Object')
+ @Returns('Window|=Object')
+ ___getter___2(String name) native;
@JSName('addEventListener')
@DomName('Window.addEventListener')
@@ -24614,6 +25170,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('NamedNodeMap.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(String name) native;
+
@DomName('NamedNodeMap.getNamedItem')
@DocsEditable
Node getNamedItem(String name) native;
@@ -24899,6 +25460,11 @@
StyleSheet elementAt(int index) => this[index];
// -- end List<StyleSheet> mixins.
+ @DomName('StyleSheetList.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ CssStyleSheet __getter__(String name) native;
+
@DomName('StyleSheetList.item')
@DocsEditable
StyleSheet item(int index) native;
@@ -24921,9 +25487,6 @@
@DocsEditable
@DomName('WebKitCSSMatrix')
-@SupportedBrowser(SupportedBrowser.CHROME)
-@SupportedBrowser(SupportedBrowser.SAFARI)
-@Experimental
// http://dev.w3.org/csswg/cssom/
@deprecated // deprecated
abstract class _WebKitCSSMatrix native "WebKitCSSMatrix" {
@@ -24967,6 +25530,95 @@
@DocsEditable
+@DomName('WebKitCSSFilterRule')
+// http://www.w3.org/TR/filter-effects/
+@Experimental
+class _WebKitCssFilterRule extends CssRule native "WebKitCSSFilterRule" {
+
+ @DomName('WebKitCSSFilterRule.style')
+ @DocsEditable
+ final CssStyleDeclaration style;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
+@DomName('WebKitCSSKeyframeRule')
+// http://www.w3.org/TR/css3-animations/#CSSKeyframeRule-interface
+@Experimental
+class _WebKitCssKeyframeRule extends CssRule native "WebKitCSSKeyframeRule" {
+
+ @DomName('WebKitCSSKeyframeRule.keyText')
+ @DocsEditable
+ String keyText;
+
+ @DomName('WebKitCSSKeyframeRule.style')
+ @DocsEditable
+ final CssStyleDeclaration style;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
+@DomName('WebKitCSSKeyframesRule')
+// http://www.w3.org/TR/css3-animations/#csskeyframesrule
+@Experimental
+class _WebKitCssKeyframesRule extends CssRule native "WebKitCSSKeyframesRule" {
+
+ @DomName('WebKitCSSKeyframesRule.cssRules')
+ @DocsEditable
+ @Returns('_CssRuleList')
+ @Creates('_CssRuleList')
+ final List<CssRule> cssRules;
+
+ @DomName('WebKitCSSKeyframesRule.name')
+ @DocsEditable
+ String name;
+
+ @DomName('WebKitCSSKeyframesRule.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _WebKitCssKeyframeRule __getter__(int index) native;
+
+ @DomName('WebKitCSSKeyframesRule.deleteRule')
+ @DocsEditable
+ void deleteRule(String key) native;
+
+ @DomName('WebKitCSSKeyframesRule.findRule')
+ @DocsEditable
+ _WebKitCssKeyframeRule findRule(String key) native;
+
+ @DomName('WebKitCSSKeyframesRule.insertRule')
+ @DocsEditable
+ void insertRule(String rule) native;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
+@DomName('WebKitCSSRegionRule')
+// http://dev.w3.org/csswg/css-regions/#region-style-rule-interface
+@Experimental
+class _WebKitCssRegionRule extends CssRule native "WebKitCSSRegionRule" {
+
+ @DomName('WebKitCSSRegionRule.cssRules')
+ @DocsEditable
+ @Returns('_CssRuleList')
+ @Creates('_CssRuleList')
+ final List<CssRule> cssRules;
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('WorkerContext')
// http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#WorkerGlobalScope-partial
@Experimental // stable
@@ -25231,7 +25883,7 @@
/**
* An object that can be drawn to a [CanvasRenderingContext2D] object with
* [CanvasRenderingContext2D.drawImage],
- * [CanvasRenderingContext2D.drawImageRect],
+ * [CanvasRenderingContext2D.drawImageToRect],
* [CanvasRenderingContext2D.drawImageScaled], or
* [CanvasRenderingContext2D.drawImageScaledFromSource].
*
diff --git a/sdk/lib/html/dartium/html_dartium.dart b/sdk/lib/html/dartium/html_dartium.dart
index e8df740..420dd93 100644
--- a/sdk/lib/html/dartium/html_dartium.dart
+++ b/sdk/lib/html/dartium/html_dartium.dart
@@ -2332,13 +2332,101 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/filter-effects/
+@Experimental // untriaged
class CssFilterRule extends CssRule {
CssFilterRule.internal() : super.internal();
@DomName('WebKitCSSFilterRule.style')
@DocsEditable
- CssStyleDeclaration get style native "WebKitCSSFilterRule_style_Getter";
+ @Experimental // untriaged
+ CssStyleDeclaration get style native "CSSFilterRule_style_Getter";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
+@DomName('WebKitCSSFilterValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssFilterValue extends _CssValueList {
+ CssFilterValue.internal() : super.internal();
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_BLUR')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_BLUR = 10;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_BRIGHTNESS')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_BRIGHTNESS = 8;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_CONTRAST')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_CONTRAST = 9;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_CUSTOM')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_CUSTOM = 12;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_DROP_SHADOW')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_DROP_SHADOW = 11;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_GRAYSCALE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_GRAYSCALE = 2;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_HUE_ROTATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_HUE_ROTATE = 5;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_INVERT')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_INVERT = 6;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_OPACITY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_OPACITY = 7;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_REFERENCE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_REFERENCE = 1;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_SATURATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_SATURATE = 4;
+
+ @DomName('WebKitCSSFilterValue.CSS_FILTER_SEPIA')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_FILTER_SEPIA = 3;
+
+ @DomName('WebKitCSSFilterValue.operationType')
+ @DocsEditable
+ @Experimental // untriaged
+ int get operationType native "CSSFilterValue_operationType_Getter";
+
+ @DomName('WebKitCSSFilterValue.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _CSSValue __getter__(int index) native "CSSFilterValue___getter___Callback";
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2446,21 +2534,24 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/css3-animations/#CSSKeyframeRule-interface
+@Experimental // untriaged
class CssKeyframeRule extends CssRule {
CssKeyframeRule.internal() : super.internal();
@DomName('WebKitCSSKeyframeRule.keyText')
@DocsEditable
- String get keyText native "WebKitCSSKeyframeRule_keyText_Getter";
+ @Experimental // untriaged
+ String get keyText native "CSSKeyframeRule_keyText_Getter";
@DomName('WebKitCSSKeyframeRule.keyText')
@DocsEditable
- void set keyText(String value) native "WebKitCSSKeyframeRule_keyText_Setter";
+ @Experimental // untriaged
+ void set keyText(String value) native "CSSKeyframeRule_keyText_Setter";
@DomName('WebKitCSSKeyframeRule.style')
@DocsEditable
- CssStyleDeclaration get style native "WebKitCSSKeyframeRule_style_Getter";
+ @Experimental // untriaged
+ CssStyleDeclaration get style native "CSSKeyframeRule_style_Getter";
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2475,38 +2566,343 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://www.w3.org/TR/css3-animations/#csskeyframesrule
+@Experimental // untriaged
class CssKeyframesRule extends CssRule {
CssKeyframesRule.internal() : super.internal();
@DomName('WebKitCSSKeyframesRule.cssRules')
@DocsEditable
- List<CssRule> get cssRules native "WebKitCSSKeyframesRule_cssRules_Getter";
+ @Experimental // untriaged
+ List<CssRule> get cssRules native "CSSKeyframesRule_cssRules_Getter";
@DomName('WebKitCSSKeyframesRule.name')
@DocsEditable
- String get name native "WebKitCSSKeyframesRule_name_Getter";
+ @Experimental // untriaged
+ String get name native "CSSKeyframesRule_name_Getter";
@DomName('WebKitCSSKeyframesRule.name')
@DocsEditable
- void set name(String value) native "WebKitCSSKeyframesRule_name_Setter";
+ @Experimental // untriaged
+ void set name(String value) native "CSSKeyframesRule_name_Setter";
@DomName('WebKitCSSKeyframesRule.__getter__')
@DocsEditable
@Experimental // untriaged
- CssKeyframeRule __getter__(int index) native "WebKitCSSKeyframesRule___getter___Callback";
+ CssKeyframeRule __getter__(int index) native "CSSKeyframesRule___getter___Callback";
@DomName('WebKitCSSKeyframesRule.deleteRule')
@DocsEditable
- void deleteRule(String key) native "WebKitCSSKeyframesRule_deleteRule_Callback";
+ @Experimental // untriaged
+ void deleteRule(String key) native "CSSKeyframesRule_deleteRule_Callback";
@DomName('WebKitCSSKeyframesRule.findRule')
@DocsEditable
- CssKeyframeRule findRule(String key) native "WebKitCSSKeyframesRule_findRule_Callback";
+ @Experimental // untriaged
+ CssKeyframeRule findRule(String key) native "CSSKeyframesRule_findRule_Callback";
@DomName('WebKitCSSKeyframesRule.insertRule')
@DocsEditable
- void insertRule(String rule) native "WebKitCSSKeyframesRule_insertRule_Callback";
+ @Experimental // untriaged
+ void insertRule(String rule) native "CSSKeyframesRule_insertRule_Callback";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
+@DomName('WebKitCSSMatrix')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssMatrix extends NativeFieldWrapperClass1 {
+ CssMatrix.internal();
+
+ @DomName('WebKitCSSMatrix.CSSMatrix')
+ @DocsEditable
+ factory CssMatrix([String cssValue]) {
+ return CssMatrix._create_1(cssValue);
+ }
+
+ @DocsEditable
+ static CssMatrix _create_1(cssValue) native "CSSMatrix__create_1constructorCallback";
+
+ @DomName('WebKitCSSMatrix.a')
+ @DocsEditable
+ @Experimental // untriaged
+ num get a native "CSSMatrix_a_Getter";
+
+ @DomName('WebKitCSSMatrix.a')
+ @DocsEditable
+ @Experimental // untriaged
+ void set a(num value) native "CSSMatrix_a_Setter";
+
+ @DomName('WebKitCSSMatrix.b')
+ @DocsEditable
+ @Experimental // untriaged
+ num get b native "CSSMatrix_b_Getter";
+
+ @DomName('WebKitCSSMatrix.b')
+ @DocsEditable
+ @Experimental // untriaged
+ void set b(num value) native "CSSMatrix_b_Setter";
+
+ @DomName('WebKitCSSMatrix.c')
+ @DocsEditable
+ @Experimental // untriaged
+ num get c native "CSSMatrix_c_Getter";
+
+ @DomName('WebKitCSSMatrix.c')
+ @DocsEditable
+ @Experimental // untriaged
+ void set c(num value) native "CSSMatrix_c_Setter";
+
+ @DomName('WebKitCSSMatrix.d')
+ @DocsEditable
+ @Experimental // untriaged
+ num get d native "CSSMatrix_d_Getter";
+
+ @DomName('WebKitCSSMatrix.d')
+ @DocsEditable
+ @Experimental // untriaged
+ void set d(num value) native "CSSMatrix_d_Setter";
+
+ @DomName('WebKitCSSMatrix.e')
+ @DocsEditable
+ @Experimental // untriaged
+ num get e native "CSSMatrix_e_Getter";
+
+ @DomName('WebKitCSSMatrix.e')
+ @DocsEditable
+ @Experimental // untriaged
+ void set e(num value) native "CSSMatrix_e_Setter";
+
+ @DomName('WebKitCSSMatrix.f')
+ @DocsEditable
+ @Experimental // untriaged
+ num get f native "CSSMatrix_f_Getter";
+
+ @DomName('WebKitCSSMatrix.f')
+ @DocsEditable
+ @Experimental // untriaged
+ void set f(num value) native "CSSMatrix_f_Setter";
+
+ @DomName('WebKitCSSMatrix.m11')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m11 native "CSSMatrix_m11_Getter";
+
+ @DomName('WebKitCSSMatrix.m11')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m11(num value) native "CSSMatrix_m11_Setter";
+
+ @DomName('WebKitCSSMatrix.m12')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m12 native "CSSMatrix_m12_Getter";
+
+ @DomName('WebKitCSSMatrix.m12')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m12(num value) native "CSSMatrix_m12_Setter";
+
+ @DomName('WebKitCSSMatrix.m13')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m13 native "CSSMatrix_m13_Getter";
+
+ @DomName('WebKitCSSMatrix.m13')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m13(num value) native "CSSMatrix_m13_Setter";
+
+ @DomName('WebKitCSSMatrix.m14')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m14 native "CSSMatrix_m14_Getter";
+
+ @DomName('WebKitCSSMatrix.m14')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m14(num value) native "CSSMatrix_m14_Setter";
+
+ @DomName('WebKitCSSMatrix.m21')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m21 native "CSSMatrix_m21_Getter";
+
+ @DomName('WebKitCSSMatrix.m21')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m21(num value) native "CSSMatrix_m21_Setter";
+
+ @DomName('WebKitCSSMatrix.m22')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m22 native "CSSMatrix_m22_Getter";
+
+ @DomName('WebKitCSSMatrix.m22')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m22(num value) native "CSSMatrix_m22_Setter";
+
+ @DomName('WebKitCSSMatrix.m23')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m23 native "CSSMatrix_m23_Getter";
+
+ @DomName('WebKitCSSMatrix.m23')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m23(num value) native "CSSMatrix_m23_Setter";
+
+ @DomName('WebKitCSSMatrix.m24')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m24 native "CSSMatrix_m24_Getter";
+
+ @DomName('WebKitCSSMatrix.m24')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m24(num value) native "CSSMatrix_m24_Setter";
+
+ @DomName('WebKitCSSMatrix.m31')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m31 native "CSSMatrix_m31_Getter";
+
+ @DomName('WebKitCSSMatrix.m31')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m31(num value) native "CSSMatrix_m31_Setter";
+
+ @DomName('WebKitCSSMatrix.m32')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m32 native "CSSMatrix_m32_Getter";
+
+ @DomName('WebKitCSSMatrix.m32')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m32(num value) native "CSSMatrix_m32_Setter";
+
+ @DomName('WebKitCSSMatrix.m33')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m33 native "CSSMatrix_m33_Getter";
+
+ @DomName('WebKitCSSMatrix.m33')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m33(num value) native "CSSMatrix_m33_Setter";
+
+ @DomName('WebKitCSSMatrix.m34')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m34 native "CSSMatrix_m34_Getter";
+
+ @DomName('WebKitCSSMatrix.m34')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m34(num value) native "CSSMatrix_m34_Setter";
+
+ @DomName('WebKitCSSMatrix.m41')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m41 native "CSSMatrix_m41_Getter";
+
+ @DomName('WebKitCSSMatrix.m41')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m41(num value) native "CSSMatrix_m41_Setter";
+
+ @DomName('WebKitCSSMatrix.m42')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m42 native "CSSMatrix_m42_Getter";
+
+ @DomName('WebKitCSSMatrix.m42')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m42(num value) native "CSSMatrix_m42_Setter";
+
+ @DomName('WebKitCSSMatrix.m43')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m43 native "CSSMatrix_m43_Getter";
+
+ @DomName('WebKitCSSMatrix.m43')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m43(num value) native "CSSMatrix_m43_Setter";
+
+ @DomName('WebKitCSSMatrix.m44')
+ @DocsEditable
+ @Experimental // untriaged
+ num get m44 native "CSSMatrix_m44_Getter";
+
+ @DomName('WebKitCSSMatrix.m44')
+ @DocsEditable
+ @Experimental // untriaged
+ void set m44(num value) native "CSSMatrix_m44_Setter";
+
+ @DomName('WebKitCSSMatrix.inverse')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix inverse() native "CSSMatrix_inverse_Callback";
+
+ @DomName('WebKitCSSMatrix.multiply')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix multiply(CssMatrix secondMatrix) native "CSSMatrix_multiply_Callback";
+
+ @DomName('WebKitCSSMatrix.rotate')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix rotate(num rotX, num rotY, num rotZ) native "CSSMatrix_rotate_Callback";
+
+ @DomName('WebKitCSSMatrix.rotateAxisAngle')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix rotateAxisAngle(num x, num y, num z, num angle) native "CSSMatrix_rotateAxisAngle_Callback";
+
+ @DomName('WebKitCSSMatrix.scale')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix scale(num scaleX, num scaleY, num scaleZ) native "CSSMatrix_scale_Callback";
+
+ @DomName('WebKitCSSMatrix.setMatrixValue')
+ @DocsEditable
+ @Experimental // untriaged
+ void setMatrixValue(String string) native "CSSMatrix_setMatrixValue_Callback";
+
+ @DomName('WebKitCSSMatrix.skewX')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix skewX(num angle) native "CSSMatrix_skewX_Callback";
+
+ @DomName('WebKitCSSMatrix.skewY')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix skewY(num angle) native "CSSMatrix_skewY_Callback";
+
+ @DomName('WebKitCSSMatrix.toString')
+ @DocsEditable
+ @Experimental // untriaged
+ String toString() native "CSSMatrix_toString_Callback";
+
+ @DomName('WebKitCSSMatrix.translate')
+ @DocsEditable
+ @Experimental // untriaged
+ CssMatrix translate(num x, num y, num z) native "CSSMatrix_translate_Callback";
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2546,6 +2942,23 @@
@DocsEditable
+@DomName('WebKitCSSMixFunctionValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssMixFunctionValue extends _CssValueList {
+ CssMixFunctionValue.internal() : super.internal();
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('CSSPageRule')
class CssPageRule extends CssRule {
CssPageRule.internal() : super.internal();
@@ -2575,13 +2988,14 @@
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.SAFARI)
@Experimental
-// http://dev.w3.org/csswg/css-regions/#region-style-rule-interface
+@Experimental // untriaged
class CssRegionRule extends CssRule {
CssRegionRule.internal() : super.internal();
@DomName('WebKitCSSRegionRule.cssRules')
@DocsEditable
- List<CssRule> get cssRules native "WebKitCSSRegionRule_cssRules_Getter";
+ @Experimental // untriaged
+ List<CssRule> get cssRules native "CSSRegionRule_cssRules_Getter";
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -2714,6 +3128,11 @@
@DocsEditable
CssRule get parentRule native "CSSStyleDeclaration_parentRule_Getter";
+ @DomName('CSSStyleDeclaration.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(String propertyName, String propertyValue) native "CSSStyleDeclaration___setter___Callback";
+
@DomName('CSSStyleDeclaration.getPropertyPriority')
@DocsEditable
String getPropertyPriority(String propertyName) native "CSSStyleDeclaration_getPropertyPriority_Callback";
@@ -6024,6 +6443,138 @@
@DocsEditable
+@DomName('WebKitCSSTransformValue')
+@SupportedBrowser(SupportedBrowser.CHROME)
+@SupportedBrowser(SupportedBrowser.SAFARI)
+@Experimental
+@Experimental // untriaged
+class CssTransformValue extends _CssValueList {
+ CssTransformValue.internal() : super.internal();
+
+ @DomName('WebKitCSSTransformValue.CSS_MATRIX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_MATRIX = 11;
+
+ @DomName('WebKitCSSTransformValue.CSS_MATRIX3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_MATRIX3D = 21;
+
+ @DomName('WebKitCSSTransformValue.CSS_PERSPECTIVE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_PERSPECTIVE = 20;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATE = 4;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATE3D = 17;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEX = 14;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEY = 15;
+
+ @DomName('WebKitCSSTransformValue.CSS_ROTATEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_ROTATEZ = 16;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALE = 5;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALE3D = 19;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEX = 6;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEY = 7;
+
+ @DomName('WebKitCSSTransformValue.CSS_SCALEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SCALEZ = 18;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEW')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEW = 8;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEWX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEWX = 9;
+
+ @DomName('WebKitCSSTransformValue.CSS_SKEWY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_SKEWY = 10;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATE')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATE = 1;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATE3D')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATE3D = 13;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEX')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEX = 2;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEY')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEY = 3;
+
+ @DomName('WebKitCSSTransformValue.CSS_TRANSLATEZ')
+ @DocsEditable
+ @Experimental // untriaged
+ static const int CSS_TRANSLATEZ = 12;
+
+ @DomName('WebKitCSSTransformValue.operationType')
+ @DocsEditable
+ @Experimental // untriaged
+ int get operationType native "CSSTransformValue_operationType_Getter";
+
+ @DomName('WebKitCSSTransformValue.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _CSSValue __getter__(int index) native "CSSTransformValue___getter___Callback";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('CSSUnknownRule')
// http://dev.w3.org/csswg/cssom/#the-cssstylesheet-interface
@deprecated // deprecated
@@ -7650,11 +8201,21 @@
class DomStringMap extends NativeFieldWrapperClass1 {
DomStringMap.internal();
+ @DomName('DOMStringMap.__delete__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __delete__(String name) native "DOMStringMap___delete___Callback";
+
@DomName('DOMStringMap.__getter__')
@DocsEditable
@Experimental // untriaged
String __getter__(String name) native "DOMStringMap___getter___Callback";
+ @DomName('DOMStringMap.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(String name, String value) native "DOMStringMap___setter___Callback";
+
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -8820,14 +9381,6 @@
@DocsEditable
String get tagName native "Element_tagName_Getter";
- @DomName('Element.webkitInsertionParent')
- @DocsEditable
- @SupportedBrowser(SupportedBrowser.CHROME)
- @SupportedBrowser(SupportedBrowser.SAFARI)
- @Experimental
- // https://www.w3.org/Bugs/Public/show_bug.cgi?id=21067
- Node get insertionParent native "Element_webkitInsertionParent_Getter";
-
@DomName('Element.webkitPseudo')
@DocsEditable
@SupportedBrowser(SupportedBrowser.CHROME)
@@ -9520,6 +10073,16 @@
@DocsEditable
void set width(String value) native "HTMLEmbedElement_width_Setter";
+ @DomName('HTMLEmbedElement.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __getter__(index_OR_name) native "HTMLEmbedElement___getter___Callback";
+
+ @DomName('HTMLEmbedElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(index_OR_name, Node value) native "HTMLEmbedElement___setter___Callback";
+
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -9889,6 +10452,12 @@
@DocsEditable
int get eventPhase native "Event_eventPhase_Getter";
+ @DomName('Event.path')
+ @DocsEditable
+ // https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#extensions-to-event
+ @Experimental
+ List<Node> get path native "Event_path_Getter";
+
@DomName('Event.target')
@DocsEditable
EventTarget get target native "Event_target_Getter";
@@ -9905,12 +10474,6 @@
@DocsEditable
void $dom_initEvent(String eventTypeArg, bool canBubbleArg, bool cancelableArg) native "Event_initEvent_Callback";
- @DomName('Event.path')
- @DocsEditable
- // https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#extensions-to-event
- @Experimental
- List<Node> path() native "Event_path_Callback";
-
@DomName('Event.preventDefault')
@DocsEditable
void preventDefault() native "Event_preventDefault_Callback";
@@ -11459,6 +12022,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('HTMLAllCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(int index) native "HTMLAllCollection___getter___Callback";
+
@DomName('HTMLAllCollection.item')
@DocsEditable
Node item(int index) native "HTMLAllCollection_item_Callback";
@@ -11533,6 +12101,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('HTMLCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(String name) native "HTMLCollection___getter___Callback";
+
@DomName('HTMLCollection.item')
@DocsEditable
Node item(int index) native "HTMLCollection_item_Callback";
@@ -11760,10 +12333,6 @@
class HtmlOptionsCollection extends HtmlCollection {
HtmlOptionsCollection.internal() : super.internal();
- @DomName('HTMLOptionsCollection.numericIndexSetter')
- @DocsEditable
- void operator[]=(int index, Node value) native "HTMLOptionsCollection_numericIndexSetter_Callback";
-
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
@@ -14111,6 +14680,11 @@
@DocsEditable
void set hreflang(String value) native "HTMLLinkElement_hreflang_Setter";
+ @DomName('HTMLLinkElement.import')
+ @DocsEditable
+ @Experimental // untriaged
+ DocumentFragment get import native "HTMLLinkElement_import_Getter";
+
@DomName('HTMLLinkElement.media')
@DocsEditable
String get media native "HTMLLinkElement_media_Getter";
@@ -15972,6 +16546,45 @@
@DocsEditable
+@DomName('MIDIAccess')
+@Experimental // untriaged
+class MidiAccess extends EventTarget {
+ MidiAccess.internal() : super.internal();
+
+ @DomName('MIDIAccess.addEventListener')
+ @DocsEditable
+ @Experimental // untriaged
+ void $dom_addEventListener(String type, EventListener listener, [bool useCapture]) native "MIDIAccess_addEventListener_Callback";
+
+ @DomName('MIDIAccess.dispatchEvent')
+ @DocsEditable
+ @Experimental // untriaged
+ bool dispatchEvent(Event event) native "MIDIAccess_dispatchEvent_Callback";
+
+ @DomName('MIDIAccess.inputs')
+ @DocsEditable
+ @Experimental // untriaged
+ List<MidiInput> inputs() native "MIDIAccess_inputs_Callback";
+
+ @DomName('MIDIAccess.outputs')
+ @DocsEditable
+ @Experimental // untriaged
+ List<MidiOutput> outputs() native "MIDIAccess_outputs_Callback";
+
+ @DomName('MIDIAccess.removeEventListener')
+ @DocsEditable
+ @Experimental // untriaged
+ void $dom_removeEventListener(String type, EventListener listener, [bool useCapture]) native "MIDIAccess_removeEventListener_Callback";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('MIDIConnectionEvent')
// http://webaudio.github.io/web-midi-api/#midiconnectionevent-interface
@Experimental
@@ -16196,6 +16809,11 @@
MimeType elementAt(int index) => this[index];
// -- end List<MimeType> mixins.
+ @DomName('MimeTypeArray.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ MimeType __getter__(String name) native "MimeTypeArray___getter___Callback";
+
@DomName('MimeTypeArray.item')
@DocsEditable
MimeType item(int index) native "MimeTypeArray_item_Callback";
@@ -16665,6 +17283,11 @@
@DocsEditable
int get length native "DOMNamedFlowCollection_length_Getter";
+ @DomName('WebKitNamedFlowCollection.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ NamedFlow __getter__(String name) native "DOMNamedFlowCollection___getter___Callback";
+
@DomName('WebKitNamedFlowCollection.item')
@DocsEditable
NamedFlow item(int index) native "DOMNamedFlowCollection_item_Callback";
@@ -16877,15 +17500,20 @@
class NavigatorUserMediaError extends NativeFieldWrapperClass1 {
NavigatorUserMediaError.internal();
- @DomName('NavigatorUserMediaError.PERMISSION_DENIED')
+ @DomName('NavigatorUserMediaError.constraintName')
@DocsEditable
- @Experimental // nonstandard
- static const int PERMISSION_DENIED = 1;
+ @Experimental // untriaged
+ String get constraintName native "NavigatorUserMediaError_constraintName_Getter";
- @DomName('NavigatorUserMediaError.code')
+ @DomName('NavigatorUserMediaError.message')
@DocsEditable
- @Experimental // nonstandard
- int get code native "NavigatorUserMediaError_code_Getter";
+ @Experimental // untriaged
+ String get message native "NavigatorUserMediaError_message_Getter";
+
+ @DomName('NavigatorUserMediaError.name')
+ @DocsEditable
+ @Experimental // untriaged
+ String get name native "NavigatorUserMediaError_name_Getter";
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
@@ -17888,6 +18516,16 @@
@DocsEditable
bool get willValidate native "HTMLObjectElement_willValidate_Getter";
+ @DomName('HTMLObjectElement.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ bool __getter__(index_OR_name) native "HTMLObjectElement___getter___Callback";
+
+ @DomName('HTMLObjectElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(index_OR_name, Node value) native "HTMLObjectElement___setter___Callback";
+
@DomName('HTMLObjectElement.checkValidity')
@DocsEditable
bool checkValidity() native "HTMLObjectElement_checkValidity_Callback";
@@ -18663,6 +19301,11 @@
@DocsEditable
String get name native "Plugin_name_Getter";
+ @DomName('Plugin.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ MimeType __getter__(String name) native "Plugin___getter___Callback";
+
@DomName('Plugin.item')
@DocsEditable
MimeType item(int index) native "Plugin_item_Callback";
@@ -18734,6 +19377,11 @@
Plugin elementAt(int index) => this[index];
// -- end List<Plugin> mixins.
+ @DomName('PluginArray.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Plugin __getter__(String name) native "PluginArray___getter___Callback";
+
@DomName('PluginArray.item')
@DocsEditable
Plugin item(int index) native "PluginArray_item_Callback";
@@ -19213,6 +19861,25 @@
@DocsEditable
+@DomName('ResourceProgressEvent')
+@Experimental // untriaged
+class ResourceProgressEvent extends ProgressEvent {
+ ResourceProgressEvent.internal() : super.internal();
+
+ @DomName('ResourceProgressEvent.url')
+ @DocsEditable
+ @Experimental // untriaged
+ String get url native "ResourceProgressEvent_url_Getter";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('RTCDataChannel')
// http://dev.w3.org/2011/webrtc/editor/webrtc.html#idl-def-RTCDataChannel
@Experimental
@@ -19793,6 +20460,11 @@
class RtcStatsResponse extends NativeFieldWrapperClass1 {
RtcStatsResponse.internal();
+ @DomName('RTCStatsResponse.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ RtcStatsReport __getter__(String name) native "RTCStatsResponse___getter___Callback";
+
@DomName('RTCStatsResponse.namedItem')
@DocsEditable
RtcStatsReport namedItem(String name) native "RTCStatsResponse_namedItem_Callback";
@@ -20194,6 +20866,11 @@
@DocsEditable
bool get willValidate native "HTMLSelectElement_willValidate_Getter";
+ @DomName('HTMLSelectElement.__setter__')
+ @DocsEditable
+ @Experimental // untriaged
+ void __setter__(int index, OptionElement value) native "HTMLSelectElement___setter___Callback";
+
@DomName('HTMLSelectElement.checkValidity')
@DocsEditable
bool checkValidity() native "HTMLSelectElement_checkValidity_Callback";
@@ -21432,6 +22109,20 @@
@DocsEditable
int get $dom_length native "Storage_length_Getter";
+ bool __delete__(index_OR_name) {
+ if ((index_OR_name is int || index_OR_name == null)) {
+ return ___delete___1(index_OR_name);
+ }
+ if ((index_OR_name is String || index_OR_name == null)) {
+ return ___delete___2(index_OR_name);
+ }
+ throw new ArgumentError("Incorrect number or type of arguments");
+ }
+
+ bool ___delete___1(index_OR_name) native "Storage____delete___1_Callback";
+
+ bool ___delete___2(index_OR_name) native "Storage____delete___2_Callback";
+
String __getter__(index_OR_name) {
if ((index_OR_name is int || index_OR_name == null)) {
return ___getter___1(index_OR_name);
@@ -21446,6 +22137,22 @@
String ___getter___2(index_OR_name) native "Storage____getter___2_Callback";
+ void __setter__(index_OR_name, String value) {
+ if ((value is String || value == null) && (index_OR_name is int || index_OR_name == null)) {
+ ___setter___1(index_OR_name, value);
+ return;
+ }
+ if ((value is String || value == null) && (index_OR_name is String || index_OR_name == null)) {
+ ___setter___2(index_OR_name, value);
+ return;
+ }
+ throw new ArgumentError("Incorrect number or type of arguments");
+ }
+
+ void ___setter___1(index_OR_name, value) native "Storage____setter___1_Callback";
+
+ void ___setter___2(index_OR_name, value) native "Storage____setter___2_Callback";
+
@DomName('Storage.clear')
@DocsEditable
void $dom_clear() native "Storage_clear_Callback";
@@ -22198,14 +22905,6 @@
factory Text(String data) => document.$dom_createTextNode(data);
Text.internal() : super.internal();
- @DomName('Text.webkitInsertionParent')
- @DocsEditable
- @SupportedBrowser(SupportedBrowser.CHROME)
- @SupportedBrowser(SupportedBrowser.SAFARI)
- @Experimental
- // https://www.w3.org/Bugs/Public/show_bug.cgi?id=21067
- Node get insertionParent native "Text_webkitInsertionParent_Getter";
-
@DomName('Text.wholeText')
@DocsEditable
String get wholeText native "Text_wholeText_Getter";
@@ -24473,10 +25172,19 @@
@DocsEditable
WindowBase get window native "DOMWindow_window_Getter";
- @DomName('Window.__getter__')
- @DocsEditable
- @Experimental // untriaged
- WindowBase __getter__(int index) native "DOMWindow___getter___Callback";
+ WindowBase __getter__(index_OR_name) {
+ if ((index_OR_name is int || index_OR_name == null)) {
+ return ___getter___1(index_OR_name);
+ }
+ if ((index_OR_name is String || index_OR_name == null)) {
+ return ___getter___2(index_OR_name);
+ }
+ throw new ArgumentError("Incorrect number or type of arguments");
+ }
+
+ WindowBase ___getter___1(index_OR_name) native "DOMWindow____getter___1_Callback";
+
+ WindowBase ___getter___2(index_OR_name) native "DOMWindow____getter___2_Callback";
@DomName('Window.addEventListener')
@DocsEditable
@@ -26447,6 +27155,11 @@
Node elementAt(int index) => this[index];
// -- end List<Node> mixins.
+ @DomName('NamedNodeMap.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ Node __getter__(String name) native "NamedNodeMap___getter___Callback";
+
@DomName('NamedNodeMap.getNamedItem')
@DocsEditable
Node getNamedItem(String name) native "NamedNodeMap_getNamedItem_Callback";
@@ -26766,6 +27479,11 @@
StyleSheet elementAt(int index) => this[index];
// -- end List<StyleSheet> mixins.
+ @DomName('StyleSheetList.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ CssStyleSheet __getter__(String name) native "StyleSheetList___getter___Callback";
+
@DomName('StyleSheetList.item')
@DocsEditable
StyleSheet item(int index) native "StyleSheetList_item_Callback";
@@ -26795,9 +27513,6 @@
@DocsEditable
@DomName('WebKitCSSMatrix')
-@SupportedBrowser(SupportedBrowser.CHROME)
-@SupportedBrowser(SupportedBrowser.SAFARI)
-@Experimental
// http://dev.w3.org/csswg/cssom/
@deprecated // deprecated
abstract class _WebKitCSSMatrix extends NativeFieldWrapperClass1 {
@@ -26851,6 +27566,115 @@
@DocsEditable
+@DomName('WebKitCSSFilterRule')
+// http://www.w3.org/TR/filter-effects/
+@Experimental
+class _WebKitCssFilterRule extends CssRule {
+ _WebKitCssFilterRule.internal() : super.internal();
+
+ @DomName('WebKitCSSFilterRule.style')
+ @DocsEditable
+ CssStyleDeclaration get style native "WebKitCSSFilterRule_style_Getter";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
+@DomName('WebKitCSSKeyframeRule')
+// http://www.w3.org/TR/css3-animations/#CSSKeyframeRule-interface
+@Experimental
+class _WebKitCssKeyframeRule extends CssRule {
+ _WebKitCssKeyframeRule.internal() : super.internal();
+
+ @DomName('WebKitCSSKeyframeRule.keyText')
+ @DocsEditable
+ String get keyText native "WebKitCSSKeyframeRule_keyText_Getter";
+
+ @DomName('WebKitCSSKeyframeRule.keyText')
+ @DocsEditable
+ void set keyText(String value) native "WebKitCSSKeyframeRule_keyText_Setter";
+
+ @DomName('WebKitCSSKeyframeRule.style')
+ @DocsEditable
+ CssStyleDeclaration get style native "WebKitCSSKeyframeRule_style_Getter";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
+@DomName('WebKitCSSKeyframesRule')
+// http://www.w3.org/TR/css3-animations/#csskeyframesrule
+@Experimental
+class _WebKitCssKeyframesRule extends CssRule {
+ _WebKitCssKeyframesRule.internal() : super.internal();
+
+ @DomName('WebKitCSSKeyframesRule.cssRules')
+ @DocsEditable
+ List<CssRule> get cssRules native "WebKitCSSKeyframesRule_cssRules_Getter";
+
+ @DomName('WebKitCSSKeyframesRule.name')
+ @DocsEditable
+ String get name native "WebKitCSSKeyframesRule_name_Getter";
+
+ @DomName('WebKitCSSKeyframesRule.name')
+ @DocsEditable
+ void set name(String value) native "WebKitCSSKeyframesRule_name_Setter";
+
+ @DomName('WebKitCSSKeyframesRule.__getter__')
+ @DocsEditable
+ @Experimental // untriaged
+ _WebKitCssKeyframeRule __getter__(int index) native "WebKitCSSKeyframesRule___getter___Callback";
+
+ @DomName('WebKitCSSKeyframesRule.deleteRule')
+ @DocsEditable
+ void deleteRule(String key) native "WebKitCSSKeyframesRule_deleteRule_Callback";
+
+ @DomName('WebKitCSSKeyframesRule.findRule')
+ @DocsEditable
+ _WebKitCssKeyframeRule findRule(String key) native "WebKitCSSKeyframesRule_findRule_Callback";
+
+ @DomName('WebKitCSSKeyframesRule.insertRule')
+ @DocsEditable
+ void insertRule(String rule) native "WebKitCSSKeyframesRule_insertRule_Callback";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
+@DomName('WebKitCSSRegionRule')
+// http://dev.w3.org/csswg/css-regions/#region-style-rule-interface
+@Experimental
+class _WebKitCssRegionRule extends CssRule {
+ _WebKitCssRegionRule.internal() : super.internal();
+
+ @DomName('WebKitCSSRegionRule.cssRules')
+ @DocsEditable
+ List<CssRule> get cssRules native "WebKitCSSRegionRule_cssRules_Getter";
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('WorkerContext')
// http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#WorkerGlobalScope-partial
@Experimental // stable
@@ -27125,7 +27949,7 @@
/**
* An object that can be drawn to a [CanvasRenderingContext2D] object with
* [CanvasRenderingContext2D.drawImage],
- * [CanvasRenderingContext2D.drawImageRect],
+ * [CanvasRenderingContext2D.drawImageToRect],
* [CanvasRenderingContext2D.drawImageScaled], or
* [CanvasRenderingContext2D.drawImageScaledFromSource].
*
diff --git a/sdk/lib/web_audio/dart2js/web_audio_dart2js.dart b/sdk/lib/web_audio/dart2js/web_audio_dart2js.dart
index 87ff63b..5269d55 100644
--- a/sdk/lib/web_audio/dart2js/web_audio_dart2js.dart
+++ b/sdk/lib/web_audio/dart2js/web_audio_dart2js.dart
@@ -1047,6 +1047,11 @@
@DomName('WaveShaperNode.curve')
@DocsEditable
Float32List curve;
+
+ @DomName('WaveShaperNode.oversample')
+ @DocsEditable
+ @Experimental // untriaged
+ String oversample;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
diff --git a/sdk/lib/web_audio/dartium/web_audio_dartium.dart b/sdk/lib/web_audio/dartium/web_audio_dartium.dart
index d2cddf3..2f3e649 100644
--- a/sdk/lib/web_audio/dartium/web_audio_dartium.dart
+++ b/sdk/lib/web_audio/dartium/web_audio_dartium.dart
@@ -1314,6 +1314,16 @@
@DocsEditable
void set curve(Float32List value) native "WaveShaperNode_curve_Setter";
+ @DomName('WaveShaperNode.oversample')
+ @DocsEditable
+ @Experimental // untriaged
+ String get oversample native "WaveShaperNode_oversample_Getter";
+
+ @DomName('WaveShaperNode.oversample')
+ @DocsEditable
+ @Experimental // untriaged
+ void set oversample(String value) native "WaveShaperNode_oversample_Setter";
+
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
diff --git a/sdk/lib/web_gl/dart2js/web_gl_dart2js.dart b/sdk/lib/web_gl/dart2js/web_gl_dart2js.dart
index 91c3949..efa45f5 100644
--- a/sdk/lib/web_gl/dart2js/web_gl_dart2js.dart
+++ b/sdk/lib/web_gl/dart2js/web_gl_dart2js.dart
@@ -676,6 +676,16 @@
@DocsEditable
+@DomName('EXTFragDepth')
+@Experimental // untriaged
+class ExtFragDepth native "EXTFragDepth" {
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+
+@DocsEditable
@DomName('EXTTextureFilterAnisotropic')
// http://www.khronos.org/registry/webgl/extensions/EXT_texture_filter_anisotropic/
@Experimental
diff --git a/sdk/lib/web_gl/dartium/web_gl_dartium.dart b/sdk/lib/web_gl/dartium/web_gl_dartium.dart
index c010831..d3e5ddc 100644
--- a/sdk/lib/web_gl/dartium/web_gl_dartium.dart
+++ b/sdk/lib/web_gl/dartium/web_gl_dartium.dart
@@ -744,6 +744,20 @@
@DocsEditable
+@DomName('EXTFragDepth')
+@Experimental // untriaged
+class ExtFragDepth extends NativeFieldWrapperClass1 {
+ ExtFragDepth.internal();
+
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// WARNING: Do not edit - generated code.
+
+
+@DocsEditable
@DomName('EXTTextureFilterAnisotropic')
// http://www.khronos.org/registry/webgl/extensions/EXT_texture_filter_anisotropic/
@Experimental
diff --git a/tests/html/html.status b/tests/html/html.status
index 3e1588d..3d6077d 100644
--- a/tests/html/html.status
+++ b/tests/html/html.status
@@ -362,9 +362,6 @@
[ $compiler == dart2js && ($runtime == drt || $runtime == chrome || $runtime == ff || $runtime == safari) ]
isolates_test: Skip # Timeout because leg does not support web workers.
-[ $compiler == dart2js && $runtime == drt ]
-speechrecognition_test/types: Fail # Issue 11035
-
[ $compiler == dart2js && $csp && ($runtime == drt || $runtime == safari || $runtime == ff || $runtime == chrome || $runtime == chromeOnAndroid) ]
js_interop_1_test: Skip # Test cannot run under CSP restrictions (times out).
js_interop_2_test: Fail, OK # Test cannot run under CSP restrictions.
diff --git a/tests/isolate/isolate.status b/tests/isolate/isolate.status
index 1600565..02886a3 100644
--- a/tests/isolate/isolate.status
+++ b/tests/isolate/isolate.status
@@ -42,8 +42,8 @@
unresolved_ports_negative_test: fail
# test issue 10888
-global_error_handler_stream_test: fail, OK
-global_error_handler_test: fail, OK
+global_error_handler_stream_test: fail
+global_error_handler_test: fail
[ $compiler == dart2analyzer ]
isolate2_negative_test: fail
@@ -55,8 +55,8 @@
unresolved_ports_negative_test: fail
# test issue 10888
-global_error_handler_stream_test: fail, OK
-global_error_handler_test: fail, OK
+global_error_handler_stream_test: fail
+global_error_handler_test: fail
[ $compiler == dart2js && ($runtime == d8 || $jscl) ]
illegal_msg_stream_test: Fail # Issue 6750
diff --git a/tests/language/canonical_const_test.dart b/tests/language/canonical_const_test.dart
index 8a04a3f..b18e59a 100644
--- a/tests/language/canonical_const_test.dart
+++ b/tests/language/canonical_const_test.dart
@@ -23,7 +23,7 @@
Expect.isFalse(identical(const C1(), const C2()));
Expect.identical(B, const C2());
// TODO(johnlenz): these two values don't currently have the same type
- // Expect.isTrue(const [1,2] === const List[1,2]);
+ // Expect.identical(const [1,2], const List[1,2]);
Expect.isFalse(identical(const [2,1], const[1,2]));
Expect.identical(const <int>[1,2], const <int>[1,2]);
Expect.identical(const <Object>[1,2], const <Object>[1,2]);
diff --git a/tests/language/compile_time_constant8_test.dart b/tests/language/compile_time_constant8_test.dart
index e39d7f2..a291f82 100644
--- a/tests/language/compile_time_constant8_test.dart
+++ b/tests/language/compile_time_constant8_test.dart
@@ -15,6 +15,6 @@
const list1 = const<int> [1, 2];
const list2 = const [1, 2];
main() {
- Expect.isFalse(a === b);
- Expect.isFalse(list1 === list2);
+ Expect.isFalse(identical(a, b));
+ Expect.isFalse(identical(list1, list2));
}
diff --git a/tests/language/compile_time_constant_b_test.dart b/tests/language/compile_time_constant_b_test.dart
index 212dd2f..d93ad09 100644
--- a/tests/language/compile_time_constant_b_test.dart
+++ b/tests/language/compile_time_constant_b_test.dart
@@ -73,5 +73,5 @@
isUnsupportedError);
Expect.throws(() => m2['a'] = 499, isUnsupportedError);
- Expect.isTrue(m1 === m3);
+ Expect.isTrue(identical(m1, m3));
}
diff --git a/tests/language/compile_time_constant_d_test.dart b/tests/language/compile_time_constant_d_test.dart
index e56415f..df797e1 100644
--- a/tests/language/compile_time_constant_d_test.dart
+++ b/tests/language/compile_time_constant_d_test.dart
@@ -28,7 +28,7 @@
Expect.equals(100, a1.t);
Expect.equals("A 3 499 99 100", a1.toString());
- Expect.isTrue(a1 === a2);
+ Expect.isTrue(identical(a1, a2));
Expect.equals(1, a3.x);
Expect.equals(2, a3.y);
diff --git a/tests/language/compile_time_constant_e_test.dart b/tests/language/compile_time_constant_e_test.dart
index 9a91f3c..7ab0ea2 100644
--- a/tests/language/compile_time_constant_e_test.dart
+++ b/tests/language/compile_time_constant_e_test.dart
@@ -38,9 +38,9 @@
Expect.equals(99, a1.z);
Expect.equals(100, a1.t);
Expect.equals("A 3 499 99 100", a1.toString());
- Expect.isTrue(a1 === a2);
- Expect.isTrue(a1 === a4);
- Expect.isTrue(a1 === a5);
+ Expect.isTrue(identical(a1, a2));
+ Expect.isTrue(identical(a1, a4));
+ Expect.isTrue(identical(a1, a5));
Expect.equals(1, a3.x);
Expect.equals(2, a3.y);
@@ -66,7 +66,7 @@
Expect.equals(null, a8.t);
Expect.equals("A null null null null", a8.toString());
- Expect.isTrue(a3 === a9);
+ Expect.isTrue(identical(a3, a9));
Expect.equals(4, a10.x);
Expect.equals(3, a10.y);
diff --git a/tests/language/language_analyzer.status b/tests/language/language_analyzer.status
index ee8acc1..48bf4fc 100644
--- a/tests/language/language_analyzer.status
+++ b/tests/language/language_analyzer.status
@@ -32,8 +32,6 @@
class_cycle_test/03: fail
closure_call_wrong_argument_count_negative_test: fail
compile_time_constant10_test/none: fail
-compile_time_constant8_test: fail
-compile_time_constant_b_test: fail
compile_time_constant_c_test/01: fail
compile_time_constant_c_test/02: fail
compile_time_constant_checked2_test/02: fail
@@ -44,7 +42,6 @@
compile_time_constant_checked3_test/03: fail
compile_time_constant_checked3_test/04: fail
compile_time_constant_checked3_test/06: fail
-compile_time_constant_d_test: fail
compile_time_constant_e_test: fail
const_syntax_test/06: fail
constructor2_negative_test: fail
@@ -102,7 +99,6 @@
interface_test/00: fail
is_not_class2_negative_test: fail
library_juxtaposition_test: fail
-licm_test: fail
list_literal1_negative_test: fail
list_literal_syntax_test/01: fail
list_literal_syntax_test/02: fail
@@ -202,7 +198,6 @@
type_variable_bounds_test/09: fail
type_variable_identifier_expression_negative_test: fail
type_variable_static_context_negative_test: fail
-typed_equality_test: fail
unary2_test: fail
unary_test: fail
unresolved_in_factory_negative_test: fail
@@ -210,59 +205,59 @@
unresolved_top_level_var_negative_test: fail
# test issue 10683, It is a compile-time error if e refers to the name v or the name v=.
-block_scope_test: fail, OK
-lazy_static3_test: fail, OK
+block_scope_test: fail
+lazy_static3_test: fail
# test issue 10752, there are 'implicit' scopes for 'if', 'while' and 'do-while'
-implicit_scope_test: fail, OK
+implicit_scope_test: fail
# test issue 10889, "throw" requires expression, "rethrow" should be used instead
-execute_finally10_test: fail, OK
-execute_finally11_test: fail, OK
-final_used_in_try_test: fail, OK
-full_stacktrace2_test: fail, OK
-stack_trace_test: fail, OK
-throw3_test: fail, OK
-try_catch3_test: fail, OK
+execute_finally10_test: fail
+execute_finally11_test: fail
+final_used_in_try_test: fail
+full_stacktrace2_test: fail
+stack_trace_test: fail
+throw3_test: fail
+try_catch3_test: fail
# test issue 10890; on-catch UnknownType is a static warning, not error
-try_catch_on_syntax_test/01: fail, OK
-try_catch_on_syntax_test/07: fail, OK
-try_catch_syntax_test/08: fail, OK
+try_catch_on_syntax_test/01: fail
+try_catch_on_syntax_test/07: fail
+try_catch_syntax_test/08: fail
# test issue 10899; it is static warning, not error, to call methods of class literal
-class_literal_test/02: fail, OK
-class_literal_test/05: fail, OK
-class_literal_test/07: fail, OK
-class_literal_test/10: fail, OK
-class_literal_test/11: fail, OK
-class_literal_test/12: fail, OK
-class_literal_test/14: fail, OK
-class_literal_test/17: fail, OK
-class_literal_test/18: fail, OK
-class_literal_test/19: fail, OK
-class_literal_test/22: fail, OK
-class_literal_test/23: fail, OK
-class_literal_test/24: fail, OK
-class_literal_test/27: fail, OK
-class_literal_test/28: fail, OK
-class_literal_test/29: fail, OK
-class_literal_test/none: fail, OK
+class_literal_test/02: fail
+class_literal_test/05: fail
+class_literal_test/07: fail
+class_literal_test/10: fail
+class_literal_test/11: fail
+class_literal_test/12: fail
+class_literal_test/14: fail
+class_literal_test/17: fail
+class_literal_test/18: fail
+class_literal_test/19: fail
+class_literal_test/22: fail
+class_literal_test/23: fail
+class_literal_test/24: fail
+class_literal_test/27: fail
+class_literal_test/28: fail
+class_literal_test/29: fail
+class_literal_test/none: fail
# Test issue 11124, Uninitialized finals are warnings not errors
-field3a_negative_test: fail, OK
-const_syntax_test/01: fail, OK
-const_syntax_test/04: fail, OK
-const_syntax_test/02: fail, OK
-const_syntax_test/03: fail, OK
-final_syntax_test/01: fail, OK
-final_syntax_test/04: fail, OK
-final_syntax_test/02: fail, OK
-final_syntax_test/03: fail, OK
+field3a_negative_test: fail
+const_syntax_test/01: fail
+const_syntax_test/04: fail
+const_syntax_test/02: fail
+const_syntax_test/03: fail
+final_syntax_test/01: fail
+final_syntax_test/04: fail
+final_syntax_test/02: fail
+final_syntax_test/03: fail
# Test issue 11123, Only static fields can be declared as 'const'
-const_escape_frog_test: fail, OK
-compile_time_constant_test/none: fail, OK
+const_escape_frog_test: fail
+compile_time_constant_test/none: fail
[ $compiler == dartanalyzer && $checked ]
factory1_test/00: fail
diff --git a/tests/language/language_analyzer2.status b/tests/language/language_analyzer2.status
index 926d8e9..e9b7cf7 100644
--- a/tests/language/language_analyzer2.status
+++ b/tests/language/language_analyzer2.status
@@ -32,8 +32,6 @@
class_cycle_test/03: fail
closure_call_wrong_argument_count_negative_test: fail
compile_time_constant10_test/none: fail
-compile_time_constant8_test: fail
-compile_time_constant_b_test: fail
compile_time_constant_c_test/01: fail
compile_time_constant_c_test/02: fail
compile_time_constant_checked2_test/02: fail
@@ -44,7 +42,6 @@
compile_time_constant_checked3_test/03: fail
compile_time_constant_checked3_test/04: fail
compile_time_constant_checked3_test/06: fail
-compile_time_constant_d_test: fail
compile_time_constant_e_test: fail
const_syntax_test/06: fail
constructor2_negative_test: fail
@@ -102,7 +99,6 @@
interface_test/00: fail
is_not_class2_negative_test: fail
library_juxtaposition_test: fail
-licm_test: fail
list_literal1_negative_test: fail
list_literal_syntax_test/01: fail
list_literal_syntax_test/02: fail
@@ -202,7 +198,6 @@
type_variable_bounds_test/09: fail
type_variable_identifier_expression_negative_test: fail
type_variable_static_context_negative_test: fail
-typed_equality_test: fail
unary2_test: fail
unary_test: fail
unresolved_in_factory_negative_test: fail
@@ -210,59 +205,59 @@
unresolved_top_level_var_negative_test: fail
# test issue 10683, It is a compile-time error if e refers to the name v or the name v=.
-block_scope_test: fail, OK
-lazy_static3_test: fail, OK
+block_scope_test: fail
+lazy_static3_test: fail
# test issue 10752, there are 'implicit' scopes for 'if', 'while' and 'do-while'
-implicit_scope_test: fail, OK
+implicit_scope_test: fail
# test issue 10889, "throw" requires expression, "rethrow" should be used instead
-execute_finally10_test: fail, OK
-execute_finally11_test: fail, OK
-final_used_in_try_test: fail, OK
-full_stacktrace2_test: fail, OK
-stack_trace_test: fail, OK
-throw3_test: fail, OK
-try_catch3_test: fail, OK
+execute_finally10_test: fail
+execute_finally11_test: fail
+final_used_in_try_test: fail
+full_stacktrace2_test: fail
+stack_trace_test: fail
+throw3_test: fail
+try_catch3_test: fail
# test issue 10890; on-catch UnknownType is a static warning, not error
-try_catch_on_syntax_test/01: fail, OK
-try_catch_on_syntax_test/07: fail, OK
-try_catch_syntax_test/08: fail, OK
+try_catch_on_syntax_test/01: fail
+try_catch_on_syntax_test/07: fail
+try_catch_syntax_test/08: fail
# test issue 10899; it is static warning, not error, to call methods of class literal
-class_literal_test/02: fail, OK
-class_literal_test/05: fail, OK
-class_literal_test/07: fail, OK
-class_literal_test/10: fail, OK
-class_literal_test/11: fail, OK
-class_literal_test/12: fail, OK
-class_literal_test/14: fail, OK
-class_literal_test/17: fail, OK
-class_literal_test/18: fail, OK
-class_literal_test/19: fail, OK
-class_literal_test/22: fail, OK
-class_literal_test/23: fail, OK
-class_literal_test/24: fail, OK
-class_literal_test/27: fail, OK
-class_literal_test/28: fail, OK
-class_literal_test/29: fail, OK
-class_literal_test/none: fail, OK
+class_literal_test/02: fail
+class_literal_test/05: fail
+class_literal_test/07: fail
+class_literal_test/10: fail
+class_literal_test/11: fail
+class_literal_test/12: fail
+class_literal_test/14: fail
+class_literal_test/17: fail
+class_literal_test/18: fail
+class_literal_test/19: fail
+class_literal_test/22: fail
+class_literal_test/23: fail
+class_literal_test/24: fail
+class_literal_test/27: fail
+class_literal_test/28: fail
+class_literal_test/29: fail
+class_literal_test/none: fail
# Test issue 11124, Uninitialized finals are warnings not errors
-field3a_negative_test: fail, OK
-const_syntax_test/01: fail, OK
-const_syntax_test/04: fail, OK
-const_syntax_test/02: fail, OK
-const_syntax_test/03: fail, OK
-final_syntax_test/01: fail, OK
-final_syntax_test/04: fail, OK
-final_syntax_test/02: fail, OK
-final_syntax_test/03: fail, OK
+field3a_negative_test: fail
+const_syntax_test/01: fail
+const_syntax_test/04: fail
+const_syntax_test/02: fail
+const_syntax_test/03: fail
+final_syntax_test/01: fail
+final_syntax_test/04: fail
+final_syntax_test/02: fail
+final_syntax_test/03: fail
# Test issue 11123, Only static fields can be declared as 'const'
-const_escape_frog_test: fail, OK
-compile_time_constant_test/none: fail, OK
+const_escape_frog_test: fail
+compile_time_constant_test/none: fail
[ $compiler == dart2analyzer && $checked ]
factory1_test/00: fail
diff --git a/tests/language/licm_test.dart b/tests/language/licm_test.dart
index e058e8e..002c5d9 100644
--- a/tests/language/licm_test.dart
+++ b/tests/language/licm_test.dart
@@ -10,9 +10,9 @@
test() {
while (true) {
- if (0 === foo) {
+ if (0 == foo) {
sum += 2;
- if (1 === bar) {
+ if (1 == bar) {
sum += 3;
break;
}
diff --git a/tests/language/typed_equality_test.dart b/tests/language/typed_equality_test.dart
index c849df0..9f48e79 100644
--- a/tests/language/typed_equality_test.dart
+++ b/tests/language/typed_equality_test.dart
@@ -7,7 +7,7 @@
// type C is conflicting.
foo(a, b) {
- if (a === b) return;
+ if (identical(a, b)) return;
throw 'broken';
}
diff --git a/tests/lib/analyzer/analyze_tests.status b/tests/lib/analyzer/analyze_tests.status
index 25abec6..3406d43 100644
--- a/tests/lib/analyzer/analyze_tests.status
+++ b/tests/lib/analyzer/analyze_tests.status
@@ -39,7 +39,9 @@
[ $compiler == dartanalyzer ]
standalone/io/process_exit_negative_test: fail
+53bit_overflow_literal_test/01: fail, ok
[ $compiler == dart2analyzer ]
standalone/io/process_exit_negative_test: fail
+53bit_overflow_literal_test/01: fail, ok
diff --git a/tests/standalone/53bit_overflow_literal_test.dart b/tests/standalone/53bit_overflow_literal_test.dart
new file mode 100644
index 0000000..1062af0
--- /dev/null
+++ b/tests/standalone/53bit_overflow_literal_test.dart
@@ -0,0 +1,18 @@
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+// VMOptions=--throw_on_javascript_int_overflow
+
+
+import "package:expect/expect.dart";
+
+int literals() {
+ var okay_literal = 0xFFFFFFFFFFFFF;
+ var too_big_literal = 0x1FFFFFFFFFFFFF; /// 01: compile-time error
+ return okay_literal;
+}
+
+main() {
+ Expect.equals(0xFFFFFFFFFFFFF, literals());
+}
diff --git a/tests/standalone/53bit_overflow_test.dart b/tests/standalone/53bit_overflow_test.dart
index 1475cfd..256e66a 100644
--- a/tests/standalone/53bit_overflow_test.dart
+++ b/tests/standalone/53bit_overflow_test.dart
@@ -2,46 +2,114 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
-// VMOptions=--throw_on_javascript_int_overflow
+// VMOptions=--throw_on_javascript_int_overflow --optimization_counter_threshold=10
import "package:expect/expect.dart";
import 'dart:typed_data';
-int double_to_int_throws() {
- double d = 1.9e16;
- return d.toInt();
-}
-
-
-int integer_add_throws() {
- return (1 << 52) + (1 << 52);
-}
-
-
-int i64list_throws() {
- var i64l = new Int64List(16);
- i64l[0] = (1 << 54);
- return i64l[0];
-}
-
-
+double dti_arg;
int double_to_int() {
- double d = 1.9e14;
- return d.toInt();
+ return dti_arg.toInt();
}
+int ia_arg1;
+int ia_arg2;
int integer_add() {
- return (1 << 50) + (1 << 50);
+ return ia_arg1 + ia_arg2;
+}
+
+
+int is_arg;
+int integer_shift() {
+ return is_arg << 1;
+}
+
+
+int max_add_throws() {
+ return 0xFFFFFFFFFFFFF + 1;
+}
+
+
+int min_sub_throws() {
+ return -0xFFFFFFFFFFFFF - 2;
+}
+
+
+int n_arg;
+int negate() {
+ return -n_arg;
+}
+
+
+int max_literal() {
+ return 0xFFFFFFFFFFFFF;
+}
+
+
+int min_literal() {
+ var min_literal = -0xFFFFFFFFFFFFF - 1;
+ return min_literal;
}
main() {
- Expect.throws(double_to_int_throws, (e) => e is FiftyThreeBitOverflowError);
- Expect.throws(integer_add_throws, (e) => e is FiftyThreeBitOverflowError);
- Expect.throws(i64list_throws, (e) => e is FiftyThreeBitOverflowError);
- Expect.equals(190000000000000, double_to_int());
- Expect.equals(1 << 51, integer_add());
+ Expect.equals(0xFFFFFFFFFFFFF, max_literal());
+ Expect.equals(-0xFFFFFFFFFFFFF - 1, min_literal());
+
+ // Run the tests once before optimizations.
+ dti_arg = 1.9e16;
+ Expect.throws(double_to_int, (e) => e is FiftyThreeBitOverflowError);
+
+ ia_arg1 = (1 << 51);
+ ia_arg2 = (1 << 51);
+ Expect.throws(integer_add, (e) => e is FiftyThreeBitOverflowError);
+
+ n_arg = -0xFFFFFFFFFFFFF - 1;
+ Expect.throws(negate, (e) => e is FiftyThreeBitOverflowError);
+
+ is_arg = (1 << 51);
+ Expect.throws(integer_shift, (e) => e is FiftyThreeBitOverflowError);
+
+ Expect.throws(max_add_throws, (e) => e is FiftyThreeBitOverflowError);
+ Expect.throws(min_sub_throws, (e) => e is FiftyThreeBitOverflowError);
+
+ for (int i = 0; i < 20; i++) {
+ dti_arg = i.toDouble();
+ // Expect.throws calls through the closure, so we have to here, too.
+ var f = double_to_int;
+ Expect.equals(i, f());
+
+ ia_arg1 = i;
+ ia_arg2 = i;
+ f = integer_add;
+ Expect.equals(i + i, f());
+
+ n_arg = i;
+ f = negate;
+ Expect.equals(-i, f());
+
+ is_arg = i;
+ f = integer_shift;
+ Expect.equals(i << 1, f());
+ }
+
+ // The optimized functions should now deoptimize and throw the error.
+ dti_arg = 1.9e16;
+ Expect.throws(double_to_int, (e) => e is FiftyThreeBitOverflowError);
+
+ ia_arg1 = (1 << 51);
+ ia_arg2 = (1 << 51);
+ Expect.throws(integer_add, (e) => e is FiftyThreeBitOverflowError);
+
+ n_arg = -0xFFFFFFFFFFFFF - 1;
+ Expect.throws(negate, (e) => e is FiftyThreeBitOverflowError);
+
+ is_arg = (1 << 51);
+ Expect.throws(integer_shift, (e) => e is FiftyThreeBitOverflowError);
+
+ Expect.throws(max_add_throws, (e) => e is FiftyThreeBitOverflowError);
+ Expect.throws(min_sub_throws, (e) => e is FiftyThreeBitOverflowError);
}
diff --git a/tests/standalone/standalone.status b/tests/standalone/standalone.status
index 7d552d6..5a03bd8 100644
--- a/tests/standalone/standalone.status
+++ b/tests/standalone/standalone.status
@@ -2,6 +2,11 @@
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
+# WARNING:
+# Tests using the multitest feature where failure is expected should *also* be
+# listed in tests/lib/analyzer/analyze_tests.status without the "standalone"
+# prefix.
+
package/invalid_uri_test: Fail, OK # Fails intentionally
[ $runtime == vm ]
@@ -90,10 +95,11 @@
io/process_exit_negative_test: fail
io/url_encoding_test: fail
io/web_socket_protocol_processor_test: fail
+53bit_overflow_literal_test/01: fail, ok
# Fails because checked-in dart executable is not up to date.
-io/test_runner_test: fail, OK
-io/skipping_dart2js_compilations_test: fail, OK
+io/test_runner_test: fail
+io/skipping_dart2js_compilations_test: fail
[ $compiler == dart2analyzer ]
@@ -104,10 +110,11 @@
io/process_exit_negative_test: fail
io/url_encoding_test: fail
io/web_socket_protocol_processor_test: fail
+53bit_overflow_literal_test/01: fail, ok
# Fails because checked-in dart executable is not up to date.
-io/test_runner_test: fail, OK
-io/skipping_dart2js_compilations_test: fail, OK
+io/test_runner_test: fail
+io/skipping_dart2js_compilations_test: fail
[ $compiler == dart2js ]
@@ -133,6 +140,7 @@
io/skipping_dart2js_compilations_test: Skip # Library dart:uri removed.
http_launch_test: Skip
53bit_overflow_test: Skip
+53bit_overflow_literal_test: Skip
[ $compiler == dart2js && $jscl ]
assert_test: Fail, OK # Assumes unspecified fields on the AssertionError.
diff --git a/tools/VERSION b/tools/VERSION
index 080e489..708e4dc 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -1,4 +1,4 @@
MAJOR 0
MINOR 5
-BUILD 15
+BUILD 16
PATCH 0
diff --git a/tools/dom/dom.json b/tools/dom/dom.json
index e9292c2..224f22e 100644
--- a/tools/dom/dom.json
+++ b/tools/dom/dom.json
@@ -298,6 +298,61 @@
},
"support_level": "experimental"
},
+ "CSSFilterRule": {
+ "members": {
+ "style": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
+ "CSSFilterValue": {
+ "members": {
+ "CSS_FILTER_BLUR": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_BRIGHTNESS": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_CONTRAST": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_CUSTOM": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_DROP_SHADOW": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_GRAYSCALE": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_HUE_ROTATE": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_INVERT": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_OPACITY": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_REFERENCE": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_SATURATE": {
+ "support_level": "untriaged"
+ },
+ "CSS_FILTER_SEPIA": {
+ "support_level": "untriaged"
+ },
+ "__getter__": {
+ "support_level": "untriaged"
+ },
+ "operationType": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"CSSFontFaceLoadEvent": {
"comment": "http://www.w3.org/TR/css3-fonts/",
"members": {
@@ -331,6 +386,142 @@
},
"support_level": "stable"
},
+ "CSSKeyframeRule": {
+ "members": {
+ "keyText": {
+ "support_level": "untriaged"
+ },
+ "style": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
+ "CSSKeyframesRule": {
+ "members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
+ "cssRules": {
+ "support_level": "untriaged"
+ },
+ "deleteRule": {
+ "support_level": "untriaged"
+ },
+ "findRule": {
+ "support_level": "untriaged"
+ },
+ "insertRule": {
+ "support_level": "untriaged"
+ },
+ "name": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
+ "CSSMatrix": {
+ "members": {
+ "CSSMatrix": {},
+ "a": {
+ "support_level": "untriaged"
+ },
+ "b": {
+ "support_level": "untriaged"
+ },
+ "c": {
+ "support_level": "untriaged"
+ },
+ "d": {
+ "support_level": "untriaged"
+ },
+ "e": {
+ "support_level": "untriaged"
+ },
+ "f": {
+ "support_level": "untriaged"
+ },
+ "inverse": {
+ "support_level": "untriaged"
+ },
+ "m11": {
+ "support_level": "untriaged"
+ },
+ "m12": {
+ "support_level": "untriaged"
+ },
+ "m13": {
+ "support_level": "untriaged"
+ },
+ "m14": {
+ "support_level": "untriaged"
+ },
+ "m21": {
+ "support_level": "untriaged"
+ },
+ "m22": {
+ "support_level": "untriaged"
+ },
+ "m23": {
+ "support_level": "untriaged"
+ },
+ "m24": {
+ "support_level": "untriaged"
+ },
+ "m31": {
+ "support_level": "untriaged"
+ },
+ "m32": {
+ "support_level": "untriaged"
+ },
+ "m33": {
+ "support_level": "untriaged"
+ },
+ "m34": {
+ "support_level": "untriaged"
+ },
+ "m41": {
+ "support_level": "untriaged"
+ },
+ "m42": {
+ "support_level": "untriaged"
+ },
+ "m43": {
+ "support_level": "untriaged"
+ },
+ "m44": {
+ "support_level": "untriaged"
+ },
+ "multiply": {
+ "support_level": "untriaged"
+ },
+ "rotate": {
+ "support_level": "untriaged"
+ },
+ "rotateAxisAngle": {
+ "support_level": "untriaged"
+ },
+ "scale": {
+ "support_level": "untriaged"
+ },
+ "setMatrixValue": {
+ "support_level": "untriaged"
+ },
+ "skewX": {
+ "support_level": "untriaged"
+ },
+ "skewY": {
+ "support_level": "untriaged"
+ },
+ "toString": {
+ "support_level": "untriaged"
+ },
+ "translate": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"CSSMediaRule": {
"comment": "http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSMediaRule",
"members": {
@@ -341,6 +532,10 @@
},
"support_level": "stable"
},
+ "CSSMixFunctionValue": {
+ "members": {},
+ "support_level": "untriaged"
+ },
"CSSPageRule": {
"comment": "http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSPageRule",
"members": {
@@ -394,6 +589,14 @@
},
"support_level": "deprecated"
},
+ "CSSRegionRule": {
+ "members": {
+ "cssRules": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"CSSRule": {
"comment": "http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSRule",
"members": {
@@ -447,6 +650,9 @@
"CSSStyleDeclaration": {
"comment": "http://dev.w3.org/csswg/cssom/#the-cssstyledeclaration-interface",
"members": {
+ "__setter__": {
+ "support_level": "untriaged"
+ },
"cssText": {},
"getPropertyCSSValue": {
"comment": "http://dev.w3.org/csswg/cssom/#the-cssstyledeclaration-interface",
@@ -500,6 +706,80 @@
},
"support_level": "standard"
},
+ "CSSTransformValue": {
+ "members": {
+ "CSS_MATRIX": {
+ "support_level": "untriaged"
+ },
+ "CSS_MATRIX3D": {
+ "support_level": "untriaged"
+ },
+ "CSS_PERSPECTIVE": {
+ "support_level": "untriaged"
+ },
+ "CSS_ROTATE": {
+ "support_level": "untriaged"
+ },
+ "CSS_ROTATE3D": {
+ "support_level": "untriaged"
+ },
+ "CSS_ROTATEX": {
+ "support_level": "untriaged"
+ },
+ "CSS_ROTATEY": {
+ "support_level": "untriaged"
+ },
+ "CSS_ROTATEZ": {
+ "support_level": "untriaged"
+ },
+ "CSS_SCALE": {
+ "support_level": "untriaged"
+ },
+ "CSS_SCALE3D": {
+ "support_level": "untriaged"
+ },
+ "CSS_SCALEX": {
+ "support_level": "untriaged"
+ },
+ "CSS_SCALEY": {
+ "support_level": "untriaged"
+ },
+ "CSS_SCALEZ": {
+ "support_level": "untriaged"
+ },
+ "CSS_SKEW": {
+ "support_level": "untriaged"
+ },
+ "CSS_SKEWX": {
+ "support_level": "untriaged"
+ },
+ "CSS_SKEWY": {
+ "support_level": "untriaged"
+ },
+ "CSS_TRANSLATE": {
+ "support_level": "untriaged"
+ },
+ "CSS_TRANSLATE3D": {
+ "support_level": "untriaged"
+ },
+ "CSS_TRANSLATEX": {
+ "support_level": "untriaged"
+ },
+ "CSS_TRANSLATEY": {
+ "support_level": "untriaged"
+ },
+ "CSS_TRANSLATEZ": {
+ "support_level": "untriaged"
+ },
+ "__getter__": {
+ "support_level": "untriaged"
+ },
+ "operationType": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"CSSUnknownRule": {
"comment": "http://dev.w3.org/csswg/cssom/#the-cssstylesheet-interface",
"dart_action": "suppress",
@@ -1060,6 +1340,9 @@
"DOMNamedFlowCollection": {
"comment": "http://dev.w3.org/csswg/css-regions/#dom-named-flow-collection",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {},
"namedItem": {}
@@ -1105,8 +1388,14 @@
"DOMStringMap": {
"comment": "http://dev.w3.org/html5/spec-LC/common-dom-interfaces.html#domstringmap-0",
"members": {
+ "__delete__": {
+ "support_level": "untriaged"
+ },
"__getter__": {
"support_level": "untriaged"
+ },
+ "__setter__": {
+ "support_level": "untriaged"
}
},
"support_level": "stable"
@@ -2030,6 +2319,10 @@
},
"support_level": "stable"
},
+ "EXTFragDepth": {
+ "members": {},
+ "support_level": "untriaged"
+ },
"EXTTextureFilterAnisotropic": {
"comment": "http://www.khronos.org/registry/webgl/extensions/EXT_texture_filter_anisotropic/",
"members": {
@@ -2913,6 +3206,9 @@
"comment": "http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#dom-document-all",
"dart_action": "suppress",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {},
"namedItem": {},
@@ -3155,6 +3451,9 @@
"HTMLCollection": {
"comment": "http://www.w3.org/TR/domcore/#interface-htmlcollection",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {},
"namedItem": {}
@@ -3363,6 +3662,12 @@
"dart_action": "unstable",
"members": {
"HTMLEmbedElement": {},
+ "__getter__": {
+ "support_level": "untriaged"
+ },
+ "__setter__": {
+ "support_level": "untriaged"
+ },
"align": {
"comment": "http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#HTMLEmbedElement-partial",
"dart_action": "suppress",
@@ -3844,6 +4149,9 @@
"disabled": {},
"href": {},
"hreflang": {},
+ "import": {
+ "support_level": "untriaged"
+ },
"media": {},
"rel": {},
"rev": {
@@ -4125,6 +4433,12 @@
"dart_action": "unstable",
"members": {
"HTMLObjectElement": {},
+ "__getter__": {
+ "support_level": "untriaged"
+ },
+ "__setter__": {
+ "support_level": "untriaged"
+ },
"align": {
"comment": "http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#HTMLObjectElement-partial",
"dart_action": "suppress",
@@ -4357,6 +4671,9 @@
"comment": "http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#the-select-element",
"members": {
"HTMLSelectElement": {},
+ "__setter__": {
+ "support_level": "untriaged"
+ },
"autofocus": {},
"checkValidity": {},
"disabled": {},
@@ -5150,6 +5467,26 @@
},
"support_level": "stable"
},
+ "MIDIAccess": {
+ "members": {
+ "addEventListener": {
+ "support_level": "untriaged"
+ },
+ "dispatchEvent": {
+ "support_level": "untriaged"
+ },
+ "inputs": {
+ "support_level": "untriaged"
+ },
+ "outputs": {
+ "support_level": "untriaged"
+ },
+ "removeEventListener": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"MIDIConnectionEvent": {
"comment": "http://webaudio.github.io/web-midi-api/#midiconnectionevent-interface",
"members": {
@@ -5492,6 +5829,9 @@
},
"MimeTypeArray": {
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {},
"namedItem": {}
@@ -5616,6 +5956,9 @@
"comment": "http://dom.spec.whatwg.org/#namednodemap",
"dart_action": "suppress",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"getNamedItem": {},
"getNamedItemNS": {},
"item": {},
@@ -5737,6 +6080,15 @@
"code": {
"dart_action": "experimental",
"support_level": "nonstandard"
+ },
+ "constraintName": {
+ "support_level": "untriaged"
+ },
+ "message": {
+ "support_level": "untriaged"
+ },
+ "name": {
+ "support_level": "untriaged"
}
},
"support_level": "experimental"
@@ -6324,6 +6676,9 @@
},
"Plugin": {
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"description": {},
"filename": {},
"item": {},
@@ -6335,6 +6690,9 @@
},
"PluginArray": {
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {},
"namedItem": {},
@@ -6560,6 +6918,9 @@
"RTCStatsResponse": {
"comment": "http://dev.w3.org/2011/webrtc/editor/webrtc.html#widl-RTCStatsReport-RTCStats-getter-DOMString-id",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"namedItem": {},
"result": {}
},
@@ -6676,6 +7037,14 @@
},
"support_level": "stable"
},
+ "ResourceProgressEvent": {
+ "members": {
+ "url": {
+ "support_level": "untriaged"
+ }
+ },
+ "support_level": "untriaged"
+ },
"SQLError": {
"comment": "http://www.w3.org/TR/webdatabase/#sqlerror",
"dart_action": "experimental",
@@ -10124,9 +10493,15 @@
"comment": "http://www.w3.org/TR/webstorage/#the-storage-interface",
"dart_action": "unstable",
"members": {
+ "__delete__": {
+ "support_level": "untriaged"
+ },
"__getter__": {
"support_level": "untriaged"
},
+ "__setter__": {
+ "support_level": "untriaged"
+ },
"clear": {},
"getItem": {},
"key": {},
@@ -10220,6 +10595,9 @@
"StyleSheetList": {
"comment": "http://dev.w3.org/csswg/cssom/#the-stylesheetlist-sequence",
"members": {
+ "__getter__": {
+ "support_level": "untriaged"
+ },
"item": {},
"length": {}
},
@@ -10569,7 +10947,10 @@
"WaveShaperNode": {
"comment": "https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#dfn-WaveShaperNode",
"members": {
- "curve": {}
+ "curve": {},
+ "oversample": {
+ "support_level": "untriaged"
+ }
},
"support_level": "experimental"
},
diff --git a/tools/dom/scripts/dartmetadata.py b/tools/dom/scripts/dartmetadata.py
index 042ef89..e54caf0 100644
--- a/tools/dom/scripts/dartmetadata.py
+++ b/tools/dom/scripts/dartmetadata.py
@@ -258,6 +258,7 @@
# INTERFACE.MEMBER: annotation to be added to the member declaration
_annotations = monitored.Dict('dartmetadata._annotations', {
'CSSHostRule': _shadow_dom_annotations,
+ 'CSSMatrix': _webkit_experimental_annotations,
'Crypto': _webkit_experimental_annotations,
'Database': _web_sql_annotations,
'DatabaseSync': _web_sql_annotations,
@@ -377,7 +378,6 @@
'SQLTransaction': _web_sql_annotations,
'SQLTransactionSync': _web_sql_annotations,
'WebGLRenderingContext': _webgl_annotations,
- 'WebKitCSSMatrix': _webkit_experimental_annotations,
'WebSocket': _all_but_ie9_annotations,
'Worker': _all_but_ie9_annotations,
'XMLHttpRequest.onloadend': _all_but_ie9_annotations,
diff --git a/tools/dom/scripts/fremontcutbuilder.py b/tools/dom/scripts/fremontcutbuilder.py
index 503619a..f95e6bc 100755
--- a/tools/dom/scripts/fremontcutbuilder.py
+++ b/tools/dom/scripts/fremontcutbuilder.py
@@ -33,10 +33,8 @@
'ENABLE_LEGACY_NOTIFICATIONS', # Not on Android
'ENABLE_NAVIGATOR_CONTENT_UTILS', # Not on Android
'ENABLE_NOTIFICATIONS', # Not on Android
- 'ENABLE_SVG',
'ENABLE_SVG_FONTS',
'ENABLE_WEB_AUDIO', # Not on Android
- 'ENABLE_WEBGL',
]
def build_database(idl_files, database_dir, feature_defines=None, parallel=False):
diff --git a/tools/dom/scripts/htmlrenamer.py b/tools/dom/scripts/htmlrenamer.py
index 18e5949..d9a9d48 100644
--- a/tools/dom/scripts/htmlrenamer.py
+++ b/tools/dom/scripts/htmlrenamer.py
@@ -50,13 +50,17 @@
'RTCDTMFToneChangeEvent': 'RtcDtmfToneChangeEvent',
'RTCErrorCallback': '_RtcErrorCallback',
'RTCSessionDescriptionCallback': '_RtcSessionDescriptionCallback',
- 'StringCallback': '_StringCallback',
'SVGDocument': 'SvgDocument', # Manual to avoid name conflicts.
'SVGElement': 'SvgElement', # Manual to avoid name conflicts.
'SVGException': 'SvgException', # Manual of avoid conflict with Exception.
'SVGGradientElement': '_GradientElement',
'SVGSVGElement': 'SvgSvgElement', # Manual to avoid name conflicts.
+ 'StringCallback': '_StringCallback',
'WebGLVertexArrayObjectOES': 'VertexArrayObject',
+ 'WebKitCSSFilterRule': '_WebKitCssFilterRule',
+ 'WebKitCSSKeyframeRule': '_WebKitCssKeyframeRule',
+ 'WebKitCSSKeyframesRule': '_WebKitCssKeyframesRule',
+ 'WebKitCSSRegionRule': '_WebKitCssRegionRule',
'XMLHttpRequest': 'HttpRequest',
'XMLHttpRequestProgressEvent': 'HttpRequestProgressEvent',
'XMLHttpRequestUpload': 'HttpRequestUpload',
@@ -653,7 +657,8 @@
if any(interface.id in ['Element', 'Document']
for interface in self._database.Hierarchy(interface)):
return interface.id[len('HTML'):]
- return self.DartifyTypeName(interface.javascript_binding_name)
+ return self._DartifyName(interface.javascript_binding_name)
+
def RenameMember(self, interface_name, member_node, member, member_prefix='',
@@ -752,8 +757,11 @@
if type_name in html_interface_renames:
return html_interface_renames[type_name]
+ return self._DartifyName(type_name)
+
+ def _DartifyName(self, dart_name):
# Strip off any standard prefixes.
- name = re.sub(r'^SVG', '', type_name)
+ name = re.sub(r'^SVG', '', dart_name)
name = re.sub(r'^IDB', '', name)
name = re.sub(r'^WebGL', '', name)
name = re.sub(r'^WebKit', '', name)
diff --git a/tools/dom/src/CanvasImageSource.dart b/tools/dom/src/CanvasImageSource.dart
index 9d35871..69165cf 100644
--- a/tools/dom/src/CanvasImageSource.dart
+++ b/tools/dom/src/CanvasImageSource.dart
@@ -7,7 +7,7 @@
/**
* An object that can be drawn to a [CanvasRenderingContext2D] object with
* [CanvasRenderingContext2D.drawImage],
- * [CanvasRenderingContext2D.drawImageRect],
+ * [CanvasRenderingContext2D.drawImageToRect],
* [CanvasRenderingContext2D.drawImageScaled], or
* [CanvasRenderingContext2D.drawImageScaledFromSource].
*