OLD | NEW |
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 serialization.elements; | 5 library serialization.elements; |
6 | 6 |
7 import 'package:analyzer/dart/element/element.dart'; | 7 import 'package:analyzer/dart/element/element.dart'; |
8 import 'package:analyzer/dart/element/type.dart'; | 8 import 'package:analyzer/dart/element/type.dart'; |
9 import 'package:analyzer/src/dart/element/element.dart'; | 9 import 'package:analyzer/src/dart/element/element.dart'; |
10 import 'package:analyzer/src/dart/element/type.dart'; | 10 import 'package:analyzer/src/dart/element/type.dart'; |
(...skipping 525 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
536 } | 536 } |
537 } else if (executableElement is ConstructorElementImpl) { | 537 } else if (executableElement is ConstructorElementImpl) { |
538 b.kind = UnlinkedExecutableKind.constructor; | 538 b.kind = UnlinkedExecutableKind.constructor; |
539 b.isConst = executableElement.isConst; | 539 b.isConst = executableElement.isConst; |
540 b.isFactory = executableElement.isFactory; | 540 b.isFactory = executableElement.isFactory; |
541 if (executableElement.redirectedConstructor != null) { | 541 if (executableElement.redirectedConstructor != null) { |
542 b.isRedirectedConstructor = true; | 542 b.isRedirectedConstructor = true; |
543 if (executableElement.isFactory) { | 543 if (executableElement.isFactory) { |
544 EntityRefBuilder typeRef = serializeTypeRef( | 544 EntityRefBuilder typeRef = serializeTypeRef( |
545 executableElement.redirectedConstructor.enclosingElement.type, | 545 executableElement.redirectedConstructor.enclosingElement.type, |
546 executableElement); | 546 executableElement.redirectedConstructor.enclosingElement); |
547 if (executableElement.redirectedConstructor.name.isNotEmpty) { | 547 if (executableElement.redirectedConstructor.name.isNotEmpty) { |
548 String name = executableElement.redirectedConstructor.name; | 548 String name = executableElement.redirectedConstructor.name; |
549 int typeId = typeRef.reference; | 549 int typeId = typeRef.reference; |
550 LinkedReference typeLinkedRef = linkedReferences[typeId]; | 550 LinkedReference typeLinkedRef = linkedReferences[typeId]; |
551 unlinkedReferences.add(new UnlinkedReferenceBuilder( | 551 unlinkedReferences.add(new UnlinkedReferenceBuilder( |
552 name: name, prefixReference: typeId)); | 552 name: name, prefixReference: typeId)); |
553 int refId = linkedReferences.length; | 553 int refId = linkedReferences.length; |
554 linkedReferences.add(new LinkedReferenceBuilder( | 554 linkedReferences.add(new LinkedReferenceBuilder( |
555 kind: ReferenceKind.constructor, unit: typeLinkedRef.unit)); | 555 kind: ReferenceKind.constructor, unit: typeLinkedRef.unit)); |
556 b.redirectedConstructor = new EntityRefBuilder( | 556 b.redirectedConstructor = new EntityRefBuilder( |
(...skipping 722 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1279 exportNames.add(new LinkedExportNameBuilder( | 1279 exportNames.add(new LinkedExportNameBuilder( |
1280 name: name, | 1280 name: name, |
1281 dependency: serializeDependency(dependentLibrary), | 1281 dependency: serializeDependency(dependentLibrary), |
1282 unit: unit, | 1282 unit: unit, |
1283 kind: kind)); | 1283 kind: kind)); |
1284 } | 1284 } |
1285 pb.exportNames = exportNames; | 1285 pb.exportNames = exportNames; |
1286 return pb; | 1286 return pb; |
1287 } | 1287 } |
1288 } | 1288 } |
OLD | NEW |