diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetDeclaration.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetDeclaration.java index 072febb4094..392cbfd6e21 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetDeclaration.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetDeclaration.java @@ -18,7 +18,6 @@ package org.jetbrains.jet.lang.psi; import com.intellij.lang.ASTNode; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.JetNodeTypes; import org.jetbrains.jet.lexer.JetToken; @@ -30,13 +29,14 @@ public abstract class JetDeclaration extends JetExpression implements JetModifie super(node); } - @Nullable + @Override public JetModifierList getModifierList() { return (JetModifierList) findChildByType(JetNodeTypes.MODIFIER_LIST); } + @Override public boolean hasModifier(JetToken modifier) { JetModifierList modifierList = getModifierList(); - return modifierList == null ? false : modifierList.hasModifier(modifier); + return modifierList != null && modifierList.hasModifier(modifier); } } diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetTypeProjection.java b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetTypeProjection.java index 8bd96a86dba..f059f90197b 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetTypeProjection.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/psi/JetTypeProjection.java @@ -21,16 +21,28 @@ import com.intellij.psi.PsiElement; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.JetNodeTypes; +import org.jetbrains.jet.lexer.JetToken; import org.jetbrains.jet.lexer.JetTokens; /** * @author abreslav */ -public class JetTypeProjection extends JetDeclaration { +public class JetTypeProjection extends JetElement implements JetModifierListOwner { public JetTypeProjection(@NotNull ASTNode node) { super(node); } + @Override + public JetModifierList getModifierList() { + return (JetModifierList) findChildByType(JetNodeTypes.MODIFIER_LIST); + } + + @Override + public boolean hasModifier(JetToken modifier) { + JetModifierList modifierList = getModifierList(); + return modifierList != null && modifierList.hasModifier(modifier); + } + @NotNull public JetProjectionKind getProjectionKind() { ASTNode projectionNode = getProjectionNode();