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 class _GrowableObjectArray<T> implements List<T> { | 5 class _GrowableObjectArray<T> implements List<T> { |
6 factory _GrowableObjectArray._uninstantiable() { | 6 factory _GrowableObjectArray._uninstantiable() { |
7 throw new UnsupportedError( | 7 throw new UnsupportedError( |
8 "GrowableObjectArray can only be allocated by the VM"); | 8 "GrowableObjectArray can only be allocated by the VM"); |
9 } | 9 } |
10 | 10 |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 } | 138 } |
139 | 139 |
140 T removeLast() { | 140 T removeLast() { |
141 var len = length - 1; | 141 var len = length - 1; |
142 var elem = this[len]; | 142 var elem = this[len]; |
143 this[len] = null; | 143 this[len] = null; |
144 _setLength(len); | 144 _setLength(len); |
145 return elem; | 145 return elem; |
146 } | 146 } |
147 | 147 |
| 148 T get first { |
| 149 return this[0]; |
| 150 } |
| 151 |
148 T get last { | 152 T get last { |
149 return this[length - 1]; | 153 return this[length - 1]; |
150 } | 154 } |
151 | 155 |
152 int indexOf(T element, [int start = 0]) { | 156 int indexOf(T element, [int start = 0]) { |
153 return Arrays.indexOf(this, element, start, length); | 157 return Arrays.indexOf(this, element, start, length); |
154 } | 158 } |
155 | 159 |
156 int lastIndexOf(T element, [int start = null]) { | 160 int lastIndexOf(T element, [int start = null]) { |
157 if (start == null) start = length - 1; | 161 if (start == null) start = length - 1; |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 } | 216 } |
213 | 217 |
214 String toString() { | 218 String toString() { |
215 return Collections.collectionToString(this); | 219 return Collections.collectionToString(this); |
216 } | 220 } |
217 | 221 |
218 Iterator<T> iterator() { | 222 Iterator<T> iterator() { |
219 return new SequenceIterator<T>(this); | 223 return new SequenceIterator<T>(this); |
220 } | 224 } |
221 } | 225 } |
OLD | NEW |