OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 native; | 5 library native; |
6 | 6 |
7 import 'dart:collection' show Queue; | 7 import 'dart:collection' show Queue; |
8 | 8 |
9 import '../common/registry.dart' show | 9 import '../common/registry.dart' show |
10 Registry; | 10 Registry; |
11 import '../compiler.dart' show | 11 import '../compiler.dart' show |
12 Compiler; | 12 Compiler; |
13 import '../constants/values.dart'; | 13 import '../constants/values.dart'; |
14 import '../dart_types.dart'; | 14 import '../dart_types.dart'; |
15 import '../diagnostic_listener.dart'; | 15 import '../diagnostics/diagnostic_listener.dart'; |
| 16 import '../diagnostics/messages.dart' show MessageKind; |
16 import '../diagnostics/spannable.dart' show | 17 import '../diagnostics/spannable.dart' show |
17 NO_LOCATION_SPANNABLE, | 18 NO_LOCATION_SPANNABLE, |
18 Spannable; | 19 Spannable; |
19 import '../enqueue.dart' show | 20 import '../enqueue.dart' show |
20 Enqueuer, | 21 Enqueuer, |
21 ResolutionEnqueuer; | 22 ResolutionEnqueuer; |
22 import '../elements/elements.dart'; | 23 import '../elements/elements.dart'; |
23 import '../elements/modelx.dart' show | 24 import '../elements/modelx.dart' show |
24 BaseClassElementX, | 25 BaseClassElementX, |
25 ElementX, | 26 ElementX, |
26 FunctionElementX, | 27 FunctionElementX, |
27 LibraryElementX; | 28 LibraryElementX; |
28 import '../js/js.dart' as js; | 29 import '../js/js.dart' as js; |
29 import '../js_backend/js_backend.dart'; | 30 import '../js_backend/js_backend.dart'; |
30 import '../js_emitter/js_emitter.dart' show CodeEmitterTask, NativeEmitter; | 31 import '../js_emitter/js_emitter.dart' show CodeEmitterTask, NativeEmitter; |
31 import '../messages.dart' show MessageKind; | |
32 import '../resolution/resolution.dart' show ResolverVisitor; | 32 import '../resolution/resolution.dart' show ResolverVisitor; |
33 import '../scanner/scannerlib.dart'; | 33 import '../scanner/scannerlib.dart'; |
34 import '../ssa/ssa.dart'; | 34 import '../ssa/ssa.dart'; |
35 import '../tree/tree.dart'; | 35 import '../tree/tree.dart'; |
36 import '../universe/universe.dart' show SideEffects; | 36 import '../universe/universe.dart' show SideEffects; |
37 import '../util/util.dart'; | 37 import '../util/util.dart'; |
38 | 38 |
39 part 'behavior.dart'; | 39 part 'behavior.dart'; |
40 part 'enqueue.dart'; | 40 part 'enqueue.dart'; |
41 part 'js.dart'; | 41 part 'js.dart'; |
(...skipping 27 matching lines...) Expand all Loading... |
69 String quotedName = cls.nativeTagInfo; | 69 String quotedName = cls.nativeTagInfo; |
70 return quotedName.substring(1, quotedName.length - 1).split(','); | 70 return quotedName.substring(1, quotedName.length - 1).split(','); |
71 } | 71 } |
72 | 72 |
73 List<String> nativeTagsOfClass(ClassElement cls) { | 73 List<String> nativeTagsOfClass(ClassElement cls) { |
74 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); | 74 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); |
75 } | 75 } |
76 | 76 |
77 bool nativeTagsForcedNonLeaf(ClassElement cls) => | 77 bool nativeTagsForcedNonLeaf(ClassElement cls) => |
78 nativeTagsOfClassRaw(cls).contains('!nonleaf'); | 78 nativeTagsOfClassRaw(cls).contains('!nonleaf'); |
OLD | NEW |