Supported renaming default objects with default names.
This commit is contained in:
@@ -76,8 +76,16 @@ public class JetObjectDeclaration extends JetNamedDeclarationStub<KotlinObjectSt
|
||||
|
||||
@Override
|
||||
public PsiElement setName(@NonNls @NotNull String name) throws IncorrectOperationException {
|
||||
JetObjectDeclarationName nameAsDeclaration = getNameAsDeclaration();
|
||||
return nameAsDeclaration == null ? null : nameAsDeclaration.setName(name);
|
||||
JetObjectDeclarationName declarationName = getNameAsDeclaration();
|
||||
if (declarationName == null) {
|
||||
JetPsiFactory psiFactory = new JetPsiFactory(getProject());
|
||||
PsiElement result = addAfter(psiFactory.createObjectDeclarationName(name), getObjectKeyword());
|
||||
addAfter(psiFactory.createWhiteSpace(), getObjectKeyword());
|
||||
|
||||
return result;
|
||||
} else {
|
||||
return declarationName.setName(name);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -195,6 +195,10 @@ public class JetPsiFactory(private val project: Project) {
|
||||
return createProperty(name, null, false, name).getInitializer() as JetSimpleNameExpression
|
||||
}
|
||||
|
||||
public fun createObjectDeclarationName(name: String): JetObjectDeclarationName {
|
||||
return createDeclaration<JetObjectDeclaration>("object $name").getNameAsDeclaration()!!
|
||||
}
|
||||
|
||||
public fun createIdentifier(name: String): PsiElement {
|
||||
return createSimpleName(name).getIdentifier()!!
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user