Declare Variable, Add type annotation action for Introduce Variable feature.
This commit is contained in:
@@ -137,4 +137,9 @@ public class JetProperty extends JetTypeParameterListOwner implements JetModifie
|
||||
public ASTNode getValOrVarNode() {
|
||||
return getNode().findChildByType(TokenSet.create(VAL_KEYWORD, VAR_KEYWORD));
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public ASTNode getEqualsSign() {
|
||||
return getNode().findChildByType(TokenSet.create(EQ));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package org.jetbrains.jet.lang.psi;
|
||||
|
||||
import com.intellij.lang.ASTNode;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.psi.PsiElement;
|
||||
@@ -24,6 +25,7 @@ import com.intellij.util.LocalTimeCounter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.jet.lexer.JetKeywordToken;
|
||||
import org.jetbrains.jet.lexer.JetTokens;
|
||||
import org.jetbrains.jet.plugin.JetFileType;
|
||||
|
||||
import java.util.List;
|
||||
@@ -32,6 +34,16 @@ import java.util.List;
|
||||
* @author max
|
||||
*/
|
||||
public class JetPsiFactory {
|
||||
public static ASTNode createValNode(Project project) {
|
||||
JetProperty property = createProperty(project, "val x = 1");
|
||||
return property.getValOrVarNode();
|
||||
}
|
||||
|
||||
public static ASTNode createVarNode(Project project) {
|
||||
JetProperty property = createProperty(project, "var x = 1");
|
||||
return property.getValOrVarNode();
|
||||
}
|
||||
|
||||
public static JetExpression createExpression(Project project, String text) {
|
||||
JetProperty property = createProperty(project, "val x = " + text);
|
||||
return property.getInitializer();
|
||||
@@ -48,6 +60,11 @@ public class JetPsiFactory {
|
||||
return Pair.create(property.findElementAt(5), property.findElementAt(7));
|
||||
}
|
||||
|
||||
public static ASTNode createColonNode(Project project) {
|
||||
JetProperty property = createProperty(project, "val x: Int");
|
||||
return property.getNode().findChildByType(JetTokens.COLON);
|
||||
}
|
||||
|
||||
public static PsiElement createWhiteSpace(Project project) {
|
||||
return createWhiteSpace(project, " ");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user