protected PsiDocCommentOwner getContainer()

in src/main/java/org/jetbrains/plugins/spotbugs/intentions/SuppressReportBugIntentionAction.java [110:130]


	protected PsiDocCommentOwner getContainer(final PsiElement context) {
		if (context == null || !context.getManager().isInProject(context)) {
			return null;
		}
		final PsiFile containingFile = context.getContainingFile();
		if (containingFile == null) {
			// for PsiDirectory
			return null;
		}
		if (!IdeaUtilImpl.isLanguageSupported(containingFile.getLanguage()) || context instanceof PsiFile) {
			return null;
		}
		PsiElement container = context;
		while (container instanceof PsiAnonymousClass || !(container instanceof PsiDocCommentOwner) || container instanceof PsiTypeParameter) {
			container = PsiTreeUtil.getParentOfType(container, PsiDocCommentOwner.class);
			if (container == null) {
				return null;
			}
		}
		return (PsiDocCommentOwner) container;
	}