void (@NotNull Usage usage, @NotNull Predicate<Node<?, ?>> constraint) { Predicate<Node<?, ?>> prevConstraint = affectedUsages.put(usage, constraint); if (prevConstraint != null) { affectedUsages.put(usage, prevConstraint == ANY_CONSTRAINT? ANY_CONSTRAINT : prevConstraint.or(constraint)); } }