getNextFragmentRecursive function

Fragment? getNextFragmentRecursive(
  1. int currentAcc,
  2. int targetAcc,
  3. FNode node
)

Implementation

Fragment? getNextFragmentRecursive(int currentAcc, int targetAcc,  FNode node) {
  for (final c in (node as InlineContainerNode).getChildren().where((node) => nodeLength(node) > 0)) {
    if (nodeLength(c) + currentAcc < targetAcc) {
      currentAcc += nodeLength(c);
      continue;
    }
    if (nodeLength(c) + currentAcc > targetAcc) {
      if (c is InlineContainerNode) {
        return getNextFragmentRecursive(currentAcc, targetAcc, c);
      } else if (c is Fragment) {
        return c;
      }
    }
  }
  return null;
}