boolean (@NotNull T t, ProcessingContext context) { ParentType element = strict ? getParent(t) : t; while (element != null) { if (stopAt.accepts(element, context)) return false; if (pattern.accepts(element, context)) return true; element = getParent(element); } return false; }