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 '../constants/values.dart'; | 9 import '../constants/values.dart'; |
10 import '../dart2jslib.dart'; | 10 import '../dart2jslib.dart'; |
11 import '../dart_types.dart'; | 11 import '../dart_types.dart'; |
12 import '../diagnostic_listener.dart'; | |
13 import '../enqueue.dart' show | |
14 Enqueuer, | |
15 ResolutionEnqueuer; | |
16 import '../elements/elements.dart'; | 12 import '../elements/elements.dart'; |
17 import '../elements/modelx.dart' show | 13 import '../elements/modelx.dart' |
18 BaseClassElementX, | 14 show ElementX, BaseClassElementX, FunctionElementX, LibraryElementX; |
19 ElementX, | |
20 FunctionElementX, | |
21 LibraryElementX; | |
22 import '../js/js.dart' as js; | 15 import '../js/js.dart' as js; |
23 import '../js_backend/js_backend.dart'; | 16 import '../js_backend/js_backend.dart'; |
24 import '../js_emitter/js_emitter.dart' show CodeEmitterTask, NativeEmitter; | 17 import '../js_emitter/js_emitter.dart' show CodeEmitterTask, NativeEmitter; |
25 import '../messages.dart' show MessageKind; | |
26 import '../resolution/resolution.dart' show ResolverVisitor; | 18 import '../resolution/resolution.dart' show ResolverVisitor; |
27 import '../scanner/scannerlib.dart'; | 19 import '../scanner/scannerlib.dart'; |
28 import '../ssa/ssa.dart'; | 20 import '../ssa/ssa.dart'; |
29 import '../tree/tree.dart'; | 21 import '../tree/tree.dart'; |
30 import '../universe/universe.dart' show SideEffects; | 22 import '../universe/universe.dart' show SideEffects; |
31 import '../util/util.dart'; | 23 import '../util/util.dart'; |
32 | 24 |
33 part 'behavior.dart'; | 25 part 'behavior.dart'; |
34 part 'enqueue.dart'; | 26 part 'enqueue.dart'; |
35 part 'js.dart'; | 27 part 'js.dart'; |
(...skipping 27 matching lines...) Expand all Loading... |
63 String quotedName = cls.nativeTagInfo; | 55 String quotedName = cls.nativeTagInfo; |
64 return quotedName.substring(1, quotedName.length - 1).split(','); | 56 return quotedName.substring(1, quotedName.length - 1).split(','); |
65 } | 57 } |
66 | 58 |
67 List<String> nativeTagsOfClass(ClassElement cls) { | 59 List<String> nativeTagsOfClass(ClassElement cls) { |
68 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); | 60 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); |
69 } | 61 } |
70 | 62 |
71 bool nativeTagsForcedNonLeaf(ClassElement cls) => | 63 bool nativeTagsForcedNonLeaf(ClassElement cls) => |
72 nativeTagsOfClassRaw(cls).contains('!nonleaf'); | 64 nativeTagsOfClassRaw(cls).contains('!nonleaf'); |
OLD | NEW |