List<T?> dropWhile(bool Function(T? element) test) { var index = 0; while (index < length) { if (!test(this[index])) { break; } removeAt(0); index++; } return this; }