| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 /// Contains the names of globals that are embedded into the output by the | 5 /// Contains the names of globals that are embedded into the output by the |
| 6 /// compiler. | 6 /// compiler. |
| 7 /// | 7 /// |
| 8 /// Variables embedded this way should be access with `JS_EMBEDDED_GLOBAL` from | 8 /// Variables embedded this way should be access with `JS_EMBEDDED_GLOBAL` from |
| 9 /// the `_foreign_helper` library. | 9 /// the `_foreign_helper` library. |
| 10 /// | 10 /// |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 FUNCTION_TYPE_REQUIRED_PARAMETERS_TAG, | 110 FUNCTION_TYPE_REQUIRED_PARAMETERS_TAG, |
| 111 /// Name used to tag optional parameters in function type representations | 111 /// Name used to tag optional parameters in function type representations |
| 112 /// in JavaScript. | 112 /// in JavaScript. |
| 113 FUNCTION_TYPE_OPTIONAL_PARAMETERS_TAG, | 113 FUNCTION_TYPE_OPTIONAL_PARAMETERS_TAG, |
| 114 /// Name used to tag named parameters in function type representations in | 114 /// Name used to tag named parameters in function type representations in |
| 115 /// JavaScript. | 115 /// JavaScript. |
| 116 FUNCTION_TYPE_NAMED_PARAMETERS_TAG, | 116 FUNCTION_TYPE_NAMED_PARAMETERS_TAG, |
| 117 /// Field name used for determining if an object or its interceptor has | 117 /// Field name used for determining if an object or its interceptor has |
| 118 /// JavaScript indexing behavior. | 118 /// JavaScript indexing behavior. |
| 119 IS_INDEXABLE_FIELD_NAME, | 119 IS_INDEXABLE_FIELD_NAME, |
| 120 /// String representation of the type of the null class. |
| 121 NULL_CLASS_TYPE_NAME, |
| 122 /// String representation of the type of the object class. |
| 123 OBJECT_CLASS_TYPE_NAME, |
| 124 /// String representation of the type of the function class. |
| 125 FUNCTION_CLASS_TYPE_NAME, |
| 120 } | 126 } |
| 121 | 127 |
| 122 enum JsBuiltin { | 128 enum JsBuiltin { |
| 123 /// Returns the JavaScript constructor function for Dart's Object class. | 129 /// Returns the JavaScript constructor function for Dart's Object class. |
| 124 /// This can be used for type tests, as in | 130 /// This can be used for type tests, as in |
| 125 /// | 131 /// |
| 126 /// var constructor = JS_BUILTIN('', JsBuiltin.dartObjectContructor); | 132 /// var constructor = JS_BUILTIN('', JsBuiltin.dartObjectContructor); |
| 127 /// if (JS('bool', '# instanceof #', obj, constructor)) | 133 /// if (JS('bool', '# instanceof #', obj, constructor)) |
| 128 /// ... | 134 /// ... |
| 129 dartObjectConstructor, | 135 dartObjectConstructor, |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 /// | 171 /// |
| 166 /// The argument `other` is the name of the potential supertype. It is | 172 /// The argument `other` is the name of the potential supertype. It is |
| 167 /// computed by `runtimeTypeToString`; | 173 /// computed by `runtimeTypeToString`; |
| 168 /// | 174 /// |
| 169 /// *The `other` name must be passed in before the `type`.* | 175 /// *The `other` name must be passed in before the `type`.* |
| 170 /// | 176 /// |
| 171 /// JS_BUILTIN('returns:bool;effects:none;depends:none', | 177 /// JS_BUILTIN('returns:bool;effects:none;depends:none', |
| 172 /// JsBuiltin.isSubtype, other, type); | 178 /// JsBuiltin.isSubtype, other, type); |
| 173 isSubtype, | 179 isSubtype, |
| 174 | 180 |
| 175 /// Returns true if the given type is _the_ `Function` type. | 181 /// Returns true if the given type equals the type given as second |
| 176 /// That is, it returns true if the given [type] is exactly the `Function` | 182 /// argument. Use the JS_GET_NAME helpers to get the type representation |
| 177 /// type rti-encoding. | 183 /// for various Dart classes. |
| 178 /// | 184 /// |
| 179 /// JS_BUILTIN('returns:bool;effects:none;depends:none', | 185 /// JS_BUILTIN('returns:bool;effects:none;depends:none', |
| 180 /// JsBuiltin.isFunctionTypeLiteral, type); | 186 /// JsBuiltin.isFunctionTypeLiteral, type, name); |
| 181 isFunctionTypeRti, | 187 isGivenTypeRti, |
| 182 | |
| 183 /// Returns whether the given type is _the_ null-type.. | |
| 184 /// | |
| 185 /// JS_BUILTIN('returns:bool;effects:none;depends:none', | |
| 186 /// JsBuiltin.isNullType, type); | |
| 187 isNullTypeRti, | |
| 188 | |
| 189 /// Returns whether the given type is _the_ Dart Object type. | |
| 190 /// | |
| 191 /// JS_BUILTIN('returns:bool;effects:none;depends:none', | |
| 192 /// JsBuiltin.isDartObjectType, type); | |
| 193 isDartObjectTypeRti, | |
| 194 | 188 |
| 195 /// Returns the metadata of the given [index]. | 189 /// Returns the metadata of the given [index]. |
| 196 /// | 190 /// |
| 197 /// JS_BUILTIN('returns:var;effects:none;depends:none', | 191 /// JS_BUILTIN('returns:var;effects:none;depends:none', |
| 198 /// JsBuiltin.getMetadata, index); | 192 /// JsBuiltin.getMetadata, index); |
| 199 getMetadata, | 193 getMetadata, |
| 200 | 194 |
| 201 /// Returns the type of the given [index]. | 195 /// Returns the type of the given [index]. |
| 202 /// | 196 /// |
| 203 /// JS_BUILTIN('returns:var;effects:none;depends:none', | 197 /// JS_BUILTIN('returns:var;effects:none;depends:none', |
| 204 /// JsBuiltin.getType, index); | 198 /// JsBuiltin.getType, index); |
| 205 getType, | 199 getType, |
| 206 } | 200 } |
| OLD | NEW |