Метод checkValidIndex
Проверка, является ли index допустимым индексом для объекта-индексируемого.
Выбрасывает исключение, если index не является допустимым индексом для indexable.
Объект-индексируемый — это объект, у которого есть length и оператор индексации [], который принимает индекс, если 0 <= index < length.
Если name или message указаны, они используются в качестве имени параметра и текста сообщения выбрасываемого исключения. Если name опущено, оно по умолчанию равно "index".
Если length указано, оно используется как длина объекта-индексируемого, в противном случае длина определяется как indexable.length.
Возвращает index , если это допустимый индекс.
Реализация
static int checkValidIndex(int index, dynamic indexable,
[String? name, int? length, String? message]) {
length ??= (indexable.length as int);
// Comparing with `0` as receiver produces better dart2js type inference.
if (0 > index || index >= length) {
name ??= "index";
throw RangeError.index(index, indexable, name, message, length);
}
return index;
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-core/RangeError/checkValidIndex.html