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

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

Issue 2682993002: Pay some naming debt. (Closed)
Patch Set: Created 3 years, 10 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_enum_builder; 5 library fasta.kernel_enum_builder;
6 6
7 import 'package:kernel/ast.dart' show 7 import 'package:kernel/ast.dart' show
8 Arguments, 8 Arguments,
9 AsyncMarker, 9 AsyncMarker,
10 Class, 10 Class,
(...skipping 28 matching lines...) Expand all
39 import "../source/source_class_builder.dart" show 39 import "../source/source_class_builder.dart" show
40 SourceClassBuilder; 40 SourceClassBuilder;
41 41
42 import 'kernel_builder.dart' show 42 import 'kernel_builder.dart' show
43 Builder, 43 Builder,
44 EnumBuilder, 44 EnumBuilder,
45 FormalParameterBuilder, 45 FormalParameterBuilder,
46 KernelConstructorBuilder, 46 KernelConstructorBuilder,
47 KernelFieldBuilder, 47 KernelFieldBuilder,
48 KernelFormalParameterBuilder, 48 KernelFormalParameterBuilder,
49 KernelInterfaceTypeBuilder,
50 KernelLibraryBuilder, 49 KernelLibraryBuilder,
50 KernelNamedTypeBuilder,
51 KernelProcedureBuilder, 51 KernelProcedureBuilder,
52 KernelTypeBuilder, 52 KernelTypeBuilder,
53 LibraryBuilder, 53 LibraryBuilder,
54 MemberBuilder, 54 MemberBuilder,
55 MetadataBuilder; 55 MetadataBuilder;
56 56
57 class KernelEnumBuilder extends SourceClassBuilder 57 class KernelEnumBuilder extends SourceClassBuilder
58 implements EnumBuilder<KernelTypeBuilder, InterfaceType> { 58 implements EnumBuilder<KernelTypeBuilder, InterfaceType> {
59 final List<String> constants; 59 final List<String> constants;
60 60
61 final MapLiteral toStringMap; 61 final MapLiteral toStringMap;
62 62
63 final KernelTypeBuilder intType; 63 final KernelTypeBuilder intType;
64 64
65 final KernelTypeBuilder stringType; 65 final KernelTypeBuilder stringType;
66 66
67 KernelEnumBuilder.internal(List<MetadataBuilder> metadata, String name, 67 KernelEnumBuilder.internal(List<MetadataBuilder> metadata, String name,
68 Map<String, Builder> members, List<KernelTypeBuilder> types, Class cls, 68 Map<String, Builder> members, List<KernelTypeBuilder> types, Class cls,
69 this.constants, this.toStringMap, this.intType, this.stringType, 69 this.constants, this.toStringMap, this.intType, this.stringType,
70 LibraryBuilder parent) 70 LibraryBuilder parent)
71 : super(metadata, 0, name, null, null, null, members, types, parent, null, 71 : super(metadata, 0, name, null, null, null, members, types, parent, null,
72 cls); 72 cls);
73 73
74 factory KernelEnumBuilder(List<MetadataBuilder> metadata, String name, 74 factory KernelEnumBuilder(List<MetadataBuilder> metadata, String name,
75 List<String> constants, LibraryBuilder parent) { 75 List<String> constants, LibraryBuilder parent) {
76 constants ??= const <String>[]; 76 constants ??= const <String>[];
77 // TODO(ahe): These types shouldn't be looked up in scope, they come 77 // TODO(ahe): These types shouldn't be looked up in scope, they come
78 // directly from dart:core. 78 // directly from dart:core.
79 KernelTypeBuilder objectType = 79 KernelTypeBuilder objectType =
80 new KernelInterfaceTypeBuilder("Object", null); 80 new KernelNamedTypeBuilder("Object", null);
81 KernelTypeBuilder intType = 81 KernelTypeBuilder intType =
82 new KernelInterfaceTypeBuilder("int", null); 82 new KernelNamedTypeBuilder("int", null);
83 KernelTypeBuilder stringType = 83 KernelTypeBuilder stringType =
84 new KernelInterfaceTypeBuilder("String", null); 84 new KernelNamedTypeBuilder("String", null);
85 List<KernelTypeBuilder> types = <KernelTypeBuilder>[ 85 List<KernelTypeBuilder> types = <KernelTypeBuilder>[
86 objectType, 86 objectType,
87 intType, 87 intType,
88 stringType]; 88 stringType];
89 Class cls = new Class(name: name); 89 Class cls = new Class(name: name);
90 Map<String, Builder> members = <String, Builder>{}; 90 Map<String, Builder> members = <String, Builder>{};
91 KernelInterfaceTypeBuilder selfType = new KernelInterfaceTypeBuilder( 91 KernelNamedTypeBuilder selfType = new KernelNamedTypeBuilder(
92 name, null); 92 name, null);
93 KernelTypeBuilder listType = 93 KernelTypeBuilder listType =
94 new KernelInterfaceTypeBuilder("List", <KernelTypeBuilder>[selfType]); 94 new KernelNamedTypeBuilder("List", <KernelTypeBuilder>[selfType]);
95 types.add(listType); 95 types.add(listType);
96 96
97 /// From Dart Programming Language Specification 4th Edition/December 2015: 97 /// From Dart Programming Language Specification 4th Edition/December 2015:
98 /// metadata class E { 98 /// metadata class E {
99 /// final int index; 99 /// final int index;
100 /// const E(this.index); 100 /// const E(this.index);
101 /// static const E id0 = const E(0); 101 /// static const E id0 = const E(0);
102 /// ... 102 /// ...
103 /// static const E idn-1 = const E(n - 1); 103 /// static const E idn-1 = const E(n - 1);
104 /// static const List<E> values = const <E>[id0, ..., idn-1]; 104 /// static const List<E> values = const <E>[id0, ..., idn-1];
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 Arguments arguments = 182 Arguments arguments =
183 new Arguments(<Expression>[new IntLiteral(index++)]); 183 new Arguments(<Expression>[new IntLiteral(index++)]);
184 field.initializer = 184 field.initializer =
185 new ConstructorInvocation(constructor, arguments, isConst: true); 185 new ConstructorInvocation(constructor, arguments, isConst: true);
186 } 186 }
187 return super.build(libraryBuilder); 187 return super.build(libraryBuilder);
188 } 188 }
189 189
190 Builder findConstructorOrFactory(String name) => null; 190 Builder findConstructorOrFactory(String name) => null;
191 } 191 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698