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

Side by Side Diff: pkg/front_end/lib/src/fasta/kernel/kernel_target.dart

Issue 2965393002: Use FastaMessage instead of String. Part 1. (Closed)
Patch Set: Add type variable to Code. Created 3 years, 5 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 fasta.kernel_target; 5 library fasta.kernel_target;
6 6
7 import 'dart:async' show Future; 7 import 'dart:async' show Future;
8 8
9 import 'dart:io' show File; 9 import 'dart:io' show File;
10 10
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 import '../source/source_class_builder.dart' show SourceClassBuilder; 49 import '../source/source_class_builder.dart' show SourceClassBuilder;
50 50
51 import '../target_implementation.dart' show TargetImplementation; 51 import '../target_implementation.dart' show TargetImplementation;
52 52
53 import '../translate_uri.dart' show TranslateUri; 53 import '../translate_uri.dart' show TranslateUri;
54 54
55 import '../dill/dill_target.dart' show DillTarget; 55 import '../dill/dill_target.dart' show DillTarget;
56 56
57 import '../deprecated_problems.dart' 57 import '../deprecated_problems.dart'
58 show 58 show
59 deprecated_formatUnexpected,
59 deprecated_InputError, 60 deprecated_InputError,
60 deprecated_internalProblem, 61 deprecated_internalProblem,
61 reportCrash, 62 reportCrash,
62 resetCrashReporting; 63 resetCrashReporting;
63 64
65 import '../messages.dart' show LocatedMessage;
66
64 import '../util/relativize.dart' show relativizeUri; 67 import '../util/relativize.dart' show relativizeUri;
65 68
66 import '../compiler_context.dart' show CompilerContext; 69 import '../compiler_context.dart' show CompilerContext;
67 70
68 import 'kernel_builder.dart' 71 import 'kernel_builder.dart'
69 show 72 show
70 Builder, 73 Builder,
71 ClassBuilder, 74 ClassBuilder,
72 InvalidTypeBuilder, 75 InvalidTypeBuilder,
73 KernelClassBuilder, 76 KernelClassBuilder,
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 ticker.logMs("Wrote deps file"); 355 ticker.logMs("Wrote deps file");
353 } 356 }
354 357
355 /// Adds a synthetic field named `#errors` to the main library that contains 358 /// Adds a synthetic field named `#errors` to the main library that contains
356 /// [recoverableErrors] formatted. 359 /// [recoverableErrors] formatted.
357 /// 360 ///
358 /// If [recoverableErrors] is empty, this method does nothing. 361 /// If [recoverableErrors] is empty, this method does nothing.
359 /// 362 ///
360 /// If there's no main library, this method uses [erroneousProgram] to 363 /// If there's no main library, this method uses [erroneousProgram] to
361 /// replace [program]. 364 /// replace [program].
362 void handleRecoverableErrors(List<deprecated_InputError> recoverableErrors) { 365 void handleRecoverableErrors(List<LocatedMessage> recoverableErrors) {
363 if (recoverableErrors.isEmpty) return; 366 if (recoverableErrors.isEmpty) return;
364 KernelLibraryBuilder mainLibrary = loader.first; 367 KernelLibraryBuilder mainLibrary = loader.first;
365 if (mainLibrary == null) { 368 if (mainLibrary == null) {
366 program = erroneousProgram(true); 369 program = erroneousProgram(true);
367 return; 370 return;
368 } 371 }
369 List<Expression> expressions = <Expression>[]; 372 List<Expression> expressions = <Expression>[];
370 for (deprecated_InputError error in recoverableErrors) { 373 for (LocatedMessage error in recoverableErrors) {
371 String message = error.deprecated_format(); 374 String message = deprecated_formatUnexpected(
375 error.uri, error.charOffset, error.message);
372 errors.add(message); 376 errors.add(message);
373 expressions.add(new StringLiteral(message)); 377 expressions.add(new StringLiteral(message));
374 } 378 }
375 mainLibrary.library.addMember(new Field(new Name("#errors"), 379 mainLibrary.library.addMember(new Field(new Name("#errors"),
376 initializer: new ListLiteral(expressions, isConst: true), 380 initializer: new ListLiteral(expressions, isConst: true),
377 isConst: true)); 381 isConst: true));
378 } 382 }
379 383
380 Program erroneousProgram(bool isFullProgram) { 384 Program erroneousProgram(bool isFullProgram) {
381 Uri uri = loader.first?.uri ?? Uri.parse("error:error"); 385 Uri uri = loader.first?.uri ?? Uri.parse("error:error");
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 } 741 }
738 for (Constructor constructor in superclass.constructors) { 742 for (Constructor constructor in superclass.constructors) {
739 if (constructor.name.name.isEmpty) { 743 if (constructor.name.name.isEmpty) {
740 return constructor.function.requiredParameterCount == 0 744 return constructor.function.requiredParameterCount == 0
741 ? constructor 745 ? constructor
742 : null; 746 : null;
743 } 747 }
744 } 748 }
745 return null; 749 return null;
746 } 750 }
OLDNEW
« no previous file with comments | « pkg/front_end/lib/src/fasta/kernel/kernel_procedure_builder.dart ('k') | pkg/front_end/lib/src/fasta/loader.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698