OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 js_backend.namer; | 5 library js_backend.namer; |
6 | 6 |
7 import 'dart:collection' show HashMap; | 7 import 'dart:collection' show HashMap; |
8 | 8 |
9 import 'package:js_runtime/shared/embedded_names.dart' show JsGetName; | 9 import 'package:js_runtime/shared/embedded_names.dart' show JsGetName; |
10 | 10 |
11 import '../closure.dart'; | 11 import '../closure.dart'; |
12 import '../common.dart'; | 12 import '../common.dart'; |
13 import '../common/names.dart' show Identifiers, Selectors; | 13 import '../common/names.dart' show Identifiers, Selectors; |
14 import '../constants/values.dart'; | 14 import '../constants/values.dart'; |
15 import '../common_elements.dart' show CommonElements; | 15 import '../common_elements.dart' show CommonElements; |
16 import '../diagnostics/invariant.dart' show DEBUG_MODE; | 16 import '../diagnostics/invariant.dart' show DEBUG_MODE; |
17 import '../elements/elements.dart' | 17 import '../elements/elements.dart' |
18 show | 18 show |
19 ClassElement, | 19 ClassElement, |
20 Element, | 20 Element, |
21 Elements, | 21 Elements, |
22 FieldElement, | 22 FieldElement, |
23 MemberElement, | 23 MemberElement, |
24 MixinApplicationElement, | 24 MixinApplicationElement; |
25 TypedefElement; | |
26 import '../elements/entities.dart'; | 25 import '../elements/entities.dart'; |
27 import '../elements/entity_utils.dart' as utils; | 26 import '../elements/entity_utils.dart' as utils; |
28 import '../elements/jumps.dart'; | 27 import '../elements/jumps.dart'; |
29 import '../elements/names.dart'; | 28 import '../elements/names.dart'; |
30 import '../elements/resolution_types.dart'; | 29 import '../elements/resolution_types.dart'; |
31 import '../elements/types.dart'; | 30 import '../elements/types.dart'; |
32 import '../js/js.dart' as jsAst; | 31 import '../js/js.dart' as jsAst; |
33 import '../universe/call_structure.dart' show CallStructure; | 32 import '../universe/call_structure.dart' show CallStructure; |
34 import '../universe/selector.dart' show Selector, SelectorKind; | 33 import '../universe/selector.dart' show Selector, SelectorKind; |
35 import '../universe/world_builder.dart' show CodegenWorldBuilder; | 34 import '../universe/world_builder.dart' show CodegenWorldBuilder; |
(...skipping 1489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1525 String globalObjectForMember(MemberEntity element) { | 1524 String globalObjectForMember(MemberEntity element) { |
1526 if (_isPropertyOfStaticStateHolder(element)) return staticStateHolder; | 1525 if (_isPropertyOfStaticStateHolder(element)) return staticStateHolder; |
1527 return globalObjectForLibrary(element.library); | 1526 return globalObjectForLibrary(element.library); |
1528 } | 1527 } |
1529 | 1528 |
1530 String globalObjectForClass(ClassEntity element) { | 1529 String globalObjectForClass(ClassEntity element) { |
1531 return globalObjectForLibrary(element.library); | 1530 return globalObjectForLibrary(element.library); |
1532 } | 1531 } |
1533 | 1532 |
1534 String globalObjectForType(Entity element) { | 1533 String globalObjectForType(Entity element) { |
1535 if (element is TypedefElement) { | 1534 if (element is TypedefEntity) { |
1536 return globalObjectForLibrary(element.library); | 1535 return globalObjectForLibrary(element.library); |
1537 } | 1536 } |
1538 return globalObjectForClass(element); | 1537 return globalObjectForClass(element); |
1539 } | 1538 } |
1540 | 1539 |
1541 /// Returns the [reservedGlobalObjectNames] for [library]. | 1540 /// Returns the [reservedGlobalObjectNames] for [library]. |
1542 String globalObjectForLibrary(LibraryEntity library) { | 1541 String globalObjectForLibrary(LibraryEntity library) { |
1543 if (library == _commonElements.interceptorsLibrary) return 'J'; | 1542 if (library == _commonElements.interceptorsLibrary) return 'J'; |
1544 Uri uri = library.canonicalUri; | 1543 Uri uri = library.canonicalUri; |
1545 if (uri.scheme == 'dart') { | 1544 if (uri.scheme == 'dart') { |
(...skipping 693 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2239 void addSuggestion(String original, String suggestion) { | 2238 void addSuggestion(String original, String suggestion) { |
2240 assert(!_suggestedNames.containsKey(original)); | 2239 assert(!_suggestedNames.containsKey(original)); |
2241 _suggestedNames[original] = suggestion; | 2240 _suggestedNames[original] = suggestion; |
2242 } | 2241 } |
2243 | 2242 |
2244 bool hasSuggestion(String original) => _suggestedNames.containsKey(original); | 2243 bool hasSuggestion(String original) => _suggestedNames.containsKey(original); |
2245 bool isSuggestion(String candidate) { | 2244 bool isSuggestion(String candidate) { |
2246 return _suggestedNames.containsValue(candidate); | 2245 return _suggestedNames.containsValue(candidate); |
2247 } | 2246 } |
2248 } | 2247 } |
OLD | NEW |