@Override
public void invoke(@NotNull final Project project, @NotNull final PsiFile file,
@Nullable("is null when called from inspection") final Editor editor,
@NotNull final PsiElement startElement, @NotNull PsiElement endElement) {
GoStatement statement = findParentOfType(startElement, GoStatement.class);
if (statement == null || editor == null) {
return;
}
final Document doc = PsiDocumentManager.getInstance(project).getDocument(file);
if (doc == null) {
return;
}
final RangeMarker rangeMarker;
final int line = doc.getLineNumber(statement.getTextOffset());
String variableName = startElement.getText();
if (expressionIsTheWholeStatement(startElement, statement)) {
doc.deleteString(doc.getLineStartOffset(line), doc.getLineEndOffset(line) + 1);
rangeMarker = null;