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

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

Issue 2862223002: Rewrite mixin application handling in Fasta. (Closed)
Patch Set: Created 3 years, 7 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.source_class_builder; 5 library fasta.source_class_builder;
6 6
7 import 'package:kernel/ast.dart' 7 import 'package:kernel/ast.dart'
8 show Class, Constructor, Supertype, TreeNode, setParents; 8 show Class, Constructor, Supertype, TreeNode, setParents;
9 9
10 import '../errors.dart' show internalError; 10 import '../errors.dart' show internalError;
(...skipping 26 matching lines...) Expand all
37 cls.fileOffset = charOffset; 37 cls.fileOffset = charOffset;
38 } 38 }
39 return cls; 39 return cls;
40 } 40 }
41 41
42 class SourceClassBuilder extends KernelClassBuilder { 42 class SourceClassBuilder extends KernelClassBuilder {
43 final Class cls; 43 final Class cls;
44 44
45 final List<ConstructorReferenceBuilder> constructorReferences; 45 final List<ConstructorReferenceBuilder> constructorReferences;
46 46
47 final KernelTypeBuilder mixedInType; 47 KernelTypeBuilder mixedInType;
48 48
49 SourceClassBuilder( 49 SourceClassBuilder(
50 List<MetadataBuilder> metadata, 50 List<MetadataBuilder> metadata,
51 int modifiers, 51 int modifiers,
52 String name, 52 String name,
53 List<TypeVariableBuilder> typeVariables, 53 List<TypeVariableBuilder> typeVariables,
54 KernelTypeBuilder supertype, 54 KernelTypeBuilder supertype,
55 List<KernelTypeBuilder> interfaces, 55 List<KernelTypeBuilder> interfaces,
56 Scope scope, 56 Scope scope,
57 Scope constructors, 57 Scope constructors,
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 142
143 void addSyntheticConstructor(Constructor constructor) { 143 void addSyntheticConstructor(Constructor constructor) {
144 String name = constructor.name.name; 144 String name = constructor.name.name;
145 cls.constructors.add(constructor); 145 cls.constructors.add(constructor);
146 constructor.parent = cls; 146 constructor.parent = cls;
147 DillMemberBuilder memberBuilder = new DillMemberBuilder(constructor, this); 147 DillMemberBuilder memberBuilder = new DillMemberBuilder(constructor, this);
148 memberBuilder.next = constructorScopeBuilder[name]; 148 memberBuilder.next = constructorScopeBuilder[name];
149 constructorScopeBuilder.addMember(name, memberBuilder); 149 constructorScopeBuilder.addMember(name, memberBuilder);
150 } 150 }
151 } 151 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698