Index: analyzer/lib/src/generated/testing/element_factory.dart |
diff --git a/analyzer/lib/src/generated/testing/element_factory.dart b/analyzer/lib/src/generated/testing/element_factory.dart |
deleted file mode 100644 |
index 4c2a5370f3e2f4431d14870a84692a93802a5b11..0000000000000000000000000000000000000000 |
--- a/analyzer/lib/src/generated/testing/element_factory.dart |
+++ /dev/null |
@@ -1,565 +0,0 @@ |
-// Copyright (c) 2014, 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. |
- |
-// This code was auto-generated, is not intended to be edited, and is subject to |
-// significant change. Please see the README file for more information. |
- |
-library engine.testing.element_factory; |
- |
-import 'dart:collection'; |
- |
-import 'package:analyzer/src/generated/ast.dart'; |
-import 'package:analyzer/src/generated/constant.dart'; |
-import 'package:analyzer/src/generated/element.dart'; |
-import 'package:analyzer/src/generated/engine.dart'; |
-import 'package:analyzer/src/generated/java_core.dart'; |
-import 'package:analyzer/src/generated/resolver.dart'; |
-import 'package:analyzer/src/generated/scanner.dart'; |
-import 'package:analyzer/src/generated/source.dart'; |
-import 'package:analyzer/src/generated/testing/ast_factory.dart'; |
-import 'package:analyzer/src/generated/utilities_dart.dart'; |
-import 'package:path/path.dart'; |
- |
-/** |
- * The class `ElementFactory` defines utility methods used to create elements for testing |
- * purposes. The elements that are created are complete in the sense that as much of the element |
- * model as can be created, given the provided information, has been created. |
- */ |
-class ElementFactory { |
- /** |
- * The element representing the class 'Object'. |
- */ |
- static ClassElementImpl _objectElement; |
- |
- static ClassElementImpl get object { |
- if (_objectElement == null) { |
- _objectElement = classElement("Object", null); |
- } |
- return _objectElement; |
- } |
- |
- static InterfaceType get objectType => object.type; |
- |
- static ClassElementImpl classElement( |
- String typeName, InterfaceType superclassType, |
- [List<String> parameterNames]) { |
- ClassElementImpl element = new ClassElementImpl(typeName, 0); |
- element.supertype = superclassType; |
- InterfaceTypeImpl type = new InterfaceTypeImpl(element); |
- element.type = type; |
- if (parameterNames != null) { |
- int count = parameterNames.length; |
- if (count > 0) { |
- List<TypeParameterElementImpl> typeParameters = |
- new List<TypeParameterElementImpl>(count); |
- List<TypeParameterTypeImpl> typeParameterTypes = |
- new List<TypeParameterTypeImpl>(count); |
- for (int i = 0; i < count; i++) { |
- TypeParameterElementImpl typeParameter = |
- typeParameterElement(parameterNames[i]); |
- typeParameters[i] = typeParameter; |
- typeParameterTypes[i] = new TypeParameterTypeImpl(typeParameter); |
- typeParameter.type = typeParameterTypes[i]; |
- } |
- element.typeParameters = typeParameters; |
- type.typeArguments = typeParameterTypes; |
- } |
- } |
- return element; |
- } |
- |
- static ClassElementImpl classElement2(String typeName, |
- [List<String> parameterNames]) => |
- classElement(typeName, objectType, parameterNames); |
- |
- static classTypeAlias(String typeName, InterfaceType superclassType, |
- [List<String> parameterNames]) { |
- ClassElementImpl element = |
- classElement(typeName, superclassType, parameterNames); |
- element.mixinApplication = true; |
- return element; |
- } |
- |
- static ClassElementImpl classTypeAlias2(String typeName, |
- [List<String> parameterNames]) => |
- classTypeAlias(typeName, objectType, parameterNames); |
- |
- static CompilationUnitElementImpl compilationUnit(String fileName, |
- [Source librarySource]) { |
- Source source = |
- new NonExistingSource(fileName, toUri(fileName), UriKind.FILE_URI); |
- CompilationUnitElementImpl unit = new CompilationUnitElementImpl(fileName); |
- unit.source = source; |
- if (librarySource == null) { |
- librarySource = source; |
- } |
- unit.librarySource = librarySource; |
- return unit; |
- } |
- |
- static ConstLocalVariableElementImpl constLocalVariableElement(String name) => |
- new ConstLocalVariableElementImpl(name, 0); |
- |
- static ConstructorElementImpl constructorElement( |
- ClassElement definingClass, String name, bool isConst, |
- [List<DartType> argumentTypes]) { |
- DartType type = definingClass.type; |
- ConstructorElementImpl constructor = name == null |
- ? new ConstructorElementImpl("", -1) |
- : new ConstructorElementImpl(name, 0); |
- constructor.const2 = isConst; |
- if (argumentTypes != null) { |
- int count = argumentTypes.length; |
- List<ParameterElement> parameters = new List<ParameterElement>(count); |
- for (int i = 0; i < count; i++) { |
- ParameterElementImpl parameter = new ParameterElementImpl("a$i", i); |
- parameter.type = argumentTypes[i]; |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- parameters[i] = parameter; |
- } |
- constructor.parameters = parameters; |
- } else { |
- constructor.parameters = <ParameterElement>[]; |
- } |
- constructor.returnType = type; |
- FunctionTypeImpl constructorType = new FunctionTypeImpl(constructor); |
- constructor.type = constructorType; |
- return constructor; |
- } |
- |
- static ConstructorElementImpl constructorElement2( |
- ClassElement definingClass, String name, |
- [List<DartType> argumentTypes]) => |
- constructorElement(definingClass, name, false, argumentTypes); |
- |
- static ClassElementImpl enumElement( |
- TypeProvider typeProvider, String enumName, |
- [List<String> constantNames]) { |
- // |
- // Build the enum. |
- // |
- ClassElementImpl enumElement = new ClassElementImpl(enumName, -1); |
- InterfaceTypeImpl enumType = new InterfaceTypeImpl(enumElement); |
- enumElement.type = enumType; |
- enumElement.supertype = objectType; |
- enumElement.enum2 = true; |
- // |
- // Populate the fields. |
- // |
- List<FieldElement> fields = new List<FieldElement>(); |
- InterfaceType intType = typeProvider.intType; |
- InterfaceType stringType = typeProvider.stringType; |
- String indexFieldName = "index"; |
- FieldElementImpl indexField = new FieldElementImpl(indexFieldName, -1); |
- indexField.final2 = true; |
- indexField.type = intType; |
- fields.add(indexField); |
- String nameFieldName = "_name"; |
- FieldElementImpl nameField = new FieldElementImpl(nameFieldName, -1); |
- nameField.final2 = true; |
- nameField.type = stringType; |
- fields.add(nameField); |
- FieldElementImpl valuesField = new FieldElementImpl("values", -1); |
- valuesField.static = true; |
- valuesField.const3 = true; |
- valuesField.type = typeProvider.listType.substitute4(<DartType>[enumType]); |
- fields.add(valuesField); |
- // |
- // Build the enum constants. |
- // |
- if (constantNames != null) { |
- int constantCount = constantNames.length; |
- for (int i = 0; i < constantCount; i++) { |
- String constantName = constantNames[i]; |
- FieldElementImpl constantElement = |
- new ConstFieldElementImpl(constantName, -1); |
- constantElement.static = true; |
- constantElement.const3 = true; |
- constantElement.type = enumType; |
- HashMap<String, DartObjectImpl> fieldMap = |
- new HashMap<String, DartObjectImpl>(); |
- fieldMap[indexFieldName] = new DartObjectImpl(intType, new IntState(i)); |
- fieldMap[nameFieldName] = |
- new DartObjectImpl(stringType, new StringState(constantName)); |
- DartObjectImpl value = |
- new DartObjectImpl(enumType, new GenericState(fieldMap)); |
- constantElement.evaluationResult = new EvaluationResultImpl(value); |
- fields.add(constantElement); |
- } |
- } |
- // |
- // Finish building the enum. |
- // |
- enumElement.fields = fields; |
- // Client code isn't allowed to invoke the constructor, so we do not model it. |
- return enumElement; |
- } |
- |
- static ExportElementImpl exportFor(LibraryElement exportedLibrary, |
- [List<NamespaceCombinator> combinators = NamespaceCombinator.EMPTY_LIST]) { |
- ExportElementImpl spec = new ExportElementImpl(-1); |
- spec.exportedLibrary = exportedLibrary; |
- spec.combinators = combinators; |
- return spec; |
- } |
- |
- static FieldElementImpl fieldElement( |
- String name, bool isStatic, bool isFinal, bool isConst, DartType type) { |
- FieldElementImpl field = new FieldElementImpl(name, 0); |
- field.const3 = isConst; |
- field.final2 = isFinal; |
- field.static = isStatic; |
- field.type = type; |
- PropertyAccessorElementImpl getter = |
- new PropertyAccessorElementImpl.forVariable(field); |
- getter.getter = true; |
- getter.synthetic = true; |
- getter.variable = field; |
- getter.returnType = type; |
- field.getter = getter; |
- FunctionTypeImpl getterType = new FunctionTypeImpl(getter); |
- getter.type = getterType; |
- if (!isConst && !isFinal) { |
- PropertyAccessorElementImpl setter = |
- new PropertyAccessorElementImpl.forVariable(field); |
- setter.setter = true; |
- setter.synthetic = true; |
- setter.variable = field; |
- setter.parameters = |
- <ParameterElement>[requiredParameter2("_$name", type)]; |
- setter.returnType = VoidTypeImpl.instance; |
- setter.type = new FunctionTypeImpl(setter); |
- field.setter = setter; |
- } |
- return field; |
- } |
- |
- static FieldFormalParameterElementImpl fieldFormalParameter( |
- Identifier name) => new FieldFormalParameterElementImpl(name); |
- |
- static FunctionElementImpl functionElement(String functionName) => |
- functionElement4(functionName, null, null, null, null); |
- |
- static FunctionElementImpl functionElement2( |
- String functionName, ClassElement returnElement) => |
- functionElement3(functionName, returnElement, null, null); |
- |
- static FunctionElementImpl functionElement3(String functionName, |
- ClassElement returnElement, List<ClassElement> normalParameters, |
- List<ClassElement> optionalParameters) { |
- // We don't create parameter elements because we don't have parameter names |
- FunctionElementImpl functionElement = |
- new FunctionElementImpl(functionName, 0); |
- FunctionTypeImpl functionType = new FunctionTypeImpl(functionElement); |
- functionElement.type = functionType; |
- // return type |
- if (returnElement == null) { |
- functionElement.returnType = VoidTypeImpl.instance; |
- } else { |
- functionElement.returnType = returnElement.type; |
- } |
- // parameters |
- int normalCount = normalParameters == null ? 0 : normalParameters.length; |
- int optionalCount = |
- optionalParameters == null ? 0 : optionalParameters.length; |
- int totalCount = normalCount + optionalCount; |
- List<ParameterElement> parameters = new List<ParameterElement>(totalCount); |
- for (int i = 0; i < totalCount; i++) { |
- ParameterElementImpl parameter = new ParameterElementImpl("a$i", i); |
- if (i < normalCount) { |
- parameter.type = normalParameters[i].type; |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- } else { |
- parameter.type = optionalParameters[i - normalCount].type; |
- parameter.parameterKind = ParameterKind.POSITIONAL; |
- } |
- parameters[i] = parameter; |
- } |
- functionElement.parameters = parameters; |
- // done |
- return functionElement; |
- } |
- |
- static FunctionElementImpl functionElement4(String functionName, |
- ClassElement returnElement, List<ClassElement> normalParameters, |
- List<String> names, List<ClassElement> namedParameters) { |
- FunctionElementImpl functionElement = |
- new FunctionElementImpl(functionName, 0); |
- FunctionTypeImpl functionType = new FunctionTypeImpl(functionElement); |
- functionElement.type = functionType; |
- // parameters |
- int normalCount = normalParameters == null ? 0 : normalParameters.length; |
- int nameCount = names == null ? 0 : names.length; |
- int typeCount = namedParameters == null ? 0 : namedParameters.length; |
- if (names != null && nameCount != typeCount) { |
- throw new IllegalStateException( |
- "The passed String[] and ClassElement[] arrays had different lengths."); |
- } |
- int totalCount = normalCount + nameCount; |
- List<ParameterElement> parameters = new List<ParameterElement>(totalCount); |
- for (int i = 0; i < totalCount; i++) { |
- if (i < normalCount) { |
- ParameterElementImpl parameter = new ParameterElementImpl("a$i", i); |
- parameter.type = normalParameters[i].type; |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- parameters[i] = parameter; |
- } else { |
- ParameterElementImpl parameter = |
- new ParameterElementImpl(names[i - normalCount], i); |
- parameter.type = namedParameters[i - normalCount].type; |
- parameter.parameterKind = ParameterKind.NAMED; |
- parameters[i] = parameter; |
- } |
- } |
- functionElement.parameters = parameters; |
- // return type |
- if (returnElement == null) { |
- functionElement.returnType = VoidTypeImpl.instance; |
- } else { |
- functionElement.returnType = returnElement.type; |
- } |
- return functionElement; |
- } |
- |
- static FunctionElementImpl functionElement5( |
- String functionName, List<ClassElement> normalParameters) => |
- functionElement3(functionName, null, normalParameters, null); |
- |
- static FunctionElementImpl functionElement6(String functionName, |
- List<ClassElement> normalParameters, |
- List<ClassElement> optionalParameters) => functionElement3( |
- functionName, null, normalParameters, optionalParameters); |
- |
- static FunctionElementImpl functionElement7(String functionName, |
- List<ClassElement> normalParameters, List<String> names, |
- List<ClassElement> namedParameters) => functionElement4( |
- functionName, null, normalParameters, names, namedParameters); |
- |
- static FunctionElementImpl functionElementWithParameters(String functionName, |
- DartType returnType, List<ParameterElement> parameters) { |
- FunctionElementImpl functionElement = |
- new FunctionElementImpl(functionName, 0); |
- functionElement.returnType = |
- returnType == null ? VoidTypeImpl.instance : returnType; |
- functionElement.parameters = parameters; |
- FunctionTypeImpl functionType = new FunctionTypeImpl(functionElement); |
- functionElement.type = functionType; |
- return functionElement; |
- } |
- |
- static FunctionTypeAliasElementImpl functionTypeAliasElement(String name) { |
- FunctionTypeAliasElementImpl functionTypeAliasElement = |
- new FunctionTypeAliasElementImpl(name, -1); |
- functionTypeAliasElement.type = |
- new FunctionTypeImpl.forTypedef(functionTypeAliasElement); |
- return functionTypeAliasElement; |
- } |
- |
- static PropertyAccessorElementImpl getterElement( |
- String name, bool isStatic, DartType type) { |
- FieldElementImpl field = new FieldElementImpl(name, -1); |
- field.static = isStatic; |
- field.synthetic = true; |
- field.type = type; |
- PropertyAccessorElementImpl getter = |
- new PropertyAccessorElementImpl.forVariable(field); |
- getter.getter = true; |
- getter.variable = field; |
- getter.returnType = type; |
- field.getter = getter; |
- FunctionTypeImpl getterType = new FunctionTypeImpl(getter); |
- getter.type = getterType; |
- return getter; |
- } |
- |
- @deprecated |
- static HtmlElementImpl htmlUnit(AnalysisContext context, String fileName) { |
- Source source = |
- new NonExistingSource(fileName, toUri(fileName), UriKind.FILE_URI); |
- HtmlElementImpl unit = new HtmlElementImpl(context, fileName); |
- unit.source = source; |
- return unit; |
- } |
- |
- static ImportElementImpl importFor( |
- LibraryElement importedLibrary, PrefixElement prefix, |
- [List<NamespaceCombinator> combinators = NamespaceCombinator.EMPTY_LIST]) { |
- ImportElementImpl spec = new ImportElementImpl(0); |
- spec.importedLibrary = importedLibrary; |
- spec.prefix = prefix; |
- spec.combinators = combinators; |
- return spec; |
- } |
- |
- static LibraryElementImpl library( |
- AnalysisContext context, String libraryName) { |
- String fileName = "/$libraryName.dart"; |
- CompilationUnitElementImpl unit = compilationUnit(fileName); |
- LibraryElementImpl library = |
- new LibraryElementImpl(context, libraryName, 0); |
- library.definingCompilationUnit = unit; |
- return library; |
- } |
- |
- static LocalVariableElementImpl localVariableElement(Identifier name) => |
- new LocalVariableElementImpl.forNode(name); |
- |
- static LocalVariableElementImpl localVariableElement2(String name) => |
- new LocalVariableElementImpl(name, 0); |
- |
- static MethodElementImpl methodElement(String methodName, DartType returnType, |
- [List<DartType> argumentTypes]) { |
- MethodElementImpl method = new MethodElementImpl(methodName, 0); |
- if (argumentTypes == null) { |
- method.parameters = ParameterElement.EMPTY_LIST; |
- } else { |
- int count = argumentTypes.length; |
- List<ParameterElement> parameters = new List<ParameterElement>(count); |
- for (int i = 0; i < count; i++) { |
- ParameterElementImpl parameter = new ParameterElementImpl("a$i", i); |
- parameter.type = argumentTypes[i]; |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- parameters[i] = parameter; |
- } |
- method.parameters = parameters; |
- } |
- method.returnType = returnType; |
- FunctionTypeImpl methodType = new FunctionTypeImpl(method); |
- method.type = methodType; |
- return method; |
- } |
- |
- static MethodElementImpl methodElementWithParameters(String methodName, |
- List<DartType> typeArguments, DartType returnType, |
- List<ParameterElement> parameters) { |
- MethodElementImpl method = new MethodElementImpl(methodName, 0); |
- method.parameters = parameters; |
- method.returnType = returnType; |
- FunctionTypeImpl methodType = new FunctionTypeImpl(method); |
- methodType.typeArguments = typeArguments; |
- method.type = methodType; |
- return method; |
- } |
- |
- static ParameterElementImpl namedParameter(String name) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.NAMED; |
- return parameter; |
- } |
- |
- static ParameterElementImpl namedParameter2(String name, DartType type) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.NAMED; |
- parameter.type = type; |
- return parameter; |
- } |
- |
- static ParameterElementImpl positionalParameter(String name) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.POSITIONAL; |
- return parameter; |
- } |
- |
- static ParameterElementImpl positionalParameter2(String name, DartType type) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.POSITIONAL; |
- parameter.type = type; |
- return parameter; |
- } |
- |
- static PrefixElementImpl prefix(String name) => |
- new PrefixElementImpl(name, 0); |
- |
- static ParameterElementImpl requiredParameter(String name) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- return parameter; |
- } |
- |
- static ParameterElementImpl requiredParameter2(String name, DartType type) { |
- ParameterElementImpl parameter = new ParameterElementImpl(name, 0); |
- parameter.parameterKind = ParameterKind.REQUIRED; |
- parameter.type = type; |
- return parameter; |
- } |
- |
- static PropertyAccessorElementImpl setterElement( |
- String name, bool isStatic, DartType type) { |
- FieldElementImpl field = new FieldElementImpl(name, -1); |
- field.static = isStatic; |
- field.synthetic = true; |
- field.type = type; |
- PropertyAccessorElementImpl getter = |
- new PropertyAccessorElementImpl.forVariable(field); |
- getter.getter = true; |
- getter.variable = field; |
- getter.returnType = type; |
- field.getter = getter; |
- FunctionTypeImpl getterType = new FunctionTypeImpl(getter); |
- getter.type = getterType; |
- ParameterElementImpl parameter = requiredParameter2("a", type); |
- PropertyAccessorElementImpl setter = |
- new PropertyAccessorElementImpl.forVariable(field); |
- setter.setter = true; |
- setter.synthetic = true; |
- setter.variable = field; |
- setter.parameters = <ParameterElement>[parameter]; |
- setter.returnType = VoidTypeImpl.instance; |
- setter.type = new FunctionTypeImpl(setter); |
- field.setter = setter; |
- return setter; |
- } |
- |
- static TopLevelVariableElementImpl topLevelVariableElement(Identifier name) => |
- new TopLevelVariableElementImpl.forNode(name); |
- |
- static TopLevelVariableElementImpl topLevelVariableElement2(String name) => |
- topLevelVariableElement3(name, false, false, null); |
- |
- static TopLevelVariableElementImpl topLevelVariableElement3( |
- String name, bool isConst, bool isFinal, DartType type) { |
- TopLevelVariableElementImpl variable; |
- if (isConst) { |
- ConstTopLevelVariableElementImpl constant = |
- new ConstTopLevelVariableElementImpl(AstFactory.identifier3(name)); |
- constant.constantInitializer = AstFactory.instanceCreationExpression2( |
- Keyword.CONST, AstFactory.typeName(type.element)); |
- variable = constant; |
- } else { |
- variable = new TopLevelVariableElementImpl(name, -1); |
- } |
- variable.const3 = isConst; |
- variable.final2 = isFinal; |
- variable.synthetic = true; |
- PropertyAccessorElementImpl getter = |
- new PropertyAccessorElementImpl.forVariable(variable); |
- getter.getter = true; |
- getter.synthetic = true; |
- getter.variable = variable; |
- getter.returnType = type; |
- variable.getter = getter; |
- FunctionTypeImpl getterType = new FunctionTypeImpl(getter); |
- getter.type = getterType; |
- if (!isConst && !isFinal) { |
- PropertyAccessorElementImpl setter = |
- new PropertyAccessorElementImpl.forVariable(variable); |
- setter.setter = true; |
- setter.static = true; |
- setter.synthetic = true; |
- setter.variable = variable; |
- setter.parameters = |
- <ParameterElement>[requiredParameter2("_$name", type)]; |
- setter.returnType = VoidTypeImpl.instance; |
- setter.type = new FunctionTypeImpl(setter); |
- variable.setter = setter; |
- } |
- return variable; |
- } |
- |
- static TypeParameterElementImpl typeParameterElement(String name) { |
- TypeParameterElementImpl element = new TypeParameterElementImpl(name, 0); |
- element.type = new TypeParameterTypeImpl(element); |
- return element; |
- } |
-} |