| Index: pkg/analyzer/lib/src/summary/resynthesize.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/resynthesize.dart b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| index 33c3d48f7a88d65dd914923e49d77654354fa7df..4826d2c59cdca20e41d2f6f681827ddd246f99bc 100644
|
| --- a/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| +++ b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| @@ -2100,8 +2100,8 @@ class _UnitResynthesizer {
|
| List<ParameterElementImpl> parameters =
|
| new List<ParameterElementImpl>(length);
|
| for (int i = 0; i < length; i++) {
|
| - parameters[i] =
|
| - buildParameter(unlinkedParameters[i], executableElement);
|
| + parameters[i] = new ParameterElementImpl.forSerializedFactory(
|
| + unlinkedParameters[i], executableElement);
|
| }
|
| executableElement.parameters = parameters;
|
| }
|
| @@ -2238,58 +2238,6 @@ class _UnitResynthesizer {
|
| serializedLabel.isOnSwitchMember);
|
| }
|
|
|
| - /**
|
| - * Resynthesize a [ParameterElement].
|
| - */
|
| - ParameterElement buildParameter(
|
| - UnlinkedParam serializedParameter, ElementImpl enclosingElement,
|
| - {bool synthetic: false}) {
|
| - ParameterElementImpl parameterElement;
|
| - if (serializedParameter.isInitializingFormal) {
|
| - if (serializedParameter.kind == UnlinkedParamKind.required) {
|
| - parameterElement = new FieldFormalParameterElementImpl.forSerialized(
|
| - serializedParameter, enclosingElement);
|
| - } else {
|
| - parameterElement =
|
| - new DefaultFieldFormalParameterElementImpl.forSerialized(
|
| - serializedParameter, enclosingElement);
|
| - }
|
| - } else {
|
| - if (serializedParameter.kind == UnlinkedParamKind.required) {
|
| - parameterElement = new ParameterElementImpl.forSerialized(
|
| - serializedParameter, enclosingElement);
|
| - } else {
|
| - parameterElement = new DefaultParameterElementImpl.forSerialized(
|
| - serializedParameter, enclosingElement);
|
| - }
|
| - }
|
| - parameterElement.synthetic = synthetic;
|
| - if (serializedParameter.isFunctionTyped) {
|
| - FunctionElementImpl parameterTypeElement =
|
| - new FunctionElementImpl_forFunctionTypedParameter(
|
| - unit, parameterElement);
|
| - if (!synthetic) {
|
| - parameterTypeElement.enclosingElement = parameterElement;
|
| - }
|
| - List<ParameterElement> subParameters = serializedParameter.parameters
|
| - .map((UnlinkedParam p) =>
|
| - buildParameter(p, parameterTypeElement, synthetic: synthetic))
|
| - .toList();
|
| - if (synthetic) {
|
| - parameterTypeElement.parameters = subParameters;
|
| - } else {
|
| - parameterElement.parameters = subParameters;
|
| - parameterTypeElement.shareParameters(subParameters);
|
| - }
|
| - parameterTypeElement.returnType =
|
| - buildType(serializedParameter.type, _currentTypeParameterizedElement);
|
| - parameterElement.type = new FunctionTypeImpl.elementWithNameAndArgs(
|
| - parameterTypeElement, null, getCurrentTypeArguments(), false);
|
| - parameterTypeElement.type = parameterElement.type;
|
| - }
|
| - return parameterElement;
|
| - }
|
| -
|
| List<FunctionElementImpl> buildTopLevelFunctions() {
|
| List<FunctionElementImpl> functions = <FunctionElementImpl>[];
|
| List<UnlinkedExecutable> executables = unlinkedUnit.executables;
|
| @@ -2327,7 +2275,8 @@ class _UnitResynthesizer {
|
| new FunctionElementImpl_forLUB(unit, typeParameterContext);
|
| element.parameters = type.syntheticParams
|
| .map((UnlinkedParam param) =>
|
| - buildParameter(param, element, synthetic: true))
|
| + new ParameterElementImpl.forSerializedFactory(param, element,
|
| + synthetic: true))
|
| .toList();
|
| element.returnType =
|
| buildType(type.syntheticReturnType, typeParameterContext);
|
| @@ -2362,7 +2311,8 @@ class _UnitResynthesizer {
|
| // TODO(scheglov) remove this after delaying parameters and their types
|
| currentTypeParameters.add(functionTypeAliasElement.typeParameters);
|
| functionTypeAliasElement.parameters = serializedTypedef.parameters
|
| - .map((p) => buildParameter(p, functionTypeAliasElement))
|
| + .map((p) => new ParameterElementImpl.forSerializedFactory(
|
| + p, functionTypeAliasElement))
|
| .toList();
|
| unitHolder.addTypeAlias(functionTypeAliasElement);
|
| // TODO(scheglov) remove this after delaying parameters and their types
|
|
|