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 import "package:expect/expect.dart"; | 5 import "package:expect/expect.dart"; |
6 import 'compiler_helper.dart'; | 6 import 'compiler_helper.dart'; |
7 | 7 |
8 const int REMOVED = 0; | 8 const int REMOVED = 0; |
9 const int ABOVE_ZERO = 1; | 9 const int ABOVE_ZERO = 1; |
10 const int BELOW_LENGTH = 2; | 10 const int BELOW_LENGTH = 2; |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
285 class Interceptor { | 285 class Interceptor { |
286 toString() {} | 286 toString() {} |
287 bool operator==(other) => identical(this, other); | 287 bool operator==(other) => identical(this, other); |
288 noSuchMethod(im) { throw im; } | 288 noSuchMethod(im) { throw im; } |
289 } | 289 } |
290 abstract class JSIndexable { | 290 abstract class JSIndexable { |
291 get length; | 291 get length; |
292 } | 292 } |
293 abstract class JSMutableIndexable extends JSIndexable {} | 293 abstract class JSMutableIndexable extends JSIndexable {} |
294 class JSArray implements JSIndexable { | 294 class JSArray implements JSIndexable { |
| 295 JSArray() {} |
| 296 JSArray.typed(a) => a; |
295 var length; | 297 var length; |
296 var removeLast; | 298 var removeLast; |
297 operator[] (_) {} | 299 operator[] (_) {} |
298 } | 300 } |
299 class JSMutableArray extends JSArray implements JSMutableIndexable {} | 301 class JSMutableArray extends JSArray implements JSMutableIndexable {} |
300 class JSFixedArray extends JSMutableArray {} | 302 class JSFixedArray extends JSMutableArray {} |
301 class JSExtendableArray extends JSMutableArray {} | 303 class JSExtendableArray extends JSMutableArray {} |
302 class JSString implements JSIndexable { | 304 class JSString implements JSIndexable { |
303 var length; | 305 var length; |
304 } | 306 } |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 break; | 379 break; |
378 } | 380 } |
379 } | 381 } |
380 | 382 |
381 | 383 |
382 main() { | 384 main() { |
383 for (int i = 0; i < TESTS.length; i += 2) { | 385 for (int i = 0; i < TESTS.length; i += 2) { |
384 expect(TESTS[i], TESTS[i + 1]); | 386 expect(TESTS[i], TESTS[i + 1]); |
385 } | 387 } |
386 } | 388 } |
OLD | NEW |