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

Side by Side Diff: lib/core/list.dart

Issue 10989013: Change IllegalArgumentException to ArgumentError. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Updated co19 test expectations. Created 8 years, 2 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 | Annotate | Revision Log
OLDNEW
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 /** 5 /**
6 * A [List] is an indexable collection with a length. It can be of 6 * A [List] is an indexable collection with a length. It can be of
7 * fixed size or extendable. 7 * fixed size or extendable.
8 */ 8 */
9 interface List<E> extends Collection<E> default ListImplementation<E> { 9 interface List<E> extends Collection<E> default ListImplementation<E> {
10 10
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 * length of the list cannot be changed. 94 * length of the list cannot be changed.
95 */ 95 */
96 void clear(); 96 void clear();
97 97
98 /** 98 /**
99 * Removes the element at position[index] from the list. 99 * Removes the element at position[index] from the list.
100 * 100 *
101 * This reduces the length of the list by one and moves all later elements 101 * This reduces the length of the list by one and moves all later elements
102 * down by one position. 102 * down by one position.
103 * Returns the removed element. 103 * Returns the removed element.
104 * Throws an [IllegalArgumentException] if [index] is not an [int]. 104 * Throws an [ArgumentError] if [index] is not an [int].
105 * Throws an [IndexOutOfRangeException] if the [index] does not point inside 105 * Throws an [IndexOutOfRangeException] if the [index] does not point inside
106 * the list. 106 * the list.
107 * Throws an [UnsupportedOperationException], and doesn't remove the element, 107 * Throws an [UnsupportedOperationException], and doesn't remove the element,
108 * if the length of the list cannot be changed. 108 * if the length of the list cannot be changed.
109 */ 109 */
110 E removeAt(int index); 110 E removeAt(int index);
111 111
112 /** 112 /**
113 * Pops and returns the last element of the list. 113 * Pops and returns the last element of the list.
114 * Throws a [UnsupportedOperationException] if the length of the 114 * Throws a [UnsupportedOperationException] if the length of the
115 * list cannot be changed. 115 * list cannot be changed.
116 */ 116 */
117 E removeLast(); 117 E removeLast();
118 118
119 /** 119 /**
120 * Returns the last element of the list, or throws an out of bounds 120 * Returns the last element of the list, or throws an out of bounds
121 * exception if the list is empty. 121 * exception if the list is empty.
122 */ 122 */
123 E last(); 123 E last();
124 124
125 /** 125 /**
126 * Returns a new list containing [length] elements from the list, 126 * Returns a new list containing [length] elements from the list,
127 * starting at [start]. 127 * starting at [start].
128 * Returns an empty list if [length] is 0. 128 * Returns an empty list if [length] is 0.
129 * Throws an [IllegalArgumentException] if [length] is negative. 129 * Throws an [ArgumentError] if [length] is negative.
130 * Throws an [IndexOutOfRangeException] if [start] or 130 * Throws an [IndexOutOfRangeException] if [start] or
131 * [:start + length - 1:] are out of range. 131 * [:start + length - 1:] are out of range.
132 */ 132 */
133 List<E> getRange(int start, int length); 133 List<E> getRange(int start, int length);
134 134
135 /** 135 /**
136 * Copies [length] elements of [from], starting 136 * Copies [length] elements of [from], starting
137 * at [startFrom], into the list, starting at [start]. 137 * at [startFrom], into the list, starting at [start].
138 * If [length] is 0, this method does not do anything. 138 * If [length] is 0, this method does not do anything.
139 * Throws an [IllegalArgumentException] if [length] is negative. 139 * Throws an [ArgumentError] if [length] is negative.
140 * Throws an [IndexOutOfRangeException] if [start] or 140 * Throws an [IndexOutOfRangeException] if [start] or
141 * [:start + length - 1:] are out of range for [:this:], or if 141 * [:start + length - 1:] are out of range for [:this:], or if
142 * [startFrom] or [:startFrom + length - 1:] are out of range for [from]. 142 * [startFrom] or [:startFrom + length - 1:] are out of range for [from].
143 */ 143 */
144 void setRange(int start, int length, List<E> from, [int startFrom]); 144 void setRange(int start, int length, List<E> from, [int startFrom]);
145 145
146 /** 146 /**
147 * Removes [length] elements from the list, beginning at [start]. 147 * Removes [length] elements from the list, beginning at [start].
148 * Throws an [UnsupportedOperationException] if the list is 148 * Throws an [UnsupportedOperationException] if the list is
149 * not extendable. 149 * not extendable.
150 * If [length] is 0, this method does not do anything. 150 * If [length] is 0, this method does not do anything.
151 * Throws an [IllegalArgumentException] if [length] is negative. 151 * Throws an [ArgumentError] if [length] is negative.
152 * Throws an [IndexOutOfRangeException] if [start] or 152 * Throws an [IndexOutOfRangeException] if [start] or
153 * [:start + length: - 1] are out of range. 153 * [:start + length: - 1] are out of range.
154 */ 154 */
155 void removeRange(int start, int length); 155 void removeRange(int start, int length);
156 156
157 /** 157 /**
158 * Inserts a new range into the list, starting from [start] to 158 * Inserts a new range into the list, starting from [start] to
159 * [:start + length - 1:]. The entries are filled with [initialValue]. 159 * [:start + length - 1:]. The entries are filled with [initialValue].
160 * Throws an [UnsupportedOperationException] if the list is 160 * Throws an [UnsupportedOperationException] if the list is
161 * not extendable. 161 * not extendable.
162 * If [length] is 0, this method does not do anything. 162 * If [length] is 0, this method does not do anything.
163 * If [start] is the length of the list, this method inserts the 163 * If [start] is the length of the list, this method inserts the
164 * range at the end of the list. 164 * range at the end of the list.
165 * Throws an [IllegalArgumentException] if [length] is negative. 165 * Throws an [ArgumentError] if [length] is negative.
166 * Throws an [IndexOutOfRangeException] if [start] is negative or if 166 * Throws an [IndexOutOfRangeException] if [start] is negative or if
167 * [start] is greater than the length of the list. 167 * [start] is greater than the length of the list.
168 */ 168 */
169 void insertRange(int start, int length, [E initialValue]); 169 void insertRange(int start, int length, [E initialValue]);
170 } 170 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698