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

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

Issue 2974933002: Remove deprecated_internalProblem. (Closed)
Patch Set: 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_field_builder; 5 library fasta.kernel_field_builder;
6 6
7 import 'package:front_end/src/fasta/kernel/body_builder.dart' show BodyBuilder;
8
9 import 'package:front_end/src/fasta/kernel/kernel_shadow_ast.dart'
10 show KernelField;
11
12 import 'package:front_end/src/fasta/parser/parser.dart' show Parser;
13
14 import 'package:front_end/src/scanner/token.dart' show Token;
15
16 import 'package:front_end/src/fasta/builder/class_builder.dart'
17 show ClassBuilder;
18
19 import 'package:front_end/src/fasta/source/source_library_builder.dart'
20 show SourceLibraryBuilder;
21
22 import 'package:front_end/src/fasta/type_inference/type_inference_listener.dart'
23 show TypeInferenceListener;
24
25 import 'package:kernel/ast.dart' 7 import 'package:kernel/ast.dart'
26 show DartType, Expression, Field, Name, NullLiteral; 8 show DartType, Expression, Field, Name, NullLiteral;
27 9
28 import '../deprecated_problems.dart' show deprecated_internalProblem; 10 import '../../scanner/token.dart' show Token;
11
12 import '../builder/class_builder.dart' show ClassBuilder;
13
14 import '../fasta_codes.dart' show messageInternalProblemAlreadyInitialized;
15
16 import '../parser/parser.dart' show Parser;
17
18 import '../problems.dart' show internalProblem;
19
20 import '../source/source_library_builder.dart' show SourceLibraryBuilder;
21
22 import '../type_inference/type_inference_listener.dart'
23 show TypeInferenceListener;
24
25 import 'body_builder.dart' show BodyBuilder;
29 26
30 import 'kernel_builder.dart' 27 import 'kernel_builder.dart'
31 show Builder, FieldBuilder, KernelTypeBuilder, MetadataBuilder; 28 show Builder, FieldBuilder, KernelTypeBuilder, MetadataBuilder;
32 29
30 import 'kernel_shadow_ast.dart' show KernelField;
31
33 class KernelFieldBuilder extends FieldBuilder<Expression> { 32 class KernelFieldBuilder extends FieldBuilder<Expression> {
34 final KernelField field; 33 final KernelField field;
35 final List<MetadataBuilder> metadata; 34 final List<MetadataBuilder> metadata;
36 final KernelTypeBuilder type; 35 final KernelTypeBuilder type;
37 final Token initializerTokenForInference; 36 final Token initializerTokenForInference;
38 final bool hasInitializer; 37 final bool hasInitializer;
39 38
40 KernelFieldBuilder( 39 KernelFieldBuilder(
41 this.metadata, 40 this.metadata,
42 this.type, 41 this.type,
43 String name, 42 String name,
44 int modifiers, 43 int modifiers,
45 Builder compilationUnit, 44 Builder compilationUnit,
46 int charOffset, 45 int charOffset,
47 this.initializerTokenForInference, 46 this.initializerTokenForInference,
48 this.hasInitializer) 47 this.hasInitializer)
49 : field = new KernelField(null, fileUri: compilationUnit?.relativeFileUri) 48 : field = new KernelField(null, fileUri: compilationUnit?.relativeFileUri)
50 ..fileOffset = charOffset, 49 ..fileOffset = charOffset,
51 super(name, modifiers, compilationUnit, charOffset); 50 super(name, modifiers, compilationUnit, charOffset);
52 51
53 void set initializer(Expression value) { 52 void set initializer(Expression value) {
54 if (!hasInitializer && value is! NullLiteral && !isConst && !isFinal) { 53 if (!hasInitializer && value is! NullLiteral && !isConst && !isFinal) {
55 deprecated_internalProblem( 54 internalProblem(
56 "Attempt to set initializer on field without initializer."); 55 messageInternalProblemAlreadyInitialized, charOffset, fileUri);
57 } 56 }
58 field.initializer = value..parent = field; 57 field.initializer = value..parent = field;
59 } 58 }
60 59
61 bool get isEligibleForInference => 60 bool get isEligibleForInference =>
62 type == null && (hasInitializer || isInstanceMember); 61 type == null && (hasInitializer || isInstanceMember);
63 62
64 Field build(SourceLibraryBuilder library) { 63 Field build(SourceLibraryBuilder library) {
65 field.name ??= new Name(name, library.target); 64 field.name ??= new Name(name, library.target);
66 if (type != null) { 65 if (type != null) {
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 } 110 }
112 } 111 }
113 } 112 }
114 113
115 @override 114 @override
116 DartType get builtType => field.type; 115 DartType get builtType => field.type;
117 116
118 @override 117 @override
119 bool get hasImplicitType => type == null; 118 bool get hasImplicitType => type == null;
120 } 119 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698