Zip<I1, I2>.fromEvenListParity constructor
Null safety
- List list
Creates a Zip by pairing an even index with its next odd index The list must have an even length or you will encounter an ArgumentError ex:
[1,2,3,4,5,6] -->
1,2
3,4
5,6
Implementation
factory Zip.fromEvenListParity(List list){
if (list.length % 2 != 0) {
throw ArgumentError('List must be even current at ${list.length}');
}
List<ZipItem<I1, I2>> newBaseList = [];
for (EnumListItem enumItem in enumerateList(list)) {
if (enumItem.i + 1 > list.length) {
break;
} else if (enumItem.i % 2 == 1) {
continue;
} else {
newBaseList.add(ZipItem(enumItem.value, list[enumItem.index + 1]));
}
}
return Zip(newBaseList);
}