absoluteToRelativeIndex method

Tuple2<T, int> absoluteToRelativeIndex({
  1. required int absoluteIndex,
})

Implementation

Tuple2<T, int> absoluteToRelativeIndex({required int absoluteIndex}) {
  var currSectionBeginIndex = 0;
  for (var i = 0; i < arr.length; ++i) {
    if (currSectionBeginIndex <= absoluteIndex &&
        currSectionBeginIndex + getCount(arr[i]) > absoluteIndex) {
      return Tuple2(arr[i], absoluteIndex - currSectionBeginIndex);
    }
    currSectionBeginIndex += getCount(arr[i]);
  }
  throw Exception(
      'indexCountedList see invalid index=$absoluteIndex (itemCount=${length()})');
}