OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 part of dart._js_helper; | 5 part of dart._js_helper; |
6 | 6 |
7 /// Tells the optimizing compiler to always inline the annotated method. | 7 /// Tells the optimizing compiler to always inline the annotated method. |
8 class ForceInline { | 8 class ForceInline { |
9 const ForceInline(); | 9 const ForceInline(); |
10 } | 10 } |
11 | 11 |
| 12 /// Marks a variable or API to be non-nullable |
| 13 /// Currently unchecked |
| 14 /// TODO(leafp): Consider adding static checking and exposing |
| 15 /// this to user code. |
| 16 class NotNull { |
| 17 const NotNull(); |
| 18 } |
| 19 |
| 20 const notNull = const NotNull(); |
| 21 |
| 22 /// Tells the development compiler to check a variable for null at its |
| 23 /// declaration point, and then to assume that the variable is non-null |
| 24 /// from that point forward. |
| 25 class NullCheck { |
| 26 const NullCheck(); |
| 27 } |
| 28 |
| 29 const nullCheck = const NullCheck(); |
| 30 |
12 /// Tells the optimizing compiler that the annotated method cannot throw. | 31 /// Tells the optimizing compiler that the annotated method cannot throw. |
13 /// Requires @NoInline() to function correctly. | 32 /// Requires @NoInline() to function correctly. |
14 class NoThrows { | 33 class NoThrows { |
15 const NoThrows(); | 34 const NoThrows(); |
16 } | 35 } |
17 | 36 |
18 /// Tells the optimizing compiler to not inline the annotated method. | 37 /// Tells the optimizing compiler to not inline the annotated method. |
19 class NoInline { | 38 class NoInline { |
20 const NoInline(); | 39 const NoInline(); |
21 } | 40 } |
(...skipping 10 matching lines...) Expand all Loading... |
32 /// matching the JavaScript calling conventions. | 51 /// matching the JavaScript calling conventions. |
33 final String name; | 52 final String name; |
34 const JsPeerInterface({this.name}); | 53 const JsPeerInterface({this.name}); |
35 } | 54 } |
36 | 55 |
37 /// A Dart interface may only be implemented by a native JavaScript object | 56 /// A Dart interface may only be implemented by a native JavaScript object |
38 /// if it is marked with this annotation. | 57 /// if it is marked with this annotation. |
39 class SupportJsExtensionMethods { | 58 class SupportJsExtensionMethods { |
40 const SupportJsExtensionMethods(); | 59 const SupportJsExtensionMethods(); |
41 } | 60 } |
OLD | NEW |