function reduceCompletedSet()

in tools/strict-null-checks/collapse-completed-directories.js [40:62]


function reduceCompletedSet(completedSet, root) {
    if (completedSet.has(root)) {
        return true;
    }
    if (!isSourceDirectory(root)) {
        return false;
    }

    const children = listRelevantChildren(root);
    let allChildrenReduced = true;
    for (const child of children) {
        const childReduced = reduceCompletedSet(completedSet, child);
        allChildrenReduced = allChildrenReduced && childReduced;
    }

    if (allChildrenReduced) {
        for (const child of children) {
            completedSet.delete(child);
        }
        completedSet.add(root);
    }
    return allChildrenReduced;
}