Fixed bug in join lines

This commit is contained in:
Valentin Kipyatkov
2014-10-01 14:48:06 +04:00
parent c6f10ea219
commit c0db84331e
7 changed files with 49 additions and 13 deletions
@@ -33,7 +33,6 @@ import org.jetbrains.jet.lexer.JetTokens;
import java.util.List;
import static org.jetbrains.jet.JetNodeTypes.PROPERTY_ACCESSOR;
import static org.jetbrains.jet.JetNodeTypes.PROPERTY_DELEGATE;
import static org.jetbrains.jet.lexer.JetTokens.*;
@@ -233,6 +232,34 @@ public class JetProperty extends JetTypeParameterListOwnerStub<PsiJetPropertyStu
return hasDelegateExpression() || hasInitializer();
}
@Nullable
public JetExpression setInitializer(@Nullable JetExpression initializer) {
JetExpression oldInitializer = getInitializer();
if (oldInitializer != null) {
if (initializer != null) {
return (JetExpression) oldInitializer.replace(initializer);
}
else {
deleteChildRange(findChildByType(EQ), oldInitializer);
return null;
}
}
else {
if (initializer != null) {
PsiElement addAfter = getTypeRef();
if (addAfter == null) {
addAfter = getNameIdentifier();
}
PsiElement eq = addAfter(new JetPsiFactory(getProject()).createEQ(), addAfter);
return (JetExpression) addAfter(initializer, eq);
}
else {
return null;
}
}
}
@Nullable
public JetExpression getDelegateExpressionOrInitializer() {
JetExpression expression = getDelegateExpression();