void (@NotNull CompletionInitializationContext context) { PsiFile file = context.getFile(); if (file instanceof PsiJavaFile) { String dummyIdentifier = customizeDummyIdentifier(context, file); if (dummyIdentifier != null) { context.setDummyIdentifier(dummyIdentifier); } PsiElement element = file.findElementAt(context.getStartOffset()); if (file.getName().equals(PsiJavaModule.MODULE_INFO_FILE)) { if (element instanceof PsiWhiteSpace && element.textContains('\n') && element.getTextRange().getStartOffset() == context.getStartOffset()) { context.setReplacementOffset(context.getStartOffset()); } } PsiLiteralExpression literal = PsiTreeUtil.findElementOfClassAtOffset(file, context.getStartOffset(), PsiLiteralExpression.class, false); if (literal != null) { TextRange range = literal.getTextRange(); if (range.getStartOffset() == context.getStartOffset()) { context.setReplacementOffset(range.getEndOffset()); } } PsiJavaCodeReferenceElement ref = getAnnotationNameIfInside(element); if (ref != null) { context.setReplacementOffset(ref.getTextRange().getEndOffset()); } } if (context.getCompletionType() == CompletionType.SMART) { JavaSmartCompletionContributor.beforeSmartCompletion(context); } }