ContextType (PsiElement element, List<? extends NonBlockingContextChecker> nonBlockingContextCheckers, BlockingCallInspectionSettings settings) { ContextType effectiveContextType = ContextType.Unsure.INSTANCE; ElementContext elementContext = new ElementContext(element, settings); for (NonBlockingContextChecker checker : nonBlockingContextCheckers) { ProgressIndicatorProvider.checkCanceled(); ContextType checkResult = checker.computeContextType(elementContext); effectiveContextType = chooseType(effectiveContextType, checkResult); if (effectiveContextType instanceof ContextType.NonBlocking) return effectiveContextType; } return effectiveContextType; }