| 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 /// Data produced by dart2js when run with the `--dump-info` flag. | 5 /// Data produced by dart2js when run with the `--dump-info` flag. |
| 6 library dart2js_info.info; | 6 library dart2js_info.info; |
| 7 | 7 |
| 8 import 'dart:convert'; | 8 import 'dart:convert'; |
| 9 | 9 |
| 10 import 'src/measurements.dart'; | 10 import 'src/measurements.dart'; |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 /// Common information used for most kind of elements. | 45 /// Common information used for most kind of elements. |
| 46 // TODO(sigmund): add more: | 46 // TODO(sigmund): add more: |
| 47 // - inputSize: bytes used in the Dart source program | 47 // - inputSize: bytes used in the Dart source program |
| 48 abstract class BasicInfo implements Info { | 48 abstract class BasicInfo implements Info { |
| 49 final InfoKind kind; | 49 final InfoKind kind; |
| 50 final int id; | 50 final int id; |
| 51 String coverageId; | 51 String coverageId; |
| 52 int size; | 52 int size; |
| 53 Info parent; | 53 Info parent; |
| 54 | 54 |
| 55 String get serializedId => '${_kindToString(kind)}/$id'; | 55 String get serializedId => '${kindToString(kind)}/$id'; |
| 56 | 56 |
| 57 String name; | 57 String name; |
| 58 | 58 |
| 59 /// If using deferred libraries, where the element associated with this info | 59 /// If using deferred libraries, where the element associated with this info |
| 60 /// is generated. | 60 /// is generated. |
| 61 OutputUnitInfo outputUnit; | 61 OutputUnitInfo outputUnit; |
| 62 | 62 |
| 63 BasicInfo(this.kind, this.id, this.name, this.outputUnit, this.size, | 63 BasicInfo(this.kind, this.id, this.name, this.outputUnit, this.size, |
| 64 this.coverageId); | 64 this.coverageId); |
| 65 | 65 |
| (...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 412 enum InfoKind { | 412 enum InfoKind { |
| 413 library, | 413 library, |
| 414 clazz, | 414 clazz, |
| 415 function, | 415 function, |
| 416 field, | 416 field, |
| 417 constant, | 417 constant, |
| 418 outputUnit, | 418 outputUnit, |
| 419 typedef, | 419 typedef, |
| 420 } | 420 } |
| 421 | 421 |
| 422 String _kindToString(InfoKind kind) { | 422 String kindToString(InfoKind kind) { |
| 423 switch (kind) { | 423 switch (kind) { |
| 424 case InfoKind.library: | 424 case InfoKind.library: |
| 425 return 'library'; | 425 return 'library'; |
| 426 case InfoKind.clazz: | 426 case InfoKind.clazz: |
| 427 return 'class'; | 427 return 'class'; |
| 428 case InfoKind.function: | 428 case InfoKind.function: |
| 429 return 'function'; | 429 return 'function'; |
| 430 case InfoKind.field: | 430 case InfoKind.field: |
| 431 return 'field'; | 431 return 'field'; |
| 432 case InfoKind.constant: | 432 case InfoKind.constant: |
| 433 return 'constant'; | 433 return 'constant'; |
| 434 case InfoKind.outputUnit: | 434 case InfoKind.outputUnit: |
| 435 return 'outputUnit'; | 435 return 'outputUnit'; |
| 436 case InfoKind.typedef: | 436 case InfoKind.typedef: |
| 437 return 'typedef'; | 437 return 'typedef'; |
| 438 default: | 438 default: |
| 439 return null; | 439 return null; |
| 440 } | 440 } |
| 441 } | 441 } |
| 442 | 442 |
| 443 int _idFromSerializedId(String serializedId) => | 443 int _idFromSerializedId(String serializedId) => |
| 444 int.parse(serializedId.substring(serializedId.indexOf('/') + 1)); | 444 int.parse(serializedId.substring(serializedId.indexOf('/') + 1)); |
| 445 | 445 |
| 446 InfoKind _kindFromSerializedId(String serializedId) => | 446 InfoKind _kindFromSerializedId(String serializedId) => |
| 447 _kindFromString(serializedId.substring(0, serializedId.indexOf('/'))); | 447 kindFromString(serializedId.substring(0, serializedId.indexOf('/'))); |
| 448 | 448 |
| 449 InfoKind _kindFromString(String kind) { | 449 InfoKind kindFromString(String kind) { |
| 450 switch (kind) { | 450 switch (kind) { |
| 451 case 'library': | 451 case 'library': |
| 452 return InfoKind.library; | 452 return InfoKind.library; |
| 453 case 'class': | 453 case 'class': |
| 454 return InfoKind.clazz; | 454 return InfoKind.clazz; |
| 455 case 'function': | 455 case 'function': |
| 456 return InfoKind.function; | 456 return InfoKind.function; |
| 457 case 'field': | 457 case 'field': |
| 458 return InfoKind.field; | 458 return InfoKind.field; |
| 459 case 'constant': | 459 case 'constant': |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 514 | 514 |
| 515 visitConstant(ConstantInfo info) {} | 515 visitConstant(ConstantInfo info) {} |
| 516 | 516 |
| 517 visitFunction(FunctionInfo info) { | 517 visitFunction(FunctionInfo info) { |
| 518 info.closures.forEach(visitFunction); | 518 info.closures.forEach(visitFunction); |
| 519 } | 519 } |
| 520 | 520 |
| 521 visitTypedef(TypedefInfo info) {} | 521 visitTypedef(TypedefInfo info) {} |
| 522 visitOutput(OutputUnitInfo info) {} | 522 visitOutput(OutputUnitInfo info) {} |
| 523 } | 523 } |
| OLD | NEW |