returnChosenLeaves<T extends AbsNodeType> function

void returnChosenLeaves<T extends AbsNodeType>(
  1. TreeType<T> tree,
  2. List<TreeType<T>> result
)

Implementation

void returnChosenLeaves<T extends AbsNodeType>(TreeType<T> tree, List<TreeType<T>> result) {
  if (tree.data.isUnavailable) return;

  if (tree.isLeaf && tree.data.isChosen == true) {
    result.add(tree);
    return;
  }

  for (var child in tree.children) {
    returnChosenLeaves(child, result);
  }
}