@Contract(pure = true)
      private void analyzeCatchSections(final @NotNull PsiTryStatement tryStatement) {
        for (final PsiCatchSection catchSection : tryStatement.getCatchSections()) {
          final PsiParameter parameter = catchSection.getParameter();
          if (parameter == null) continue;

          final PsiType catchType = parameter.getType();

          if (catchType instanceof PsiDisjunctionType disjunctionType) {
            for (final PsiType disjunction : disjunctionType.getDisjunctions()) {
              addCatchSectionType(catchSection, disjunction);
            }
          }
          else {
            addCatchSectionType(catchSection, catchType);
          }
        }
      }
@Contract(pure = true)
      private void analyzeCatchSections(final @NotNull PsiTryStatement tryStatement)