Chromium Code Reviews| 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 library dart2js.new_js_emitter.model; | 5 library dart2js.new_js_emitter.model; |
| 6 | 6 |
| 7 import '../constants/values.dart' show ConstantValue; | 7 import '../constants/values.dart' show ConstantValue; |
| 8 import '../deferred_load.dart' show OutputUnit; | 8 import '../deferred_load.dart' show OutputUnit; |
| 9 import '../elements/entities.dart'; | 9 import '../elements/entities.dart'; |
| 10 import '../js/js.dart' as js show Expression, Name, Statement, TokenFinalizer; | 10 import '../js/js.dart' as js show Expression, Name, Statement, TokenFinalizer; |
| (...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 385 /// Uses indicate missing information in the model. | 385 /// Uses indicate missing information in the model. |
| 386 final MemberEntity element; | 386 final MemberEntity element; |
| 387 | 387 |
| 388 /// The name of the method. If the method is a [ParameterStubMethod] for a | 388 /// The name of the method. If the method is a [ParameterStubMethod] for a |
| 389 /// static function, then the name can be `null`. In that case, only the | 389 /// static function, then the name can be `null`. In that case, only the |
| 390 /// [ParameterStubMethod.callName] should be used. | 390 /// [ParameterStubMethod.callName] should be used. |
| 391 final js.Name name; | 391 final js.Name name; |
| 392 final js.Expression code; | 392 final js.Expression code; |
| 393 | 393 |
| 394 Method(this.element, this.name, this.code); | 394 Method(this.element, this.name, this.code); |
| 395 | |
| 396 String toString() { | |
| 397 return 'method[name=${name},element=${element}' | |
|
sra1
2017/07/11 18:24:05
FWIW I prefer these debug-oriented strings to have
Johnni Winther
2017/07/12 10:03:24
Will change in a follow-up CL.
| |
| 398 ',code=${js.nodeToString(code)}]'; | |
| 399 } | |
| 395 } | 400 } |
| 396 | 401 |
| 397 /// A method that corresponds to a method in the original Dart program. | 402 /// A method that corresponds to a method in the original Dart program. |
| 398 abstract class DartMethod extends Method { | 403 abstract class DartMethod extends Method { |
| 399 final bool needsTearOff; | 404 final bool needsTearOff; |
| 400 final js.Name tearOffName; | 405 final js.Name tearOffName; |
| 401 final List<ParameterStubMethod> parameterStubs; | 406 final List<ParameterStubMethod> parameterStubs; |
| 402 final bool canBeApplied; | 407 final bool canBeApplied; |
| 403 final bool canBeReflected; | 408 final bool canBeReflected; |
| 404 | 409 |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 546 String toString() { | 551 String toString() { |
| 547 return 'static_method[name=${name},element=${element}}]'; | 552 return 'static_method[name=${name},element=${element}}]'; |
| 548 } | 553 } |
| 549 } | 554 } |
| 550 | 555 |
| 551 class StaticStubMethod extends StubMethod implements StaticMethod { | 556 class StaticStubMethod extends StubMethod implements StaticMethod { |
| 552 Holder holder; | 557 Holder holder; |
| 553 StaticStubMethod(js.Name name, this.holder, js.Expression code) | 558 StaticStubMethod(js.Name name, this.holder, js.Expression code) |
| 554 : super(name, code); | 559 : super(name, code); |
| 555 } | 560 } |
| OLD | NEW |