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

Side by Side Diff: pkg/front_end/lib/src/fasta/source/outline_builder.dart

Issue 2677483003: Pop named mixin type variables in correct order. (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
« no previous file with comments | « no previous file | pkg/front_end/test/fasta/compile.status » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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.outline_builder; 5 library fasta.outline_builder;
6 6
7 import 'package:kernel/ast.dart' show 7 import 'package:kernel/ast.dart' show
8 AsyncMarker, 8 AsyncMarker,
9 ProcedureKind; 9 ProcedureKind;
10 10
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 void beginNamedMixinApplication(Token token) { 260 void beginNamedMixinApplication(Token token) {
261 library.beginNestedScope(); 261 library.beginNestedScope();
262 } 262 }
263 263
264 @override 264 @override
265 void endNamedMixinApplication( 265 void endNamedMixinApplication(
266 Token classKeyword, Token implementsKeyword, Token endToken) { 266 Token classKeyword, Token implementsKeyword, Token endToken) {
267 debugEvent("endNamedMixinApplication"); 267 debugEvent("endNamedMixinApplication");
268 List<TypeBuilder> interfaces = popIfNotNull(implementsKeyword); 268 List<TypeBuilder> interfaces = popIfNotNull(implementsKeyword);
269 TypeBuilder mixinApplication = pop(); 269 TypeBuilder mixinApplication = pop();
270 int modifiers = Modifier.validate(pop());
271 List<TypeVariableBuilder> typeVariables = pop(); 270 List<TypeVariableBuilder> typeVariables = pop();
272 String name = pop(); 271 String name = pop();
272 int modifiers = Modifier.validate(pop());
273 List<MetadataBuilder> metadata = pop(); 273 List<MetadataBuilder> metadata = pop();
274 library.addNamedMixinApplication( 274 library.addNamedMixinApplication(
275 metadata, name, typeVariables, modifiers, mixinApplication, interfaces); 275 metadata, name, typeVariables, modifiers, mixinApplication, interfaces);
276 checkEmpty(); 276 checkEmpty();
277 } 277 }
278 278
279 @override 279 @override
280 void endTypeArguments(int count, Token beginToken, Token endToken) { 280 void endTypeArguments(int count, Token beginToken, Token endToken) {
281 debugEvent("TypeArguments"); 281 debugEvent("TypeArguments");
282 push(popList(count) ?? NullValue.TypeArguments); 282 push(popList(count) ?? NullValue.TypeArguments);
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
522 void handleModifiers(int count) { 522 void handleModifiers(int count) {
523 debugEvent("Modifiers"); 523 debugEvent("Modifiers");
524 push(popList(count) ?? NullValue.Modifiers); 524 push(popList(count) ?? NullValue.Modifiers);
525 } 525 }
526 526
527 @override 527 @override
528 void debugEvent(String name) { 528 void debugEvent(String name) {
529 // printEvent(name); 529 // printEvent(name);
530 } 530 }
531 } 531 }
OLDNEW
« no previous file with comments | « no previous file | pkg/front_end/test/fasta/compile.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698