Stubs for JetPackageDirective

This commit is contained in:
Pavel V. Talanov
2014-04-15 16:13:55 +04:00
parent 16f4477c38
commit cf015f2526
3 changed files with 11 additions and 2 deletions
@@ -145,7 +145,7 @@ public interface JetNodeTypes {
JetNodeType WHEN_CONDITION_IS_PATTERN = new JetNodeType("WHEN_CONDITION_IS_PATTERN", JetWhenConditionIsPattern.class);
JetNodeType WHEN_CONDITION_EXPRESSION = new JetNodeType("WHEN_CONDITION_WITH_EXPRESSION", JetWhenConditionWithExpression.class);
JetNodeType PACKAGE_DIRECTIVE = new JetNodeType("PACKAGE_DIRECTIVE", JetPackageDirective.class);
IElementType PACKAGE_DIRECTIVE = JetStubElementTypes.PACKAGE_DIRECTIVE;
// SCRIPT: script node type
JetNodeType SCRIPT = new JetNodeType("SCRIPT", JetScript.class);
@@ -22,6 +22,8 @@ import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.psiUtil.PsiUtilPackage;
import org.jetbrains.jet.lang.psi.stubs.PsiJetPlaceHolderStub;
import org.jetbrains.jet.lang.psi.stubs.elements.JetStubElementTypes;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.lang.resolve.name.SpecialNames;
@@ -29,13 +31,17 @@ import org.jetbrains.jet.lang.resolve.name.SpecialNames;
import java.util.Collections;
import java.util.List;
public class JetPackageDirective extends JetExpressionImpl implements JetReferenceExpression {
public class JetPackageDirective extends JetExpressionImplStub<PsiJetPlaceHolderStub<JetPackageDirective>> implements JetReferenceExpression {
private String qualifiedNameCache = null;
public JetPackageDirective(@NotNull ASTNode node) {
super(node);
}
public JetPackageDirective(@NotNull PsiJetPlaceHolderStub<JetPackageDirective> stub) {
super(stub, JetStubElementTypes.PACKAGE_DIRECTIVE);
}
// This should be either JetSimpleNameExpression, or JetDotQualifiedExpression
@Nullable
public JetExpression getPackageNameExpression() {
@@ -54,6 +54,9 @@ public interface JetStubElementTypes {
JetImportDirectiveElementType IMPORT_DIRECTIVE = new JetImportDirectiveElementType("IMPORT_DIRECTIVE");
JetPlaceHolderStubElementType<JetPackageDirective> PACKAGE_DIRECTIVE =
new JetPlaceHolderStubElementType<JetPackageDirective>("PACKAGE_DIRECTIVE", JetPackageDirective.class);
JetModifierListElementType<JetDeclarationModifierList> MODIFIER_LIST =
new JetModifierListElementType<JetDeclarationModifierList>("MODIFIER_LIST", JetDeclarationModifierList.class);