| 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 '../diagnostics/diagnostic_listener.dart'; | 15 import '../diagnostics/diagnostic_listener.dart'; |
| 16 import '../diagnostics/messages.dart' show MessageKind; | 16 import '../diagnostics/messages.dart' show |
| 17 MessageKind; |
| 17 import '../diagnostics/spannable.dart' show | 18 import '../diagnostics/spannable.dart' show |
| 18 NO_LOCATION_SPANNABLE, | 19 NO_LOCATION_SPANNABLE, |
| 19 Spannable; | 20 Spannable; |
| 20 import '../enqueue.dart' show | 21 import '../enqueue.dart' show |
| 21 Enqueuer, | 22 Enqueuer, |
| 22 ResolutionEnqueuer; | 23 ResolutionEnqueuer; |
| 23 import '../elements/elements.dart'; | 24 import '../elements/elements.dart'; |
| 24 import '../elements/modelx.dart' show | 25 import '../elements/modelx.dart' show |
| 25 BaseClassElementX, | 26 BaseClassElementX, |
| 26 ElementX, | 27 ElementX, |
| 27 FunctionElementX, | 28 FunctionElementX, |
| 28 LibraryElementX; | 29 LibraryElementX; |
| 29 import '../js/js.dart' as js; | 30 import '../js/js.dart' as js; |
| 30 import '../js_backend/js_backend.dart'; | 31 import '../js_backend/js_backend.dart'; |
| 31 import '../js_emitter/js_emitter.dart' show CodeEmitterTask, NativeEmitter; | 32 import '../js_emitter/js_emitter.dart' show |
| 32 import '../resolution/members.dart' show ResolverVisitor; | 33 CodeEmitterTask, |
| 33 import '../scanner/scannerlib.dart'; | 34 NativeEmitter; |
| 35 import '../resolution/members.dart' show |
| 36 ResolverVisitor; |
| 37 import '../scanner/listener.dart' show |
| 38 ElementListener, |
| 39 Listener, |
| 40 PartialMetadataAnnotation; |
| 41 import '../scanner/token.dart' show |
| 42 BeginGroupToken, |
| 43 EOF_TOKEN, |
| 44 STRING_TOKEN, |
| 45 Token; |
| 34 import '../ssa/ssa.dart'; | 46 import '../ssa/ssa.dart'; |
| 35 import '../tree/tree.dart'; | 47 import '../tree/tree.dart'; |
| 36 import '../universe/universe.dart' show SideEffects; | 48 import '../universe/universe.dart' show SideEffects; |
| 37 import '../util/util.dart'; | 49 import '../util/util.dart'; |
| 38 | 50 |
| 39 part 'behavior.dart'; | 51 part 'behavior.dart'; |
| 40 part 'enqueue.dart'; | 52 part 'enqueue.dart'; |
| 41 part 'js.dart'; | 53 part 'js.dart'; |
| 42 part 'scanner.dart'; | 54 part 'scanner.dart'; |
| 43 part 'ssa.dart'; | 55 part 'ssa.dart'; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 69 String quotedName = cls.nativeTagInfo; | 81 String quotedName = cls.nativeTagInfo; |
| 70 return quotedName.substring(1, quotedName.length - 1).split(','); | 82 return quotedName.substring(1, quotedName.length - 1).split(','); |
| 71 } | 83 } |
| 72 | 84 |
| 73 List<String> nativeTagsOfClass(ClassElement cls) { | 85 List<String> nativeTagsOfClass(ClassElement cls) { |
| 74 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); | 86 return nativeTagsOfClassRaw(cls).where((s) => !s.startsWith('!')).toList(); |
| 75 } | 87 } |
| 76 | 88 |
| 77 bool nativeTagsForcedNonLeaf(ClassElement cls) => | 89 bool nativeTagsForcedNonLeaf(ClassElement cls) => |
| 78 nativeTagsOfClassRaw(cls).contains('!nonleaf'); | 90 nativeTagsOfClassRaw(cls).contains('!nonleaf'); |
| OLD | NEW |