 Chromium Code Reviews
 Chromium Code Reviews Issue 1056353004:
  Add List.unmodifiable constructor.  (Closed) 
  Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
    
  
    Issue 1056353004:
  Add List.unmodifiable constructor.  (Closed) 
  Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart| OLD | NEW | 
|---|---|
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 part of dart._internal; | 5 part of dart._internal; | 
| 6 | 6 | 
| 7 /** | 7 /** | 
| 8 * Mixin that throws on the length changing operations of [List]. | 8 * Mixin that throws on the length changing operations of [List]. | 
| 9 * | 9 * | 
| 10 * Intended to mix-in on top of [ListMixin] for fixed-length lists. | 10 * Intended to mix-in on top of [ListMixin] for fixed-length lists. | 
| (...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 367 * or become empty or been otherwise modified. | 367 * or become empty or been otherwise modified. | 
| 368 * It will still be a valid object, so references to it will not, e.g., crash | 368 * It will still be a valid object, so references to it will not, e.g., crash | 
| 369 * the runtime if accessed, but no promises are made wrt. its contents. | 369 * the runtime if accessed, but no promises are made wrt. its contents. | 
| 370 * | 370 * | 
| 371 * This unspecified behavior is the reason the function is not exposed to | 371 * This unspecified behavior is the reason the function is not exposed to | 
| 372 * users. We allow the underlying implementation to make the most efficient | 372 * users. We allow the underlying implementation to make the most efficient | 
| 373 * conversion, at the cost of leaving the original list in an unspecified | 373 * conversion, at the cost of leaving the original list in an unspecified | 
| 374 * state. | 374 * state. | 
| 375 */ | 375 */ | 
| 376 external List makeListFixedLength(List growableList); | 376 external List makeListFixedLength(List growableList); | 
| 377 | |
| 378 /** | |
| 379 * Converts a fixed-length list to an unmodifiable list. | |
| 380 * | |
| 381 * For internal use only. | |
| 382 * Only works for core fixed-length lists as created by `new List(length)`, | |
| 383 * or as returned by [makeListFixedLength]. | |
| 384 * | |
| 385 * The operation is efficient. It doesn't copy the elements, but converts | |
| 386 * the existing list directly to a fixed length list. | |
| 387 * That means that it is a destructive conversion. | |
| 388 * The original list should not be used afterwards. | |
| 389 * | |
| 390 * The unmodifialbe list type is similar to the one used by const lists. | |
| 
sra1
2015/04/22 21:17:31
spelling
 | |
| 391 */ | |
| 392 external List makeFixedListUnmodifiable(List fixedLengthList); | |
| OLD | NEW |