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 @native("*A") | 5 @native("*A") |
6 class A { | 6 class A { |
7 bar() => 42; | 7 bar() => 42; |
8 noSuchMethod(x,y) => "native($x:$y)"; | 8 noSuchMethod(x,y) => "native($x:$y)"; |
9 } | 9 } |
10 | 10 |
11 @native("*B") | 11 @native("*B") |
12 class B { | 12 class B { |
13 baz() => 42; | 13 baz() => 42; |
14 } | 14 } |
15 | 15 |
16 @native makeA(); | 16 @native makeA(); |
17 | 17 |
18 @native(""" | 18 @native(""" |
19 function A() {} | 19 function A() {} |
20 makeA = function() { return new A; } | 20 makeA = function() { return new A; } |
21 """) | 21 """) |
22 setup(); | 22 setup(); |
23 | 23 |
24 main() { | 24 main() { |
25 setup(); | 25 setup(); |
26 var a = makeA(); | 26 var a = makeA(); |
27 a.bar(); | 27 a.bar(); |
28 Expect.equals("native(foo:[1, 2])", a.foo(1, 2)); | 28 Expect.equals("native(foo:[1, 2])", a.foo(1, 2)); |
29 Expect.equals("native(baz:[3, 4, 5])", a.baz(3, 4, 5)); | 29 Expect.equals("native(baz:[3, 4, 5])", a.baz(3, 4, 5)); |
30 } | 30 } |
OLD | NEW |