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_member_builder; | 5 library fasta.dill_member_builder; |
6 | 6 |
7 import 'package:kernel/ast.dart' show | 7 import 'package:kernel/ast.dart' show |
8 Constructor, | 8 Constructor, |
9 Field, | 9 Field, |
10 Member, | 10 Member, |
(...skipping 20 matching lines...) Expand all Loading... |
31 final Member member; | 31 final Member member; |
32 | 32 |
33 final Builder parent; | 33 final Builder parent; |
34 | 34 |
35 DillMemberBuilder(Member member, this.parent) | 35 DillMemberBuilder(Member member, this.parent) |
36 : modifiers = computeModifiers(member), | 36 : modifiers = computeModifiers(member), |
37 member = member; | 37 member = member; |
38 | 38 |
39 Member get target => member; | 39 Member get target => member; |
40 | 40 |
| 41 String get name => member.name.name; |
| 42 |
41 bool get isConstructor => member is Constructor; | 43 bool get isConstructor => member is Constructor; |
42 | 44 |
43 bool get isFactory { | 45 bool get isFactory { |
44 if (member is Procedure) { | 46 if (member is Procedure) { |
45 Procedure procedure = member; | 47 Procedure procedure = member; |
46 return procedure.kind == ProcedureKind.Factory; | 48 return procedure.kind == ProcedureKind.Factory; |
47 } else { | 49 } else { |
48 return false; | 50 return false; |
49 } | 51 } |
50 } | 52 } |
51 } | 53 } |
52 | 54 |
53 int computeModifiers(Member member) { | 55 int computeModifiers(Member member) { |
54 int modifier = member.isAbstract ? abstractMask : 0; | 56 int modifier = member.isAbstract ? abstractMask : 0; |
55 modifier |= member.isExternal ? externalMask : 0; | 57 modifier |= member.isExternal ? externalMask : 0; |
56 if (member is Field) { | 58 if (member is Field) { |
57 modifier |= member.isConst ? constMask : 0; | 59 modifier |= member.isConst ? constMask : 0; |
58 modifier |= member.isFinal ? finalMask : 0; | 60 modifier |= member.isFinal ? finalMask : 0; |
59 modifier |= member.isStatic ? staticMask : 0; | 61 modifier |= member.isStatic ? staticMask : 0; |
60 } else if (member is Procedure) { | 62 } else if (member is Procedure) { |
61 modifier |= member.isConst ? constMask : 0; | 63 modifier |= member.isConst ? constMask : 0; |
62 modifier |= member.isStatic ? staticMask : 0; | 64 modifier |= member.isStatic ? staticMask : 0; |
63 } else if (member is Constructor) { | 65 } else if (member is Constructor) { |
64 modifier |= member.isConst ? constMask : 0; | 66 modifier |= member.isConst ? constMask : 0; |
65 } else { | 67 } else { |
66 internalError("Unhandled: ${member.runtimeType}"); | 68 internalError("Unhandled: ${member.runtimeType}"); |
67 } | 69 } |
68 return modifier; | 70 return modifier; |
69 } | 71 } |
OLD | NEW |