OLD | NEW |
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.dill_class_builder; | 5 library fasta.dill_class_builder; |
6 | 6 |
7 import 'package:kernel/ast.dart' show Class, Member; | 7 import 'package:kernel/ast.dart' show Class, Member; |
8 | 8 |
9 import '../problems.dart' show unimplemented; | 9 import '../problems.dart' show unimplemented; |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 DillClassBuilder(Class cls, DillLibraryBuilder parent) | 23 DillClassBuilder(Class cls, DillLibraryBuilder parent) |
24 : cls = cls, | 24 : cls = cls, |
25 super( | 25 super( |
26 null, | 26 null, |
27 computeModifiers(cls), | 27 computeModifiers(cls), |
28 cls.name, | 28 cls.name, |
29 null, | 29 null, |
30 null, | 30 null, |
31 null, | 31 null, |
32 new Scope(<String, MemberBuilder>{}, <String, MemberBuilder>{}, | 32 new Scope(<String, MemberBuilder>{}, <String, MemberBuilder>{}, |
33 parent.scope, isModifiable: false), | 33 parent.scope, "class ${cls.name}", isModifiable: false), |
34 new Scope(<String, MemberBuilder>{}, null, null, | 34 new Scope(<String, MemberBuilder>{}, null, null, "constructors", |
35 isModifiable: false), | 35 isModifiable: false), |
36 parent, | 36 parent, |
37 cls.fileOffset); | 37 cls.fileOffset); |
38 | 38 |
39 void addMember(Member member) { | 39 void addMember(Member member) { |
40 DillMemberBuilder builder = new DillMemberBuilder(member, this); | 40 DillMemberBuilder builder = new DillMemberBuilder(member, this); |
41 String name = member.name.name; | 41 String name = member.name.name; |
42 if (builder.isConstructor || builder.isFactory) { | 42 if (builder.isConstructor || builder.isFactory) { |
43 constructorScopeBuilder.addMember(name, builder); | 43 constructorScopeBuilder.addMember(name, builder); |
44 } else if (builder.isSetter) { | 44 } else if (builder.isSetter) { |
(...skipping 10 matching lines...) Expand all Loading... |
55 KernelTypeBuilder get mixedInType => unimplemented("mixedInType", -1, null); | 55 KernelTypeBuilder get mixedInType => unimplemented("mixedInType", -1, null); |
56 | 56 |
57 void set mixedInType(KernelTypeBuilder mixin) { | 57 void set mixedInType(KernelTypeBuilder mixin) { |
58 unimplemented("mixedInType=", -1, null); | 58 unimplemented("mixedInType=", -1, null); |
59 } | 59 } |
60 } | 60 } |
61 | 61 |
62 int computeModifiers(Class cls) { | 62 int computeModifiers(Class cls) { |
63 return cls.isAbstract ? abstractMask : 0; | 63 return cls.isAbstract ? abstractMask : 0; |
64 } | 64 } |
OLD | NEW |