| 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/member.dart'; | 10 import 'package:analyzer/src/dart/element/member.dart'; |
| (...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 597 b.annotations = serializeAnnotations(executableElement); | 597 b.annotations = serializeAnnotations(executableElement); |
| 598 if (executableElement is FunctionElement) { | 598 if (executableElement is FunctionElement) { |
| 599 SourceRange visibleRange = executableElement.visibleRange; | 599 SourceRange visibleRange = executableElement.visibleRange; |
| 600 if (visibleRange != null) { | 600 if (visibleRange != null) { |
| 601 b.visibleOffset = visibleRange.offset; | 601 b.visibleOffset = visibleRange.offset; |
| 602 b.visibleLength = visibleRange.length; | 602 b.visibleLength = visibleRange.length; |
| 603 } | 603 } |
| 604 } | 604 } |
| 605 b.localFunctions = | 605 b.localFunctions = |
| 606 executableElement.functions.map(serializeExecutable).toList(); | 606 executableElement.functions.map(serializeExecutable).toList(); |
| 607 b.localLabels = executableElement.labels.map(serializeLabel).toList(); |
| 607 b.localVariables = | 608 b.localVariables = |
| 608 executableElement.localVariables.map(serializeVariable).toList(); | 609 executableElement.localVariables.map(serializeVariable).toList(); |
| 609 return b; | 610 return b; |
| 610 } | 611 } |
| 611 | 612 |
| 612 /** | 613 /** |
| 613 * Serialize the given [exportElement] into an [UnlinkedExportNonPublic]. | 614 * Serialize the given [exportElement] into an [UnlinkedExportNonPublic]. |
| 614 */ | 615 */ |
| 615 UnlinkedExportNonPublicBuilder serializeExportNonPublic( | 616 UnlinkedExportNonPublicBuilder serializeExportNonPublic( |
| 616 ExportElement exportElement) { | 617 ExportElement exportElement) { |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 651 } else { | 652 } else { |
| 652 b.offset = importElement.nameOffset; | 653 b.offset = importElement.nameOffset; |
| 653 b.uri = importElement.uri; | 654 b.uri = importElement.uri; |
| 654 b.uriOffset = importElement.uriOffset; | 655 b.uriOffset = importElement.uriOffset; |
| 655 b.uriEnd = importElement.uriEnd; | 656 b.uriEnd = importElement.uriEnd; |
| 656 } | 657 } |
| 657 return b; | 658 return b; |
| 658 } | 659 } |
| 659 | 660 |
| 660 /** | 661 /** |
| 662 * Serialize the given [label], creating an [UnlinkedLabelBuilder]. |
| 663 */ |
| 664 UnlinkedLabelBuilder serializeLabel(LabelElementImpl label) { |
| 665 UnlinkedLabelBuilder b = new UnlinkedLabelBuilder(); |
| 666 b.name = label.name; |
| 667 b.nameOffset = label.nameOffset; |
| 668 b.isOnSwitchMember = label.isOnSwitchMember; |
| 669 b.isOnSwitchStatement = label.isOnSwitchStatement; |
| 670 return b; |
| 671 } |
| 672 |
| 673 /** |
| 661 * Serialize the given [parameter] into an [UnlinkedParam]. | 674 * Serialize the given [parameter] into an [UnlinkedParam]. |
| 662 */ | 675 */ |
| 663 UnlinkedParamBuilder serializeParam(ParameterElement parameter, | 676 UnlinkedParamBuilder serializeParam(ParameterElement parameter, |
| 664 [Element context]) { | 677 [Element context]) { |
| 665 context ??= parameter; | 678 context ??= parameter; |
| 666 UnlinkedParamBuilder b = new UnlinkedParamBuilder(); | 679 UnlinkedParamBuilder b = new UnlinkedParamBuilder(); |
| 667 b.name = parameter.name; | 680 b.name = parameter.name; |
| 668 b.nameOffset = parameter.nameOffset; | 681 b.nameOffset = parameter.nameOffset; |
| 669 switch (parameter.parameterKind) { | 682 switch (parameter.parameterKind) { |
| 670 case ParameterKind.REQUIRED: | 683 case ParameterKind.REQUIRED: |
| (...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1363 exportNames.add(new LinkedExportNameBuilder( | 1376 exportNames.add(new LinkedExportNameBuilder( |
| 1364 name: name, | 1377 name: name, |
| 1365 dependency: serializeDependency(dependentLibrary), | 1378 dependency: serializeDependency(dependentLibrary), |
| 1366 unit: unit, | 1379 unit: unit, |
| 1367 kind: kind)); | 1380 kind: kind)); |
| 1368 } | 1381 } |
| 1369 pb.exportNames = exportNames; | 1382 pb.exportNames = exportNames; |
| 1370 return pb; | 1383 return pb; |
| 1371 } | 1384 } |
| 1372 } | 1385 } |
| OLD | NEW |