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

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

Issue 2830313002: Split up TypeInferrer class. (Closed)
Patch Set: Created 3 years, 8 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:front_end/src/fasta/builder/ast_factory.dart' show AstFactory; 7 import 'package:front_end/src/fasta/builder/ast_factory.dart' show AstFactory;
8 8
9 import 'package:kernel/ast.dart' 9 import 'package:kernel/ast.dart'
10 show 10 show
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 /// final int index; 118 /// final int index;
119 /// const E(this.index); 119 /// const E(this.index);
120 /// static const E id0 = const E(0); 120 /// static const E id0 = const E(0);
121 /// ... 121 /// ...
122 /// static const E idn-1 = const E(n - 1); 122 /// static const E idn-1 = const E(n - 1);
123 /// static const List<E> values = const <E>[id0, ..., idn-1]; 123 /// static const List<E> values = const <E>[id0, ..., idn-1];
124 /// String toString() => { 0: ‘E.id0’, . . ., n-1: ‘E.idn-1’}[index] 124 /// String toString() => { 0: ‘E.id0’, . . ., n-1: ‘E.idn-1’}[index]
125 /// } 125 /// }
126 members["index"] = new KernelFieldBuilder( 126 members["index"] = new KernelFieldBuilder(
127 astFactory, 127 astFactory,
128 parent.loader.topLevelTypeInferrer, 128 parent.loader.typeInferenceEngine,
129 null, 129 null,
130 intType, 130 intType,
131 "index", 131 "index",
132 finalMask, 132 finalMask,
133 parent, 133 parent,
134 charOffset, 134 charOffset,
135 null); 135 null);
136 KernelConstructorBuilder constructorBuilder = new KernelConstructorBuilder( 136 KernelConstructorBuilder constructorBuilder = new KernelConstructorBuilder(
137 null, 137 null,
138 constMask, 138 constMask,
139 null, 139 null,
140 "", 140 "",
141 null, 141 null,
142 <FormalParameterBuilder>[ 142 <FormalParameterBuilder>[
143 new KernelFormalParameterBuilder( 143 new KernelFormalParameterBuilder(
144 null, 0, intType, "index", true, parent, charOffset) 144 null, 0, intType, "index", true, parent, charOffset)
145 ], 145 ],
146 parent, 146 parent,
147 charOffset, 147 charOffset,
148 charOffset, 148 charOffset,
149 charEndOffset); 149 charEndOffset);
150 constructors[""] = constructorBuilder; 150 constructors[""] = constructorBuilder;
151 int index = 0; 151 int index = 0;
152 List<MapEntry> toStringEntries = <MapEntry>[]; 152 List<MapEntry> toStringEntries = <MapEntry>[];
153 KernelFieldBuilder valuesBuilder = new KernelFieldBuilder( 153 KernelFieldBuilder valuesBuilder = new KernelFieldBuilder(
154 astFactory, 154 astFactory,
155 parent.loader.topLevelTypeInferrer, 155 parent.loader.typeInferenceEngine,
156 null, 156 null,
157 listType, 157 listType,
158 "values", 158 "values",
159 constMask | staticMask, 159 constMask | staticMask,
160 parent, 160 parent,
161 charOffset, 161 charOffset,
162 null); 162 null);
163 members["values"] = valuesBuilder; 163 members["values"] = valuesBuilder;
164 KernelProcedureBuilder toStringBuilder = new KernelProcedureBuilder( 164 KernelProcedureBuilder toStringBuilder = new KernelProcedureBuilder(
165 null, 165 null,
(...skipping 12 matching lines...) Expand all
178 String className = name; 178 String className = name;
179 for (int i = 0; i < constantNamesAndOffsets.length; i += 2) { 179 for (int i = 0; i < constantNamesAndOffsets.length; i += 2) {
180 String name = constantNamesAndOffsets[i]; 180 String name = constantNamesAndOffsets[i];
181 int charOffset = constantNamesAndOffsets[i + 1]; 181 int charOffset = constantNamesAndOffsets[i + 1];
182 if (members.containsKey(name)) { 182 if (members.containsKey(name)) {
183 inputError(null, null, "Duplicated name: $name"); 183 inputError(null, null, "Duplicated name: $name");
184 continue; 184 continue;
185 } 185 }
186 KernelFieldBuilder fieldBuilder = new KernelFieldBuilder( 186 KernelFieldBuilder fieldBuilder = new KernelFieldBuilder(
187 astFactory, 187 astFactory,
188 parent.loader.topLevelTypeInferrer, 188 parent.loader.typeInferenceEngine,
189 null, 189 null,
190 selfType, 190 selfType,
191 name, 191 name,
192 constMask | staticMask, 192 constMask | staticMask,
193 parent, 193 parent,
194 charOffset, 194 charOffset,
195 null); 195 null);
196 members[name] = fieldBuilder; 196 members[name] = fieldBuilder;
197 toStringEntries.add(new MapEntry( 197 toStringEntries.add(new MapEntry(
198 new IntLiteral(index), new StringLiteral("$className.$name"))); 198 new IntLiteral(index), new StringLiteral("$className.$name")));
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 new ConstructorInvocation(constructor, arguments, isConst: true); 295 new ConstructorInvocation(constructor, arguments, isConst: true);
296 } 296 }
297 return super.build(libraryBuilder, coreLibrary); 297 return super.build(libraryBuilder, coreLibrary);
298 } 298 }
299 299
300 @override 300 @override
301 Builder findConstructorOrFactory(String name, int charOffset, Uri uri) { 301 Builder findConstructorOrFactory(String name, int charOffset, Uri uri) {
302 return null; 302 return null;
303 } 303 }
304 } 304 }
OLDNEW
« no previous file with comments | « pkg/front_end/lib/src/fasta/kernel/body_builder.dart ('k') | pkg/front_end/lib/src/fasta/kernel/kernel_field_builder.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698