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

Side by Side Diff: pkg/analyzer/lib/src/summary/resynthesize.dart

Issue 1714113002: Add summary support for ParameterElement.defaultValueCode. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 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 unified diff | Download patch
« no previous file with comments | « pkg/analyzer/lib/src/summary/idl.dart ('k') | pkg/analyzer/lib/src/summary/summarize_ast.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library summary_resynthesizer; 5 library summary_resynthesizer;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 8
9 import 'package:analyzer/dart/ast/ast.dart'; 9 import 'package:analyzer/dart/ast/ast.dart';
10 import 'package:analyzer/dart/ast/token.dart'; 10 import 'package:analyzer/dart/ast/token.dart';
(...skipping 1633 matching lines...) Expand 10 before | Expand all | Expand 10 after
1644 initializingParameter = new FieldFormalParameterElementImpl( 1644 initializingParameter = new FieldFormalParameterElementImpl(
1645 serializedParameter.name, serializedParameter.nameOffset); 1645 serializedParameter.name, serializedParameter.nameOffset);
1646 } else { 1646 } else {
1647 DefaultFieldFormalParameterElementImpl defaultParameter = 1647 DefaultFieldFormalParameterElementImpl defaultParameter =
1648 new DefaultFieldFormalParameterElementImpl( 1648 new DefaultFieldFormalParameterElementImpl(
1649 serializedParameter.name, serializedParameter.nameOffset); 1649 serializedParameter.name, serializedParameter.nameOffset);
1650 initializingParameter = defaultParameter; 1650 initializingParameter = defaultParameter;
1651 if (serializedParameter.defaultValue != null) { 1651 if (serializedParameter.defaultValue != null) {
1652 defaultParameter.constantInitializer = 1652 defaultParameter.constantInitializer =
1653 _buildConstExpression(serializedParameter.defaultValue); 1653 _buildConstExpression(serializedParameter.defaultValue);
1654 defaultParameter.defaultValueCode =
1655 serializedParameter.defaultValueCode;
1654 } 1656 }
1655 } 1657 }
1656 parameterElement = initializingParameter; 1658 parameterElement = initializingParameter;
1657 initializingParameter.field = fields[serializedParameter.name]; 1659 initializingParameter.field = fields[serializedParameter.name];
1658 } else { 1660 } else {
1659 if (serializedParameter.kind == UnlinkedParamKind.required) { 1661 if (serializedParameter.kind == UnlinkedParamKind.required) {
1660 parameterElement = new ParameterElementImpl( 1662 parameterElement = new ParameterElementImpl(
1661 serializedParameter.name, serializedParameter.nameOffset); 1663 serializedParameter.name, serializedParameter.nameOffset);
1662 } else { 1664 } else {
1663 DefaultParameterElementImpl defaultParameter = 1665 DefaultParameterElementImpl defaultParameter =
1664 new DefaultParameterElementImpl( 1666 new DefaultParameterElementImpl(
1665 serializedParameter.name, serializedParameter.nameOffset); 1667 serializedParameter.name, serializedParameter.nameOffset);
1666 parameterElement = defaultParameter; 1668 parameterElement = defaultParameter;
1667 if (serializedParameter.defaultValue != null) { 1669 if (serializedParameter.defaultValue != null) {
1668 defaultParameter.constantInitializer = 1670 defaultParameter.constantInitializer =
1669 _buildConstExpression(serializedParameter.defaultValue); 1671 _buildConstExpression(serializedParameter.defaultValue);
1672 defaultParameter.defaultValueCode =
1673 serializedParameter.defaultValueCode;
1670 } 1674 }
1671 } 1675 }
1672 } 1676 }
1673 buildAnnotations(parameterElement, serializedParameter.annotations); 1677 buildAnnotations(parameterElement, serializedParameter.annotations);
1674 if (serializedParameter.isFunctionTyped) { 1678 if (serializedParameter.isFunctionTyped) {
1675 FunctionElementImpl parameterTypeElement = 1679 FunctionElementImpl parameterTypeElement =
1676 new FunctionElementImpl('', -1); 1680 new FunctionElementImpl('', -1);
1677 parameterTypeElement.synthetic = true; 1681 parameterTypeElement.synthetic = true;
1678 parameterElement.parameters = 1682 parameterElement.parameters =
1679 serializedParameter.parameters.map(buildParameter).toList(); 1683 serializedParameter.parameters.map(buildParameter).toList();
(...skipping 704 matching lines...) Expand 10 before | Expand all | Expand 10 after
2384 } 2388 }
2385 : () => this.element; 2389 : () => this.element;
2386 // TODO(paulberry): Is it a bug that we have to pass `false` for 2390 // TODO(paulberry): Is it a bug that we have to pass `false` for
2387 // isInstantiated? 2391 // isInstantiated?
2388 return new DeferredFunctionTypeImpl(computer, null, typeArguments, false); 2392 return new DeferredFunctionTypeImpl(computer, null, typeArguments, false);
2389 } else { 2393 } else {
2390 return null; 2394 return null;
2391 } 2395 }
2392 } 2396 }
2393 } 2397 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/summary/idl.dart ('k') | pkg/analyzer/lib/src/summary/summarize_ast.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698