Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 | 5 |
| 6 // Test that a factory provider can provide for more than one interface. | 6 // Test that a factory provider can provide for more than one interface. |
| 7 | 7 |
| 8 interface A default F { | 8 interface A default F { |
| 9 A(var secret); | 9 A(var secret); |
| 10 | 10 |
| 11 GetSecret(); | 11 GetSecret(); |
| 12 } | 12 } |
| 13 | 13 |
| 14 class AImpl implements A { | 14 class AImpl implements A { |
| 15 String _secret; | 15 String _secret; |
| 16 | 16 |
| 17 AImpl(String one, String two) : _secret = one + two; | 17 AImpl(String one, String two) : _secret = one.concat(two); |
|
kasperl
2012/03/12 06:55:42
_secret = "${one}${two}"
Ivan Posva
2012/04/11 14:26:00
Done.
| |
| 18 | 18 |
| 19 String GetSecret() { return _secret; } | 19 String GetSecret() { return _secret; } |
| 20 } | 20 } |
| 21 | 21 |
| 22 interface B default F { | 22 interface B default F { |
| 23 B(var secret); | 23 B(var secret); |
| 24 | 24 |
| 25 GetSecret(); | 25 GetSecret(); |
| 26 } | 26 } |
| 27 | 27 |
| 28 class BImpl implements B { | 28 class BImpl implements B { |
| 29 String _secret; | 29 String _secret; |
| 30 | 30 |
| 31 BImpl(String one, String two) : _secret = two + one; | 31 BImpl(String one, String two) : _secret = two.concat(one); |
|
kasperl
2012/03/12 06:55:42
_secret = "${two}${one}"
Ivan Posva
2012/04/11 14:26:00
Done.
| |
| 32 | 32 |
| 33 String GetSecret() { return _secret; } | 33 String GetSecret() { return _secret; } |
| 34 } | 34 } |
| 35 | 35 |
| 36 | 36 |
| 37 // One factory provider for two interfaces. | 37 // One factory provider for two interfaces. |
| 38 class F { | 38 class F { |
| 39 factory A(var secret) { | 39 factory A(var secret) { |
| 40 return new AImpl(secret, 'A'); | 40 return new AImpl(secret, 'A'); |
| 41 } | 41 } |
| 42 | 42 |
| 43 factory B(var secret) { | 43 factory B(var secret) { |
| 44 return new BImpl(secret, 'B'); | 44 return new BImpl(secret, 'B'); |
| 45 } | 45 } |
| 46 } | 46 } |
| 47 | 47 |
| 48 main() { | 48 main() { |
| 49 Expect.equals('1A', new A('1').GetSecret()); | 49 Expect.equals('1A', new A('1').GetSecret()); |
| 50 Expect.equals('B2', new B('2').GetSecret()); | 50 Expect.equals('B2', new B('2').GetSecret()); |
| 51 } | 51 } |
| OLD | NEW |