TimeStampedIndentOptions (@NotNull Project project, @NotNull VirtualFile virtualFile, Document document) { IndentOptions options = IndentOptions.retrieveFromAssociatedDocument(document); if (options instanceof TimeStampedIndentOptions cachedInDocument) { final IndentOptions defaultIndentOptions = getDefaultIndentOptions(project, virtualFile, document); if (!cachedInDocument.isOutdated(document, defaultIndentOptions)) { return cachedInDocument; } } return null; }