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

Unified Diff: pkg/analyzer/test/generated/all_the_rest_test.dart

Issue 1668483003: Create ElementAnnotation objects prior to resolution. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer/test/generated/all_the_rest_test.dart
diff --git a/pkg/analyzer/test/generated/all_the_rest_test.dart b/pkg/analyzer/test/generated/all_the_rest_test.dart
index ee26679c3af5041643ac598ab30ae6140fb2bd8b..8d31c37c09bfa637f743f91248f0cfa77035a3d6 100644
--- a/pkg/analyzer/test/generated/all_the_rest_test.dart
+++ b/pkg/analyzer/test/generated/all_the_rest_test.dart
@@ -8,6 +8,7 @@ import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/dart/element/type.dart';
import 'package:analyzer/file_system/physical_file_system.dart';
+import 'package:analyzer/src/dart/ast/ast.dart';
import 'package:analyzer/src/dart/ast/utilities.dart' hide ConstantEvaluator;
import 'package:analyzer/src/dart/element/builder.dart';
import 'package:analyzer/src/dart/element/element.dart';
@@ -266,6 +267,50 @@ class DirectoryBasedSourceContainerTest {
@reflectiveTest
class ElementBuilderTest extends ParserTestCase {
+ CompilationUnitElement compilationUnitElement;
+ CompilationUnit compilationUnit;
+
+ /**
+ * Parse the given [code], pass it through [ElementBuilder], and return the
+ * resulting [ElementHolder].
+ */
+ ElementHolder buildElementsForText(String code) {
+ compilationUnit = ParserTestCase.parseCompilationUnit(code);
+ ElementHolder holder = new ElementHolder();
+ ElementBuilder builder = new ElementBuilder(holder, compilationUnitElement);
+ compilationUnit.accept(builder);
+ return holder;
+ }
+
+ /**
+ * Verify that the given [metadata] has exactly one annotation, and that its
+ * [ElementAnnotationImpl] is unresolved.
+ */
+ void checkAnnotation(NodeList<Annotation> metadata) {
+ expect(metadata, hasLength(1));
+ expect(metadata[0], new isInstanceOf<AnnotationImpl>());
+ AnnotationImpl annotation = metadata[0];
+ expect(annotation.elementAnnotation,
+ new isInstanceOf<ElementAnnotationImpl>());
+ ElementAnnotationImpl elementAnnotation = annotation.elementAnnotation;
+ expect(elementAnnotation.element, isNull); // Not yet resolved
+ expect(elementAnnotation.compilationUnit, isNotNull);
+ expect(elementAnnotation.compilationUnit, compilationUnitElement);
+ }
+
+ /**
+ * Verify that the given [element] has exactly one annotation, and that its
+ * [ElementAnnotationImpl] is unresolved.
+ */
+ void checkMetadata(Element element) {
+ expect(element.metadata, hasLength(1));
+ expect(element.metadata[0], new isInstanceOf<ElementAnnotationImpl>());
+ ElementAnnotationImpl elementAnnotation = element.metadata[0];
+ expect(elementAnnotation.element, isNull); // Not yet resolved
+ expect(elementAnnotation.compilationUnit, isNotNull);
+ expect(elementAnnotation.compilationUnit, compilationUnitElement);
+ }
+
void fail_visitMethodDeclaration_setter_duplicate() {
// https://github.com/dart-lang/sdk/issues/25601
String code = r'''
@@ -274,20 +319,190 @@ class C {
set zzz(y) {}
}
''';
- CompilationUnit unit = ParserTestCase.parseCompilationUnit(code);
- ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
- unit.accept(builder);
- ClassElement classElement = holder.types[0];
+ ClassElement classElement = buildElementsForText(code).types[0];
for (PropertyAccessorElement accessor in classElement.accessors) {
expect(accessor.variable.setter, same(accessor));
}
}
+ @override
+ void setUp() {
+ super.setUp();
+ compilationUnitElement = new CompilationUnitElementImpl('test.dart');
+ }
+
+ void test_metadata_fieldDeclaration() {
+ List<FieldElement> fields =
+ buildElementsForText('class C { @a int x, y; }').types[0].fields;
+ checkMetadata(fields[0]);
+ checkMetadata(fields[1]);
+ expect(fields[0].metadata, same(fields[1].metadata));
+ }
+
+ void test_metadata_localVariableDeclaration() {
+ List<LocalVariableElement> localVariables =
+ buildElementsForText('f() { @a int x, y; }')
+ .functions[0]
+ .localVariables;
+ checkMetadata(localVariables[0]);
+ checkMetadata(localVariables[1]);
+ expect(localVariables[0].metadata, same(localVariables[1].metadata));
+ }
+
+ void test_metadata_topLevelVariableDeclaration() {
+ List<TopLevelVariableElement> topLevelVariables =
+ buildElementsForText('@a int x, y;').topLevelVariables;
+ checkMetadata(topLevelVariables[0]);
+ checkMetadata(topLevelVariables[1]);
+ expect(topLevelVariables[0].metadata, same(topLevelVariables[1].metadata));
+ }
+
+ void test_metadata_visitClassDeclaration() {
+ ClassElement classElement = buildElementsForText('@a class C {}').types[0];
+ checkMetadata(classElement);
+ }
+
+ void test_metadata_visitClassTypeAlias() {
+ ClassElement classElement =
+ buildElementsForText('@a class C = D with E;').types[0];
+ checkMetadata(classElement);
+ }
+
+ void test_metadata_visitConstructorDeclaration() {
+ ConstructorElement constructorElement =
+ buildElementsForText('class C { @a C(); }').types[0].constructors[0];
+ checkMetadata(constructorElement);
+ }
+
+ void test_metadata_visitDeclaredIdentifier() {
+ LocalVariableElement localVariableElement =
+ buildElementsForText('f() { for (@a var x in y) {} }')
+ .functions[0]
+ .localVariables[0];
+ checkMetadata(localVariableElement);
+ }
+
+ void test_metadata_visitEnumDeclaration() {
+ ClassElement classElement =
+ buildElementsForText('@a enum E { v }').enums[0];
+ checkMetadata(classElement);
+ }
+
+ void test_metadata_visitExportDirective() {
+ buildElementsForText('@a export "foo.dart";');
+ expect(compilationUnit.directives[0], new isInstanceOf<ExportDirective>());
+ ExportDirective exportDirective = compilationUnit.directives[0];
+ checkAnnotation(exportDirective.metadata);
+ }
+
+ void test_metadata_visitFieldFormalParameter() {
+ ParameterElement parameterElement =
+ buildElementsForText('class C { var x; C(@a this.x); }')
+ .types[0]
+ .constructors[0]
+ .parameters[0];
+ checkMetadata(parameterElement);
+ }
+
+ void test_metadata_visitFunctionDeclaration_function() {
+ FunctionElement functionElement =
+ buildElementsForText('@a f() {}').functions[0];
+ checkMetadata(functionElement);
+ }
+
+ void test_metadata_visitFunctionDeclaration_getter() {
+ PropertyAccessorElement propertyAccessorElement =
+ buildElementsForText('@a get f => null;').accessors[0];
+ checkMetadata(propertyAccessorElement);
+ }
+
+ void test_metadata_visitFunctionDeclaration_setter() {
+ PropertyAccessorElement propertyAccessorElement =
+ buildElementsForText('@a set f(value) {}').accessors[0];
+ checkMetadata(propertyAccessorElement);
+ }
+
+ void test_metadata_visitFunctionTypeAlias() {
+ FunctionTypeAliasElement functionTypeAliasElement =
+ buildElementsForText('@a typedef F();').typeAliases[0];
+ checkMetadata(functionTypeAliasElement);
+ }
+
+ void test_metadata_visitFunctionTypedFormalParameter() {
+ ParameterElement parameterElement =
+ buildElementsForText('f(@a g()) {}').functions[0].parameters[0];
+ checkMetadata(parameterElement);
+ }
+
+ void test_metadata_visitImportDirective() {
+ buildElementsForText('@a import "foo.dart";');
+ expect(compilationUnit.directives[0], new isInstanceOf<ImportDirective>());
+ ImportDirective importDirective = compilationUnit.directives[0];
+ checkAnnotation(importDirective.metadata);
+ }
+
+ void test_metadata_visitLibraryDirective() {
+ buildElementsForText('@a library L;');
+ expect(compilationUnit.directives[0], new isInstanceOf<LibraryDirective>());
+ LibraryDirective libraryDirective = compilationUnit.directives[0];
+ checkAnnotation(libraryDirective.metadata);
+ }
+
+ void test_metadata_visitMethodDeclaration_getter() {
+ PropertyAccessorElement propertyAccessorElement =
+ buildElementsForText('class C { @a get m => null; }')
+ .types[0]
+ .accessors[0];
+ checkMetadata(propertyAccessorElement);
+ }
+
+ void test_metadata_visitMethodDeclaration_method() {
+ MethodElement methodElement =
+ buildElementsForText('class C { @a m() {} }').types[0].methods[0];
+ checkMetadata(methodElement);
+ }
+
+ void test_metadata_visitMethodDeclaration_setter() {
+ PropertyAccessorElement propertyAccessorElement =
+ buildElementsForText('class C { @a set f(value) {} }')
+ .types[0]
+ .accessors[0];
+ checkMetadata(propertyAccessorElement);
+ }
+
+ void test_metadata_visitPartDirective() {
+ buildElementsForText('@a part "foo.dart";');
+ expect(compilationUnit.directives[0], new isInstanceOf<PartDirective>());
+ PartDirective partDirective = compilationUnit.directives[0];
+ checkAnnotation(partDirective.metadata);
+ }
+
+ void test_metadata_visitPartOfDirective() {
+ // We don't build ElementAnnotation objects for `part of` directives, since
+ // analyzer ignores them in favor of annotations on the library directive.
+ buildElementsForText('@a part of L;');
+ expect(compilationUnit.directives[0], new isInstanceOf<PartOfDirective>());
+ PartOfDirective partOfDirective = compilationUnit.directives[0];
+ expect(partOfDirective.metadata, hasLength(1));
+ expect(partOfDirective.metadata[0].elementAnnotation, isNull);
+ }
+
+ void test_metadata_visitSimpleFormalParameter() {
+ ParameterElement parameterElement =
+ buildElementsForText('f(@a x) {}').functions[0].parameters[0];
+ checkMetadata(parameterElement);
+ }
+
+ void test_metadata_visitTypeParameter() {
+ TypeParameterElement typeParameterElement =
+ buildElementsForText('class C<@a T> {}').types[0].typeParameters[0];
+ checkMetadata(typeParameterElement);
+ }
+
void test_visitCatchClause() {
// } catch (e, s) {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String exceptionParameterName = "e";
String stackParameterName = "s";
CatchClause clause =
@@ -316,7 +531,7 @@ class C {
void test_visitCatchClause_withType() {
// } on E catch (e) {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String exceptionParameterName = "e";
CatchClause clause = AstFactory.catchClause4(
AstFactory.typeName4('E'), exceptionParameterName);
@@ -332,7 +547,7 @@ class C {
void test_visitClassDeclaration_abstract() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "C";
ClassDeclaration classDeclaration = AstFactory.classDeclaration(
Keyword.ABSTRACT, className, null, null, null, null);
@@ -351,7 +566,7 @@ class C {
void test_visitClassDeclaration_minimal() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "C";
ClassDeclaration classDeclaration =
AstFactory.classDeclaration(null, className, null, null, null, null);
@@ -373,7 +588,7 @@ class C {
void test_visitClassDeclaration_parameterized() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "C";
String firstVariableName = "E";
String secondVariableName = "F";
@@ -401,7 +616,7 @@ class C {
void test_visitClassDeclaration_withMembers() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "C";
String typeParameterName = "E";
String fieldName = "f";
@@ -455,7 +670,7 @@ class C {
// class M {}
// class C = B with M
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
ClassElementImpl classB = ElementFactory.classElement2('B', []);
ConstructorElementImpl constructorB =
ElementFactory.constructorElement2(classB, '', []);
@@ -485,7 +700,7 @@ class C {
// class M {}
// abstract class C = B with M
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
ClassElementImpl classB = ElementFactory.classElement2('B', []);
ConstructorElementImpl constructorB =
ElementFactory.constructorElement2(classB, '', []);
@@ -509,7 +724,7 @@ class C {
// class M {}
// class C<T> = B with M
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
ClassElementImpl classB = ElementFactory.classElement2('B', []);
ConstructorElementImpl constructorB =
ElementFactory.constructorElement2(classB, '', []);
@@ -535,7 +750,7 @@ class C {
void test_visitConstructorDeclaration_external() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "A";
ConstructorDeclaration constructorDeclaration =
AstFactory.constructorDeclaration2(
@@ -564,7 +779,7 @@ class C {
void test_visitConstructorDeclaration_factory() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "A";
ConstructorDeclaration constructorDeclaration =
AstFactory.constructorDeclaration2(
@@ -591,7 +806,7 @@ class C {
void test_visitConstructorDeclaration_minimal() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "A";
ConstructorDeclaration constructorDeclaration =
AstFactory.constructorDeclaration2(
@@ -623,7 +838,7 @@ class C {
void test_visitConstructorDeclaration_named() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "A";
String constructorName = "c";
ConstructorDeclaration constructorDeclaration =
@@ -653,7 +868,7 @@ class C {
void test_visitConstructorDeclaration_unnamed() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String className = "A";
ConstructorDeclaration constructorDeclaration =
AstFactory.constructorDeclaration2(
@@ -682,7 +897,7 @@ class C {
void test_visitDeclaredIdentifier_noType() {
// var i
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
var variableName = 'i';
DeclaredIdentifier identifier =
AstFactory.declaredIdentifier3(variableName);
@@ -708,7 +923,7 @@ class C {
void test_visitDeclaredIdentifier_type() {
// E i
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
var variableName = 'i';
DeclaredIdentifier identifier =
AstFactory.declaredIdentifier4(AstFactory.typeName4('E'), variableName);
@@ -734,7 +949,7 @@ class C {
void test_visitDefaultFormalParameter_noType() {
// p = 0
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = 'p';
DefaultFormalParameter formalParameter =
AstFactory.positionalFormalParameter(
@@ -760,7 +975,7 @@ class C {
void test_visitDefaultFormalParameter_type() {
// E p = 0
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = 'p';
DefaultFormalParameter formalParameter = AstFactory.namedFormalParameter(
AstFactory.simpleFormalParameter4(
@@ -785,7 +1000,7 @@ class C {
void test_visitEnumDeclaration() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String enumName = "E";
EnumDeclaration enumDeclaration =
AstFactory.enumDeclaration2(enumName, ["ONE"]);
@@ -802,7 +1017,7 @@ class C {
void test_visitFieldDeclaration() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String firstFieldName = "x";
String secondFieldName = "y";
FieldDeclaration fieldDeclaration =
@@ -838,7 +1053,7 @@ class C {
void test_visitFieldFormalParameter() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
FieldFormalParameter formalParameter =
AstFactory.fieldFormalParameter(null, null, parameterName);
@@ -858,7 +1073,7 @@ class C {
void test_visitFieldFormalParameter_functionTyped() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
FieldFormalParameter formalParameter = AstFactory.fieldFormalParameter(
null,
@@ -882,7 +1097,7 @@ class C {
void test_visitFormalParameterList() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String firstParameterName = "a";
String secondParameterName = "b";
FormalParameterList parameterList = AstFactory.formalParameterList([
@@ -899,7 +1114,7 @@ class C {
void test_visitFunctionDeclaration_external() {
// external f();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String functionName = "f";
FunctionDeclaration declaration = AstFactory.functionDeclaration(
null,
@@ -927,7 +1142,7 @@ class C {
void test_visitFunctionDeclaration_getter() {
// get f() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String functionName = "f";
FunctionDeclaration declaration = AstFactory.functionDeclaration(
null,
@@ -962,7 +1177,7 @@ class C {
void test_visitFunctionDeclaration_plain() {
// T f() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String functionName = "f";
FunctionDeclaration declaration = AstFactory.functionDeclaration(
AstFactory.typeName4('T'),
@@ -991,7 +1206,7 @@ class C {
void test_visitFunctionDeclaration_setter() {
// set f() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String functionName = "f";
FunctionDeclaration declaration = AstFactory.functionDeclaration(
null,
@@ -1026,7 +1241,7 @@ class C {
void test_visitFunctionDeclaration_typeParameters() {
// f<E>() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String functionName = 'f';
String typeParameterName = 'E';
FunctionExpression expression = AstFactory.functionExpression3(
@@ -1056,7 +1271,7 @@ class C {
void test_visitFunctionExpression() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
FunctionExpression expression = AstFactory.functionExpression2(
AstFactory.formalParameterList(), AstFactory.blockFunctionBody2());
expression.accept(builder);
@@ -1072,7 +1287,7 @@ class C {
void test_visitFunctionTypeAlias() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String aliasName = "F";
String parameterName = "E";
FunctionTypeAlias aliasNode = AstFactory.typeAlias(
@@ -1097,7 +1312,7 @@ class C {
void test_visitFunctionTypedFormalParameter() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
FunctionTypedFormalParameter formalParameter =
AstFactory.functionTypedFormalParameter(null, parameterName);
@@ -1120,7 +1335,7 @@ class C {
void test_visitFunctionTypedFormalParameter_withTypeParameters() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
FunctionTypedFormalParameter formalParameter =
AstFactory.functionTypedFormalParameter(null, parameterName);
@@ -1145,7 +1360,7 @@ class C {
void test_visitLabeledStatement() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String labelName = "l";
LabeledStatement statement = AstFactory.labeledStatement(
[AstFactory.label2(labelName)], AstFactory.breakStatement());
@@ -1161,7 +1376,7 @@ class C {
void test_visitMethodDeclaration_abstract() {
// m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1193,7 +1408,7 @@ class C {
void test_visitMethodDeclaration_external() {
// external m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1227,7 +1442,7 @@ class C {
void test_visitMethodDeclaration_getter() {
// get m() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1267,7 +1482,7 @@ class C {
void test_visitMethodDeclaration_getter_abstract() {
// get m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1304,7 +1519,7 @@ class C {
void test_visitMethodDeclaration_getter_external() {
// external get m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration(
null,
@@ -1342,7 +1557,7 @@ class C {
void test_visitMethodDeclaration_minimal() {
// T m() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1377,7 +1592,7 @@ class C {
void test_visitMethodDeclaration_operator() {
// operator +(addend) {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "+";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1410,7 +1625,7 @@ class C {
void test_visitMethodDeclaration_setter() {
// set m() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1452,7 +1667,7 @@ class C {
void test_visitMethodDeclaration_setter_abstract() {
// set m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1490,7 +1705,7 @@ class C {
void test_visitMethodDeclaration_setter_external() {
// external m();
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration(
null,
@@ -1529,7 +1744,7 @@ class C {
void test_visitMethodDeclaration_static() {
// static m() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
Keyword.STATIC,
@@ -1560,7 +1775,7 @@ class C {
void test_visitMethodDeclaration_typeParameters() {
// m<E>() {}
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
MethodDeclaration methodDeclaration = AstFactory.methodDeclaration2(
null,
@@ -1593,7 +1808,7 @@ class C {
void test_visitMethodDeclaration_withMembers() {
// m(p) { var v; try { l: return; } catch (e) {} }
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String methodName = "m";
String parameterName = "p";
String localVariableName = "v";
@@ -1656,7 +1871,7 @@ class C {
void test_visitNamedFormalParameter() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
DefaultFormalParameter formalParameter = AstFactory.namedFormalParameter(
AstFactory.simpleFormalParameter3(parameterName),
@@ -1686,7 +1901,7 @@ class C {
void test_visitSimpleFormalParameter_noType() {
// p
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
SimpleFormalParameter formalParameter =
AstFactory.simpleFormalParameter3(parameterName);
@@ -1713,7 +1928,7 @@ class C {
void test_visitSimpleFormalParameter_type() {
// T p
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "p";
SimpleFormalParameter formalParameter = AstFactory.simpleFormalParameter4(
AstFactory.typeName4('T'), parameterName);
@@ -1739,7 +1954,7 @@ class C {
void test_visitTypeAlias_minimal() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String aliasName = "F";
TypeAlias typeAlias = AstFactory.typeAlias(null, aliasName, null, null);
typeAlias.accept(builder);
@@ -1754,7 +1969,7 @@ class C {
void test_visitTypeAlias_withFormalParameters() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String aliasName = "F";
String firstParameterName = "x";
String secondParameterName = "y";
@@ -1785,7 +2000,7 @@ class C {
void test_visitTypeAlias_withTypeParameters() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String aliasName = "F";
String firstTypeParameterName = "A";
String secondTypeParameterName = "B";
@@ -1814,7 +2029,7 @@ class C {
void test_visitTypeParameter() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String parameterName = "E";
TypeParameter typeParameter = AstFactory.typeParameter(parameterName);
typeParameter.accept(builder);
@@ -1829,7 +2044,7 @@ class C {
void test_visitVariableDeclaration_inConstructor() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
//
// C() {var v;}
//
@@ -1860,7 +2075,7 @@ class C {
void test_visitVariableDeclaration_inMethod() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
//
// m() {T v;}
//
@@ -1890,7 +2105,7 @@ class C {
void test_visitVariableDeclaration_localNestedInFunction() {
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
//
// var f = () {var v;};
//
@@ -1931,7 +2146,7 @@ class C {
void test_visitVariableDeclaration_noInitializer() {
// var v;
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String variableName = "v";
VariableDeclaration variableDeclaration =
AstFactory.variableDeclaration2(variableName, null);
@@ -1955,7 +2170,7 @@ class C {
void test_visitVariableDeclaration_top_const_hasInitializer() {
// const v = 42;
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String variableName = "v";
VariableDeclaration variableDeclaration =
AstFactory.variableDeclaration2(variableName, AstFactory.integer(42));
@@ -1979,7 +2194,7 @@ class C {
void test_visitVariableDeclaration_top_docRange() {
// final a, b;
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
VariableDeclaration variableDeclaration1 =
AstFactory.variableDeclaration('a');
VariableDeclaration variableDeclaration2 =
@@ -2007,7 +2222,7 @@ class C {
void test_visitVariableDeclaration_top_final() {
// final v;
ElementHolder holder = new ElementHolder();
- ElementBuilder builder = new ElementBuilder(holder);
+ ElementBuilder builder = _makeBuilder(holder);
String variableName = "v";
VariableDeclaration variableDeclaration =
AstFactory.variableDeclaration2(variableName, null);
@@ -2036,6 +2251,9 @@ class C {
expect(docRange.length, expectedLength);
}
+ ElementBuilder _makeBuilder(ElementHolder holder) =>
+ new ElementBuilder(holder, new CompilationUnitElementImpl('test.dart'));
+
void _useParameterInMethod(
FormalParameter formalParameter, int blockOffset, int blockEnd) {
Block block = AstFactory.block();
@@ -2578,7 +2796,7 @@ class EnumMemberBuilderTest extends EngineTestCase {
ClassElement _buildElement(EnumDeclaration enumDeclaration) {
ElementHolder holder = new ElementHolder();
- ElementBuilder elementBuilder = new ElementBuilder(holder);
+ ElementBuilder elementBuilder = _makeBuilder(holder);
enumDeclaration.accept(elementBuilder);
EnumMemberBuilder memberBuilder =
new EnumMemberBuilder(new TestTypeProvider());
@@ -2587,6 +2805,9 @@ class EnumMemberBuilderTest extends EngineTestCase {
expect(enums, hasLength(1));
return enums[0];
}
+
+ ElementBuilder _makeBuilder(ElementHolder holder) =>
+ new ElementBuilder(holder, new CompilationUnitElementImpl('test.dart'));
}
@reflectiveTest
« no previous file with comments | « pkg/analyzer/lib/src/generated/resolver.dart ('k') | pkg/analyzer/test/generated/incremental_resolver_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698