| 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 // Dart test program for testing Interfaces. |   4 // Dart test program for testing Interfaces. | 
|   5  |   5  | 
|   6 abstract class Ai { |   6 abstract class Ai { | 
|   7   int foo(); |   7   int foo(); | 
|   8 } |   8 } | 
|   9  |   9  | 
|  10 abstract class Bi implements Ai { |  10 abstract class Bi implements Ai { | 
|  11   factory Bi() = InterfaceTest; |  11   factory Bi() = InterfaceTest; | 
|  12 } |  12 } | 
|  13  |  13  | 
|  14 abstract class Simple implements Ai {} |  14 abstract class Simple implements Ai { } | 
|  15  |  15  | 
|  16 abstract class Aai {} |  16 abstract class Aai { } | 
|  17  |  17  | 
|  18 abstract class Abi {} |  18 abstract class Abi { } | 
|  19  |  19  | 
|  20 abstract class Bar {} |  20 abstract class Bar { } | 
|  21  |  21  | 
|  22 abstract class Foo implements Bar {} |  22 abstract class Foo implements Bar { } | 
|  23  |  23  | 
|  24 abstract class Baz implements Bar, Foo {} |  24 abstract class Baz implements Bar, Foo { } | 
|  25  |  25  | 
|  26 class InterfaceTest implements Ai, Aai, Abi, Baz, Bi { |  26 class InterfaceTest implements Ai, Aai, Abi, Baz, Bi { | 
|  27   var f; |  27   var f; | 
|  28  |  28  | 
|  29   InterfaceTest() {} |  29   InterfaceTest() {} | 
|  30   int foo() { |  30   int foo() { return 1; } | 
|  31     return 1; |  | 
|  32   } |  | 
|  33  |  31  | 
|  34   // intentionally unimplemented methods |  32   // intentionally unimplemented methods | 
|  35   beta(); // Abstract. |  33   beta();  // Abstract. | 
|  36   String beta1(); // Abstract. |  34   String beta1();  // Abstract. | 
|  37   String beta2(double d); // Abstract. |  35   String beta2(double d);  // Abstract. | 
|  38 } |  36 } | 
|  39  |  37  | 
|  40 main() { |  38 main() { | 
|  41   // instantiate an abstract class |  39   // instantiate an abstract class | 
|  42   var o = new Bi(); //# 00: static type warning |  40   var o = new Bi(); //# 00: static type warning | 
|  43 } |  41 } | 
| OLD | NEW |