boolean (T t, ProcessingContext context, PairProcessor<? super ParentType, ? super ProcessingContext> processor) { ParentType element = strict ? getParent(t) : t; while (element != null) { if (!processor.process(element, context)) return false; element = getParent(element); } return true; }