29 lines
No EOL
668 B
Dart
29 lines
No EOL
668 B
Dart
import 'dart:math';
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
extension IterableHelper<T> on Iterable<T> {
|
|
T? firstWhereOrNull(bool Function(T) test) => where(test).firstOrNull;
|
|
}
|
|
|
|
extension NullableIterableHelper<T> on Iterable<T?> {
|
|
Iterable<T> whereNotNull() => where((element) => element != null).cast();
|
|
}
|
|
|
|
extension ListHelper<T> on List<T> {
|
|
|
|
// List<T> shuffle([int? seed]) {
|
|
// Random r = Random(seed);
|
|
// var items = [...this];
|
|
// for (var i = length - 1; i > 0; i--) {
|
|
// var n = r.nextInt(i + 1);
|
|
//
|
|
// var temp = items[i];
|
|
// items[i] = items[n];
|
|
// items[n] = temp;
|
|
// }
|
|
//
|
|
// return items;
|
|
// }
|
|
|
|
} |