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 dart2js.backend_api; | 5 library dart2js.backend_api; |
6 | 6 |
7 import 'dart:async' show Future; | 7 import 'dart:async' show Future; |
8 | 8 |
9 import '../common.dart'; | 9 import '../common.dart'; |
10 import '../common/codegen.dart' show CodegenImpact; | 10 import '../common/codegen.dart' show CodegenImpact; |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
384 /// Interface for serialization of backend specific data. | 384 /// Interface for serialization of backend specific data. |
385 class BackendSerialization { | 385 class BackendSerialization { |
386 const BackendSerialization(); | 386 const BackendSerialization(); |
387 | 387 |
388 SerializerPlugin get serializer => const SerializerPlugin(); | 388 SerializerPlugin get serializer => const SerializerPlugin(); |
389 DeserializerPlugin get deserializer => const DeserializerPlugin(); | 389 DeserializerPlugin get deserializer => const DeserializerPlugin(); |
390 } | 390 } |
391 | 391 |
392 /// Interface providing access to core classes used by the backend. | 392 /// Interface providing access to core classes used by the backend. |
393 abstract class BackendClasses { | 393 abstract class BackendClasses { |
| 394 |
| 395 /// Returns the backend implementation class for `void`. |
| 396 ClassEntity get voidClass; |
| 397 |
394 /// Returns the backend implementation class for `int`. This is the `JSInt` | 398 /// Returns the backend implementation class for `int`. This is the `JSInt` |
395 /// class. | 399 /// class. |
396 ClassEntity get intClass; | 400 ClassEntity get intClass; |
397 | 401 |
398 /// Returns the backend implementation class for `double`. This is the | 402 /// Returns the backend implementation class for `double`. This is the |
399 /// `JSDouble` class. | 403 /// `JSDouble` class. |
400 ClassEntity get doubleClass; | 404 ClassEntity get doubleClass; |
401 | 405 |
402 /// Returns the backend implementation class for `num`. This is the `JSNum` | 406 /// Returns the backend implementation class for `num`. This is the `JSNum` |
403 /// class. | 407 /// class. |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
504 /// Returns `true` if [cls] is an intercepted class. | 508 /// Returns `true` if [cls] is an intercepted class. |
505 // TODO(johnniwinther): Rename this to `isInterceptedClass`. | 509 // TODO(johnniwinther): Rename this to `isInterceptedClass`. |
506 bool isInterceptorClass(ClassEntity cls); | 510 bool isInterceptorClass(ClassEntity cls); |
507 | 511 |
508 /// Returns `true` if [cls] is a native class. | 512 /// Returns `true` if [cls] is a native class. |
509 bool isNativeClass(ClassEntity element); | 513 bool isNativeClass(ClassEntity element); |
510 | 514 |
511 /// Returns `true` if [element] is a native member of a native class. | 515 /// Returns `true` if [element] is a native member of a native class. |
512 bool isNativeMember(MemberEntity element); | 516 bool isNativeMember(MemberEntity element); |
513 } | 517 } |
OLD | NEW |