// For dependee finding, we need to parse all build files.
product_iter = (t
for targets in self._engine.product_request(HydratedTargets, [DescendantAddresses("")])
for t in targets.dependencies)
graph = _HydratedTargetDependentGraph.from_iterable(product_iter)
if changed_request.include_dependees == "direct":
for address in graph.dependents_of_addresses(changed_addresses):
yield address
elif changed_request.include_dependees == "transitive":
for address in graph.transitive_dependents_of_addresses(changed_addresses):
yield address
After Change
pass
if changed_request.include_dependees == "direct":
emitted = set()
for address in changed_addresses:
for dependee in graph.dependents_of(address):
if dependee not in emitted:
emitted.add(dependee)
yield dependee
elif changed_request.include_dependees == "transitive":
for target in graph.transitive_dependees_of_addresses(changed_addresses):
yield target.address