OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 dart2js.serialization_system; | 5 library dart2js.serialization_system; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 | 8 |
9 import '../common.dart'; | 9 import '../common.dart'; |
10 import '../common/resolution.dart'; | 10 import '../common/resolution.dart'; |
11 import '../compiler.dart'; | 11 import '../compiler.dart'; |
12 import '../elements/resolution_types.dart'; | 12 import '../elements/resolution_types.dart'; |
13 import '../elements/elements.dart'; | 13 import '../elements/elements.dart'; |
| 14 import '../elements/entities.dart'; |
14 import '../script.dart'; | 15 import '../script.dart'; |
15 import '../serialization/impact_serialization.dart'; | 16 import '../serialization/impact_serialization.dart'; |
16 import 'package:front_end/src/fasta/scanner.dart'; | 17 import 'package:front_end/src/fasta/scanner.dart'; |
17 import '../universe/call_structure.dart'; | 18 import '../universe/call_structure.dart'; |
18 import '../universe/use.dart'; | 19 import '../universe/use.dart'; |
19 import '../universe/world_impact.dart'; | 20 import '../universe/world_impact.dart'; |
20 import 'modelz.dart'; | 21 import 'modelz.dart'; |
21 import 'resolved_ast_serialization.dart'; | 22 import 'resolved_ast_serialization.dart'; |
22 import 'serialization.dart'; | 23 import 'serialization.dart'; |
23 import 'task.dart'; | 24 import 'task.dart'; |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 // `Feature.LAZY_FIELD` of the resolution impact should be used | 102 // `Feature.LAZY_FIELD` of the resolution impact should be used |
102 // instead. | 103 // instead. |
103 _compiler.backend.constants.registerLazyStatic(field); | 104 _compiler.backend.constants.registerLazyStatic(field); |
104 } | 105 } |
105 } | 106 } |
106 } | 107 } |
107 return resolution.transformResolutionImpact(element, resolutionImpact); | 108 return resolution.transformResolutionImpact(element, resolutionImpact); |
108 } | 109 } |
109 | 110 |
110 @override | 111 @override |
111 bool isDeserialized(Element element) { | 112 bool isDeserialized(Entity entity) { |
| 113 Element element = entity; |
112 return deserializedLibraries.contains(element.library); | 114 return deserializedLibraries.contains(element.library); |
113 } | 115 } |
114 } | 116 } |
115 | 117 |
116 class CompilationDeserializerSystem extends ResolutionDeserializerSystem { | 118 class CompilationDeserializerSystem extends ResolutionDeserializerSystem { |
117 final ResolutionImpactDeserializer _resolutionImpactDeserializer; | 119 final ResolutionImpactDeserializer _resolutionImpactDeserializer; |
118 final ResolvedAstDeserializerPlugin _resolvedAstDeserializer; | 120 final ResolvedAstDeserializerPlugin _resolvedAstDeserializer; |
119 | 121 |
120 CompilationDeserializerSystem._( | 122 CompilationDeserializerSystem._( |
121 Compiler compiler, | 123 Compiler compiler, |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
324 } | 326 } |
325 | 327 |
326 @override | 328 @override |
327 void onElement(Element element, ObjectDecoder getDecoder(String tag)) { | 329 void onElement(Element element, ObjectDecoder getDecoder(String tag)) { |
328 ObjectDecoder decoder = getDecoder(RESOLVED_AST_TAG); | 330 ObjectDecoder decoder = getDecoder(RESOLVED_AST_TAG); |
329 if (decoder != null) { | 331 if (decoder != null) { |
330 _decoderMap[element] = decoder; | 332 _decoderMap[element] = decoder; |
331 } | 333 } |
332 } | 334 } |
333 } | 335 } |
OLD | NEW |