| 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 import "dart:_js_helper"; | 
| 5 import "package:expect/expect.dart"; | 6 import "package:expect/expect.dart"; | 
| 6 | 7 | 
| 7 // Native class with named constructors and static methods. | 8 // Native class with named constructors and static methods. | 
| 8 | 9 | 
| 9 | 10 | 
| 10 | 11 | 
| 11 class A native "A" { | 12 @Native("A") | 
|  | 13 class A { | 
| 12 | 14 | 
| 13   factory A(int len) => _construct(len); | 15   factory A(int len) => _construct(len); | 
| 14 | 16 | 
| 15   factory A.fromString(String s)  => _construct(s.length); | 17   factory A.fromString(String s)  => _construct(s.length); | 
| 16 | 18 | 
| 17   // Only functions with zero parameters are allowed with "native r'...'". | 19   // Only functions with zero parameters are allowed with "native r'...'". | 
| 18   factory A.nativeConstructor() native r'return makeA(102);'; | 20   factory A.nativeConstructor() native r'return makeA(102);'; | 
| 19 | 21 | 
| 20   static A _construct(v) { return makeA(v); } | 22   static A _construct(v) { return makeA(v); } | 
| 21 | 23 | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
| 34 main() { | 36 main() { | 
| 35   setup(); | 37   setup(); | 
| 36   var a1 = new A(100); | 38   var a1 = new A(100); | 
| 37   var a2 = new A.fromString('Hello'); | 39   var a2 = new A.fromString('Hello'); | 
| 38   var a3 = new A.nativeConstructor(); | 40   var a3 = new A.nativeConstructor(); | 
| 39 | 41 | 
| 40   Expect.equals(100, a1.foo()); | 42   Expect.equals(100, a1.foo()); | 
| 41   Expect.equals(5, a2.foo()); | 43   Expect.equals(5, a2.foo()); | 
| 42   Expect.equals(102, a3.foo()); | 44   Expect.equals(102, a3.foo()); | 
| 43 } | 45 } | 
| OLD | NEW | 
|---|