Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1256)

Side by Side Diff: sdk/lib/_internal/compiler/js_lib/js_array.dart

Issue 1181003005: Use ArgumentError.value in more places in js_lib. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 part of _interceptors; 5 part of _interceptors;
6 6
7 /** 7 /**
8 * The interceptor class for [List]. The compiler recognizes this 8 * The interceptor class for [List]. The compiler recognizes this
9 * class as an interceptor, and changes references to [:this:] to 9 * class as an interceptor, and changes references to [:this:] to
10 * actually use the receiver of the method, which is generated as an extra 10 * actually use the receiver of the method, which is generated as an extra
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 } 98 }
99 } 99 }
100 100
101 void add(E value) { 101 void add(E value) {
102 checkGrowable('add'); 102 checkGrowable('add');
103 JS('void', r'#.push(#)', this, value); 103 JS('void', r'#.push(#)', this, value);
104 } 104 }
105 105
106 E removeAt(int index) { 106 E removeAt(int index) {
107 checkGrowable('removeAt'); 107 checkGrowable('removeAt');
108 if (index is !int) throw new ArgumentError(index); 108 if (index is !int) throw argumentErrorValue(index);
109 if (index < 0 || index >= length) { 109 if (index < 0 || index >= length) {
110 throw new RangeError.value(index); 110 throw new RangeError.value(index);
111 } 111 }
112 return JS('var', r'#.splice(#, 1)[0]', this, index); 112 return JS('var', r'#.splice(#, 1)[0]', this, index);
113 } 113 }
114 114
115 void insert(int index, E value) { 115 void insert(int index, E value) {
116 checkGrowable('insert'); 116 checkGrowable('insert');
117 if (index is !int) throw new ArgumentError(index); 117 if (index is !int) throw argumentErrorValue(index);
118 if (index < 0 || index > length) { 118 if (index < 0 || index > length) {
119 throw new RangeError.value(index); 119 throw new RangeError.value(index);
120 } 120 }
121 JS('void', r'#.splice(#, 0, #)', this, index, value); 121 JS('void', r'#.splice(#, 0, #)', this, index, value);
122 } 122 }
123 123
124 void insertAll(int index, Iterable<E> iterable) { 124 void insertAll(int index, Iterable<E> iterable) {
125 checkGrowable('insertAll'); 125 checkGrowable('insertAll');
126 RangeError.checkValueInInterval(index, 0, this.length, "index"); 126 RangeError.checkValueInInterval(index, 0, this.length, "index");
127 if (iterable is! EfficientLength) { 127 if (iterable is! EfficientLength) {
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
334 if (matchFound) return match; 334 if (matchFound) return match;
335 throw IterableElementError.noElement(); 335 throw IterableElementError.noElement();
336 } 336 }
337 337
338 E elementAt(int index) { 338 E elementAt(int index) {
339 return this[index]; 339 return this[index];
340 } 340 }
341 341
342 List<E> sublist(int start, [int end]) { 342 List<E> sublist(int start, [int end]) {
343 checkNull(start); // TODO(ahe): This is not specified but co19 tests it. 343 checkNull(start); // TODO(ahe): This is not specified but co19 tests it.
344 if (start is !int) throw new ArgumentError(start); 344 if (start is !int) throw argumentErrorValue(start);
345 if (start < 0 || start > length) { 345 if (start < 0 || start > length) {
346 throw new RangeError.range(start, 0, length); 346 throw new RangeError.range(start, 0, length);
347 } 347 }
348 if (end == null) { 348 if (end == null) {
349 end = length; 349 end = length;
350 } else { 350 } else {
351 if (end is !int) throw new ArgumentError(end); 351 if (end is !int) throw argumentErrorValue(end);
352 if (end < start || end > length) { 352 if (end < start || end > length) {
353 throw new RangeError.range(end, start, length); 353 throw new RangeError.range(end, start, length);
354 } 354 }
355 } 355 }
356 if (start == end) return <E>[]; 356 if (start == end) return <E>[];
357 return new JSArray<E>.markGrowable( 357 return new JSArray<E>.markGrowable(
358 JS('', r'#.slice(#, #)', this, start, end)); 358 JS('', r'#.slice(#, #)', this, start, end));
359 } 359 }
360 360
361 361
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
647 647
648 if (_index >= length) { 648 if (_index >= length) {
649 _current = null; 649 _current = null;
650 return false; 650 return false;
651 } 651 }
652 _current = _iterable[_index]; 652 _current = _iterable[_index];
653 _index++; 653 _index++;
654 return true; 654 return true;
655 } 655 }
656 } 656 }
OLDNEW
« no previous file with comments | « sdk/lib/_internal/compiler/js_lib/interceptors.dart ('k') | sdk/lib/_internal/compiler/js_lib/js_helper.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698