| OLD | NEW |
| 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, 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 dart2js.kernel.env; | 5 library dart2js.kernel.env; |
| 6 | 6 |
| 7 import 'package:kernel/ast.dart' as ir; | 7 import 'package:kernel/ast.dart' as ir; |
| 8 import 'package:kernel/clone.dart'; | 8 import 'package:kernel/clone.dart'; |
| 9 import 'package:kernel/type_algebra.dart'; | 9 import 'package:kernel/type_algebra.dart'; |
| 10 | 10 |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 void forEachClass(void f(ClassEnv cls)) { | 101 void forEachClass(void f(ClassEnv cls)) { |
| 102 _ensureClassMap(); | 102 _ensureClassMap(); |
| 103 _classMap.values.forEach(f); | 103 _classMap.values.forEach(f); |
| 104 } | 104 } |
| 105 | 105 |
| 106 void _ensureMemberMaps() { | 106 void _ensureMemberMaps() { |
| 107 if (_memberMap == null) { | 107 if (_memberMap == null) { |
| 108 _memberMap = <String, ir.Member>{}; | 108 _memberMap = <String, ir.Member>{}; |
| 109 _setterMap = <String, ir.Member>{}; | 109 _setterMap = <String, ir.Member>{}; |
| 110 for (ir.Member member in library.members) { | 110 for (ir.Member member in library.members) { |
| 111 if (member.name.name.contains('#')) { |
| 112 // Skip synthetic .dill members. |
| 113 continue; |
| 114 } |
| 111 if (member is ir.Procedure) { | 115 if (member is ir.Procedure) { |
| 112 if (member.kind == ir.ProcedureKind.Setter) { | 116 if (member.kind == ir.ProcedureKind.Setter) { |
| 113 _setterMap[member.name.name] = member; | 117 _setterMap[member.name.name] = member; |
| 114 } else { | 118 } else { |
| 115 _memberMap[member.name.name] = member; | 119 _memberMap[member.name.name] = member; |
| 116 } | 120 } |
| 117 } else if (member is ir.Field) { | 121 } else if (member is ir.Field) { |
| 118 _memberMap[member.name.name] = member; | 122 _memberMap[member.name.name] = member; |
| 119 if (member.isMutable) { | 123 if (member.isMutable) { |
| 120 _setterMap[member.name.name] = member; | 124 _setterMap[member.name.name] = member; |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 } | 212 } |
| 209 | 213 |
| 210 void _ensureMaps() { | 214 void _ensureMaps() { |
| 211 if (_memberMap == null) { | 215 if (_memberMap == null) { |
| 212 _memberMap = <String, ir.Member>{}; | 216 _memberMap = <String, ir.Member>{}; |
| 213 _setterMap = <String, ir.Member>{}; | 217 _setterMap = <String, ir.Member>{}; |
| 214 _constructorMap = <String, ir.Member>{}; | 218 _constructorMap = <String, ir.Member>{}; |
| 215 | 219 |
| 216 void addMembers(ir.Class c, {bool includeStatic}) { | 220 void addMembers(ir.Class c, {bool includeStatic}) { |
| 217 for (ir.Member member in c.members) { | 221 for (ir.Member member in c.members) { |
| 222 if (member.name.name.contains('#')) { |
| 223 // Skip synthetic .dill members. |
| 224 continue; |
| 225 } |
| 218 if (member is ir.Constructor || | 226 if (member is ir.Constructor || |
| 219 member is ir.Procedure && | 227 member is ir.Procedure && |
| 220 member.kind == ir.ProcedureKind.Factory) { | 228 member.kind == ir.ProcedureKind.Factory) { |
| 221 if (!includeStatic) continue; | 229 if (!includeStatic) continue; |
| 222 _constructorMap[member.name.name] = member; | 230 _constructorMap[member.name.name] = member; |
| 223 } else if (member is ir.Procedure) { | 231 } else if (member is ir.Procedure) { |
| 224 if (!includeStatic && member.isStatic) continue; | 232 if (!includeStatic && member.isStatic) continue; |
| 225 if (member.kind == ir.ProcedureKind.Setter) { | 233 if (member.kind == ir.ProcedureKind.Setter) { |
| 226 _setterMap[member.name.name] = member; | 234 _setterMap[member.name.name] = member; |
| 227 } else { | 235 } else { |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 430 } | 438 } |
| 431 } | 439 } |
| 432 return _constant; | 440 return _constant; |
| 433 } | 441 } |
| 434 | 442 |
| 435 @override | 443 @override |
| 436 FieldData copy() { | 444 FieldData copy() { |
| 437 return new FieldData(node); | 445 return new FieldData(node); |
| 438 } | 446 } |
| 439 } | 447 } |
| OLD | NEW |