long (@NotNull PsiElement element) { PsiFile file = element.getContainingFile(); long nonPhysicalStamp = file == null || file.isPhysical() ? 0 : file.getModificationStamp(); PsiElement root = file != null ? file : element; return nonPhysicalStamp + root.getManager().getModificationTracker().getModificationCount(); }