void (DifferentiateContext context, ReferenceID clsId, String affectReason, boolean forceAffect) { Set<NodeSource> deletedSources = context.getDelta().getDeletedSources(); Predicate<? super NodeSource> affectionFilter = context.getParams().affectionFilter(); for (NodeSource source : Iterators.filter(context.getGraph().getSources(clsId), affectionFilter::test)) { if (forceAffect || !context.isCompiled(source) && !deletedSources.contains(source)) { context.affectNodeSource(source); debug(affectReason, source.getPath()); } } }