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

Side by Side Diff: pkg/compiler/lib/src/serialization/system.dart

Issue 2088233003: Serialize erroneous element and more (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Updated cf. comments. Created 4 years, 6 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
OLDNEW
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 import '../commandline_options.dart'; 8 import '../commandline_options.dart';
9 import '../common.dart'; 9 import '../common.dart';
10 import '../common/backend_api.dart'; 10 import '../common/backend_api.dart';
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 class ResolvedAstSerializerPlugin extends SerializerPlugin { 210 class ResolvedAstSerializerPlugin extends SerializerPlugin {
211 final Resolution resolution; 211 final Resolution resolution;
212 final SerializerPlugin nativeDataSerializer; 212 final SerializerPlugin nativeDataSerializer;
213 213
214 ResolvedAstSerializerPlugin(this.resolution, this.nativeDataSerializer); 214 ResolvedAstSerializerPlugin(this.resolution, this.nativeDataSerializer);
215 215
216 @override 216 @override
217 void onElement(Element element, ObjectEncoder createEncoder(String tag)) { 217 void onElement(Element element, ObjectEncoder createEncoder(String tag)) {
218 assert(invariant(element, element.isDeclaration, 218 assert(invariant(element, element.isDeclaration,
219 message: "Element $element must be the declaration")); 219 message: "Element $element must be the declaration"));
220 if (element.isError) return;
220 if (element is MemberElement) { 221 if (element is MemberElement) {
221 assert(invariant(element, resolution.hasResolvedAst(element), 222 assert(invariant(element, resolution.hasResolvedAst(element),
222 message: "Element $element must have a resolved ast")); 223 message: "Element $element must have a resolved ast"));
223 ResolvedAst resolvedAst = resolution.getResolvedAst(element); 224 ResolvedAst resolvedAst = resolution.getResolvedAst(element);
224 ObjectEncoder objectEncoder = createEncoder(RESOLVED_AST_TAG); 225 ObjectEncoder objectEncoder = createEncoder(RESOLVED_AST_TAG);
225 new ResolvedAstSerializer( 226 new ResolvedAstSerializer(
226 objectEncoder, resolvedAst, nativeDataSerializer) 227 objectEncoder, resolvedAst, nativeDataSerializer)
227 .serialize(); 228 .serialize();
228 } 229 }
229 } 230 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 } 278 }
278 279
279 @override 280 @override
280 void onElement(Element element, ObjectDecoder getDecoder(String tag)) { 281 void onElement(Element element, ObjectDecoder getDecoder(String tag)) {
281 ObjectDecoder decoder = getDecoder(RESOLVED_AST_TAG); 282 ObjectDecoder decoder = getDecoder(RESOLVED_AST_TAG);
282 if (decoder != null) { 283 if (decoder != null) {
283 _decoderMap[element] = decoder; 284 _decoderMap[element] = decoder;
284 } 285 }
285 } 286 }
286 } 287 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/serialization/resolved_ast_serialization.dart ('k') | tests/compiler/dart2js/serialization/helper.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698