| 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 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 | 144 |
| 145 /// Called to instruct to the backend register [type] as instantiated on | 145 /// Called to instruct to the backend register [type] as instantiated on |
| 146 /// [enqueuer]. | 146 /// [enqueuer]. |
| 147 void registerInstantiatedType(InterfaceType type) {} | 147 void registerInstantiatedType(InterfaceType type) {} |
| 148 | 148 |
| 149 /// Register a runtime type variable bound tests between [typeArgument] and | 149 /// Register a runtime type variable bound tests between [typeArgument] and |
| 150 /// [bound]. | 150 /// [bound]. |
| 151 void registerTypeVariableBoundsSubtypeCheck( | 151 void registerTypeVariableBoundsSubtypeCheck( |
| 152 DartType typeArgument, DartType bound) {} | 152 DartType typeArgument, DartType bound) {} |
| 153 | 153 |
| 154 /// Called to register that an instantiated generic class has a call method. | |
| 155 /// Any backend specific [WorldImpact] of this is returned. | |
| 156 /// | |
| 157 /// Note: The [callMethod] is registered even thought it doesn't reference | |
| 158 /// the type variables. | |
| 159 WorldImpact registerCallMethodWithFreeTypeVariables(Element callMethod, | |
| 160 {bool forResolution}) => | |
| 161 const WorldImpact(); | |
| 162 | |
| 163 /// Called to instruct the backend to register that a closure exists for a | 154 /// Called to instruct the backend to register that a closure exists for a |
| 164 /// function on an instantiated generic class. Any backend specific | 155 /// function on an instantiated generic class. Any backend specific |
| 165 /// [WorldImpact] of this is returned. | 156 /// [WorldImpact] of this is returned. |
| 166 WorldImpact registerClosureWithFreeTypeVariables(Element closure, | 157 WorldImpact registerClosureWithFreeTypeVariables(Element closure, |
| 167 {bool forResolution}) => | 158 {bool forResolution}) => |
| 168 const WorldImpact(); | 159 const WorldImpact(); |
| 169 | 160 |
| 170 /// Called to register that a member has been closurized. Any backend specific | 161 /// Called to register that a member has been closurized. Any backend specific |
| 171 /// [WorldImpact] of this is returned. | 162 /// [WorldImpact] of this is returned. |
| 172 WorldImpact registerBoundClosure() => const WorldImpact(); | 163 WorldImpact registerBoundClosure() => const WorldImpact(); |
| 173 | 164 |
| 174 /// Called to register that a static function has been closurized. Any backend | 165 /// Called to register that a static function has been closurized. Any backend |
| 175 /// specific [WorldImpact] of this is returned. | 166 /// specific [WorldImpact] of this is returned. |
| 176 WorldImpact registerGetOfStaticFunction() => const WorldImpact(); | 167 WorldImpact registerGetOfStaticFunction() => const WorldImpact(); |
| 177 | 168 |
| 178 /// Called to enable support for `noSuchMethod`. Any backend specific | |
| 179 /// [WorldImpact] of this is returned. | |
| 180 WorldImpact enableNoSuchMethod() => const WorldImpact(); | |
| 181 | |
| 182 /// Returns whether or not `noSuchMethod` support has been enabled. | 169 /// Returns whether or not `noSuchMethod` support has been enabled. |
| 183 bool get enabledNoSuchMethod => false; | 170 bool get enabledNoSuchMethod => false; |
| 184 | 171 |
| 185 /// Called to enable support for isolates. Any backend specific [WorldImpact] | 172 /// Called to enable support for isolates. Any backend specific [WorldImpact] |
| 186 /// of this is returned. | 173 /// of this is returned. |
| 187 WorldImpact enableIsolateSupport({bool forResolution}); | 174 WorldImpact enableIsolateSupport({bool forResolution}); |
| 188 | 175 |
| 189 void registerConstSymbol(String name) {} | 176 void registerConstSymbol(String name) {} |
| 190 | 177 |
| 191 ClassElement defaultSuperclass(ClassElement element) { | 178 ClassElement defaultSuperclass(ClassElement element) { |
| (...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 419 ClassElement get asyncFutureImplementation; | 406 ClassElement get asyncFutureImplementation; |
| 420 ClassElement get asyncStarStreamImplementation; | 407 ClassElement get asyncStarStreamImplementation; |
| 421 ClassElement get indexableImplementation; | 408 ClassElement get indexableImplementation; |
| 422 ClassElement get mutableIndexableImplementation; | 409 ClassElement get mutableIndexableImplementation; |
| 423 ClassElement get indexingBehaviorImplementation; | 410 ClassElement get indexingBehaviorImplementation; |
| 424 | 411 |
| 425 bool isDefaultEqualityImplementation(Element element); | 412 bool isDefaultEqualityImplementation(Element element); |
| 426 bool isInterceptorClass(ClassElement cls); | 413 bool isInterceptorClass(ClassElement cls); |
| 427 bool isNative(Element element); | 414 bool isNative(Element element); |
| 428 } | 415 } |
| OLD | NEW |