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

Side by Side Diff: pkg/compiler/lib/src/js_backend/namer.dart

Issue 2981633002: Introduce TypedefEntity (Closed)
Patch Set: Created 3 years, 5 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) 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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698