mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java] IDEA-379571 Revert: Improve PsiPackageStatement.getAnnotationList() so it never returns null value
1) git reverts: Improve PsiPackageStatement.getAnnotationList() so it never returns null value 2) Solves merge conflicts in: - community/java/java-impl/src/com/intellij/lang/OuterModelsModificationTracker.java - community/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/MoveAnnotationToPackageInfoFileFix.java 3) bumps STUB_VERSION in - ClassFileStubBuilder.java - JavaFileElementType.java Merge-request: IJ-MR-177519 Merged-by: Marcin Mikosik <marcin.mikosik@jetbrains.com> GitOrigin-RevId: 14ced51685daf90d3b2a8224bf35c8478ed2909f
This commit is contained in:
committed by
intellij-monorepo-bot
parent
91ca142605
commit
55ace90cfb
+2
-1
@@ -73,7 +73,8 @@ final class AnnotationChecker {
|
||||
}
|
||||
|
||||
void checkPackageAnnotationContainingFile(@NotNull PsiPackageStatement statement) {
|
||||
if (statement.getAnnotationList().getAnnotations().length > 0 && !PsiPackage.PACKAGE_INFO_FILE.equals(myVisitor.file().getName())) {
|
||||
PsiModifierList annotationList = statement.getAnnotationList();
|
||||
if (annotationList != null && !PsiPackage.PACKAGE_INFO_FILE.equals(myVisitor.file().getName())) {
|
||||
myVisitor.report(JavaErrorKinds.ANNOTATION_NOT_ALLOWED_ON_PACKAGE.create(statement));
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -104,7 +104,7 @@ public final class JavaErrorKinds {
|
||||
public static final Simple<PsiAnnotation> ANNOTATION_NOT_ALLOWED_IN_PERMIT_LIST = error("annotation.not.allowed.in.permit.list");
|
||||
public static final Simple<PsiPackageStatement> ANNOTATION_NOT_ALLOWED_ON_PACKAGE =
|
||||
error(PsiPackageStatement.class, "annotation.not.allowed.on.package")
|
||||
.withAnchor(PsiPackageStatement::getAnnotationList);
|
||||
.withAnchor(statement -> requireNonNull(statement.getAnnotationList()));
|
||||
public static final Simple<PsiReferenceList> ANNOTATION_MEMBER_THROWS_NOT_ALLOWED =
|
||||
error(PsiReferenceList.class, "annotation.member.may.not.have.throws.list").withAnchor(list -> requireNonNull(list.getFirstChild()));
|
||||
public static final Simple<PsiParameterList> ANNOTATION_MEMBER_MAY_NOT_HAVE_PARAMETERS =
|
||||
|
||||
+2
-1
@@ -1117,7 +1117,8 @@ public final class DefaultJavaErrorFixProvider extends AbstractJavaErrorFixProvi
|
||||
return myFactory.createUnwrapArrayInitializerMemberValueAction(error.psi());
|
||||
});
|
||||
multi(ANNOTATION_NOT_ALLOWED_ON_PACKAGE, error ->
|
||||
List.of(myFactory.createDeleteFix(error.psi().getAnnotationList(), JavaAnalysisBundle.message("intention.text.remove.annotation")),
|
||||
List.of(myFactory.createDeleteFix(requireNonNull(error.psi().getAnnotationList()),
|
||||
JavaAnalysisBundle.message("intention.text.remove.annotation")),
|
||||
new MoveAnnotationToPackageInfoFileFix(error.psi())));
|
||||
fix(ANNOTATION_NOT_ALLOWED_ON_PACKAGE, error ->
|
||||
myFactory.createDeleteFix(error.psi(), JavaAnalysisBundle.message("intention.text.remove.annotation")));
|
||||
|
||||
+10
-4
@@ -30,7 +30,7 @@ public class MoveAnnotationToPackageInfoFileFix extends PsiUpdateModCommandActio
|
||||
PsiPackageStatement packageStatementInPackageInfoFile = PsiTreeUtil.findChildOfType(packageInfoFile, PsiPackageStatement.class);
|
||||
if (packageStatementInPackageInfoFile == null) return null;
|
||||
PsiModifierList missingAnnotations = findMissingAnnotations(packageStatement, packageStatementInPackageInfoFile);
|
||||
if (!missingAnnotations.hasAnnotations()) return null;
|
||||
if (missingAnnotations == null || !missingAnnotations.hasAnnotations()) return null;
|
||||
return Presentation.of(getFamilyName());
|
||||
}
|
||||
|
||||
@@ -71,16 +71,22 @@ public class MoveAnnotationToPackageInfoFileFix extends PsiUpdateModCommandActio
|
||||
packageStatementInPackageInfoFile = (PsiPackageStatement)packageInfoFile.addBefore(copy, packageInfoFile.getFirstChild());
|
||||
}
|
||||
PsiModifierList missingAnnotations = findMissingAnnotations(packageStatement, packageStatementInPackageInfoFile);
|
||||
if (missingAnnotations.getAnnotations().length == 0) return null;
|
||||
if (missingAnnotations == null) return null;
|
||||
PsiModifierList annotationList = packageStatementInPackageInfoFile.getAnnotationList();
|
||||
StreamEx.of(missingAnnotations.getAnnotations()).forEach(annotationList::add);
|
||||
if (annotationList != null) {
|
||||
StreamEx.of(missingAnnotations.getAnnotations()).forEach(annotationList::add);
|
||||
}
|
||||
else {
|
||||
packageStatementInPackageInfoFile.addBefore(missingAnnotations, packageStatementInPackageInfoFile.getFirstChild());
|
||||
}
|
||||
CodeStyleManager.getInstance(packageInfoFile.getProject()).reformat(packageInfoFile);
|
||||
return packageInfoFile;
|
||||
}
|
||||
|
||||
private static @NotNull PsiModifierList findMissingAnnotations(@NotNull PsiPackageStatement packageStatement,
|
||||
private static @Nullable PsiModifierList findMissingAnnotations(@NotNull PsiPackageStatement packageStatement,
|
||||
@NotNull PsiPackageStatement packageStatementInPackageInfoFile) {
|
||||
PsiModifierList annotationList = packageStatementInPackageInfoFile.getAnnotationList();
|
||||
if (annotationList == null) return packageStatement.getAnnotationList();
|
||||
PsiPackageStatement copy = (PsiPackageStatement)packageStatement.copy();
|
||||
StreamEx.of(copy.getAnnotationList().getChildren())
|
||||
.select(PsiAnnotation.class)
|
||||
|
||||
@@ -128,14 +128,14 @@ public class BasicFileParser {
|
||||
private void parsePackageStatement(PsiBuilder builder) {
|
||||
PsiBuilder.Marker statement = builder.mark();
|
||||
|
||||
PsiBuilder.Marker modList = builder.mark();
|
||||
if (builder.getTokenType() != JavaTokenType.PACKAGE_KEYWORD) {
|
||||
myParser.getDeclarationParser().parseAnnotations(builder);
|
||||
}
|
||||
done(modList, myJavaElementTypeContainer.MODIFIER_LIST, builder, myWhiteSpaceAndCommentSetHolder);
|
||||
if (!expect(builder, JavaTokenType.PACKAGE_KEYWORD)) {
|
||||
statement.rollbackTo();
|
||||
return;
|
||||
PsiBuilder.Marker modList = builder.mark();
|
||||
myParser.getDeclarationParser().parseAnnotations(builder);
|
||||
done(modList, myJavaElementTypeContainer.MODIFIER_LIST, builder, myWhiteSpaceAndCommentSetHolder);
|
||||
if (!expect(builder, JavaTokenType.PACKAGE_KEYWORD)) {
|
||||
statement.rollbackTo();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
PsiBuilder.Marker ref = myParser.getReferenceParser().parseJavaCodeReference(builder, true, false, false, false);
|
||||
|
||||
@@ -380,8 +380,11 @@ public class NullableNotNullManagerImpl extends NullableNotNullManager implement
|
||||
if (packageFile instanceof PsiJavaFile javaFile) {
|
||||
PsiPackageStatement stmt = javaFile.getPackageStatement();
|
||||
if (stmt != null) {
|
||||
for (PsiAnnotation annotation : stmt.getAnnotationList().getAnnotations()) {
|
||||
info = info.orElse(checkNullityDefault(annotation, placeTargetTypes, superPackage));
|
||||
PsiModifierList modifierList = stmt.getAnnotationList();
|
||||
if (modifierList != null) {
|
||||
for (PsiAnnotation annotation : modifierList.getAnnotations()) {
|
||||
info = info.orElse(checkNullityDefault(annotation, placeTargetTypes, superPackage));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -312,7 +312,10 @@ public class OuterModelsModificationTracker extends SimpleModificationTracker {
|
||||
private static boolean isAnnotatedPackageStatement(PsiElement psiElement) {
|
||||
if (psiElement instanceof PsiPackageStatement psiPackageStatement) {
|
||||
try {
|
||||
return psiPackageStatement.getAnnotationList().hasAnnotations();
|
||||
PsiModifierList psiModifierList = psiPackageStatement.getAnnotationList();
|
||||
if (psiModifierList != null) {
|
||||
return psiModifierList.hasAnnotations();
|
||||
}
|
||||
}
|
||||
catch (PsiInvalidElementAccessException ignored) {
|
||||
}
|
||||
|
||||
+1
-1
@@ -70,7 +70,7 @@ public final class AnnotatedPackagesSearcher implements QueryExecutor<PsiPackage
|
||||
if (stmt == null) return true;
|
||||
|
||||
final PsiModifierList annotations1 = stmt.getAnnotationList();
|
||||
if (annotations1.getAnnotations().length == 0) return true;
|
||||
if (annotations1 == null) return true;
|
||||
final PsiAnnotation ann = annotations1.findAnnotation(annotationFQN);
|
||||
if (ann == null) return true;
|
||||
|
||||
|
||||
@@ -40,5 +40,5 @@ public interface PsiPackageStatement extends PsiElement {
|
||||
*
|
||||
* @return the modifier list containing the annotations applied to the package statement.
|
||||
*/
|
||||
@NotNull PsiModifierList getAnnotationList();
|
||||
PsiModifierList getAnnotationList();
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ import static com.intellij.psi.compiled.ClassFileDecompilers.Full;
|
||||
public class ClassFileStubBuilder implements BinaryFileStubBuilder.CompositeBinaryFileStubBuilder<Full> {
|
||||
private static final Logger LOG = Logger.getInstance(ClassFileStubBuilder.class);
|
||||
|
||||
public static final int STUB_VERSION = 30;
|
||||
public static final int STUB_VERSION = 31;
|
||||
|
||||
@Override
|
||||
public @NotNull VirtualFileFilter getFileFilter() {
|
||||
|
||||
+12
-11
@@ -4,16 +4,11 @@ package com.intellij.psi.impl.compiled;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.impl.java.stubs.JavaStubElementTypes;
|
||||
import com.intellij.psi.impl.java.stubs.PsiPackageStatementStub;
|
||||
import com.intellij.psi.impl.light.LightModifierList;
|
||||
import com.intellij.psi.impl.source.tree.JavaElementType;
|
||||
import com.intellij.psi.impl.source.tree.TreeElement;
|
||||
import com.intellij.psi.stubs.StubElement;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
public class ClsPackageStatementImpl extends ClsRepositoryPsiElement<PsiPackageStatementStub> implements PsiPackageStatement {
|
||||
|
||||
private final @NotNull String myPackageName;
|
||||
@@ -29,13 +24,16 @@ public class ClsPackageStatementImpl extends ClsRepositoryPsiElement<PsiPackageS
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull PsiModifierList getAnnotationList() {
|
||||
return (PsiModifierList)requireNonNull(getStub().findChildStubByElementType(JavaStubElementTypes.MODIFIER_LIST)).getPsi();
|
||||
public PsiModifierList getAnnotationList() {
|
||||
@SuppressWarnings("unchecked") final StubElement<PsiModifierList> child =
|
||||
(StubElement<PsiModifierList>)getStub().findChildStubByElementType(JavaStubElementTypes.MODIFIER_LIST);
|
||||
return child == null ? null : child.getPsi();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PsiElement @NotNull [] getChildren() {
|
||||
return new PsiElement[]{getAnnotationList()};
|
||||
PsiModifierList list = getAnnotationList();
|
||||
return list == null ? EMPTY_ARRAY : new PsiElement[]{list};
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -46,9 +44,12 @@ public class ClsPackageStatementImpl extends ClsRepositoryPsiElement<PsiPackageS
|
||||
@Override
|
||||
public void appendMirrorText(final int indentLevel, final @NotNull StringBuilder buffer) {
|
||||
if (!myPackageName.isEmpty()) { // an empty package name should not happen for a well-formed class file
|
||||
for (PsiAnnotation annotation : getAnnotationList().getAnnotations()) {
|
||||
appendText(annotation, indentLevel, buffer);
|
||||
buffer.append("\n");
|
||||
PsiModifierList list = getAnnotationList();
|
||||
if (list != null) {
|
||||
for (PsiAnnotation annotation : list.getAnnotations()) {
|
||||
appendText(annotation, indentLevel, buffer);
|
||||
buffer.append("\n");
|
||||
}
|
||||
}
|
||||
buffer.append("package ").append(getPackageName()).append(';');
|
||||
}
|
||||
|
||||
@@ -102,18 +102,17 @@ public class StubBuildingVisitor<T> extends ClassVisitor {
|
||||
}
|
||||
String packageName = !(myParent instanceof PsiFileStub) || name.lastIndexOf('/') == -1 ? "" :
|
||||
name.substring(0, name.lastIndexOf('/')).replace('/', '.');
|
||||
PsiModifierListStubImpl packageModList = null;
|
||||
PsiPackageStatementStub packageStatement = null;
|
||||
if (!packageName.isEmpty()) {
|
||||
PsiPackageStatementStub packageStatement = new PsiPackageStatementStubImpl(myParent, packageName);
|
||||
packageModList = new PsiModifierListStubImpl(packageStatement, 0);
|
||||
packageStatement = new PsiPackageStatementStubImpl(myParent, packageName);
|
||||
}
|
||||
myResult =
|
||||
new PsiClassStubImpl<>(JavaStubElementTypes.CLASS, myParent, fqn == null ? TypeInfo.SimpleTypeInfo.NULL : fqn, shortName, null,
|
||||
stubFlags);
|
||||
myModList = new PsiModifierListStubImpl(myResult, classFlags);
|
||||
if (PsiPackage.PACKAGE_INFO_CLASS.equals(shortName) && packageModList != null) {
|
||||
if (PsiPackage.PACKAGE_INFO_CLASS.equals(shortName)) {
|
||||
// Attach annotations to the package statement
|
||||
myModList = packageModList;
|
||||
myModList = new PsiModifierListStubImpl(packageStatement, 0);
|
||||
}
|
||||
if (isRecord) {
|
||||
myHeaderStub = new PsiRecordHeaderStubImpl(myResult);
|
||||
|
||||
@@ -435,7 +435,7 @@ public class PsiPackageImpl extends PsiPackageBase implements PsiPackage, Querya
|
||||
if (file instanceof PsiJavaFile) {
|
||||
PsiPackageStatement stmt = ((PsiJavaFile)file).getPackageStatement();
|
||||
if (stmt != null) {
|
||||
modifiers.add(stmt.getAnnotationList());
|
||||
ContainerUtil.addIfNotNull(modifiers, stmt.getAnnotationList());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class JavaFileElementType extends IFileElementType {
|
||||
public static final int STUB_VERSION = 65;
|
||||
public static final int STUB_VERSION = 66;
|
||||
|
||||
public JavaFileElementType() {
|
||||
super("java.FILE", JavaLanguage.INSTANCE);
|
||||
|
||||
@@ -158,7 +158,7 @@ public abstract class PsiJavaFileBaseImpl extends PsiFileImpl implements PsiJava
|
||||
private void cleanupBrokenPackageKeyword() {
|
||||
PsiElement child = getFirstChild();
|
||||
while (child instanceof PsiWhiteSpace || child instanceof PsiComment || child instanceof PsiErrorElement) {
|
||||
if (isErrorElementThatContainsPackageStatement(child)) {
|
||||
if (child instanceof PsiErrorElement && child.getFirstChild() != null && child.getFirstChild().textMatches(JavaKeywords.PACKAGE)) {
|
||||
child.delete();
|
||||
break;
|
||||
}
|
||||
@@ -166,17 +166,6 @@ public abstract class PsiJavaFileBaseImpl extends PsiFileImpl implements PsiJava
|
||||
}
|
||||
}
|
||||
|
||||
private static boolean isErrorElementThatContainsPackageStatement(PsiElement element) {
|
||||
if (!(element instanceof PsiErrorElement)) return false;
|
||||
PsiElement firstChild = element.getFirstChild();
|
||||
if (firstChild == null) return false;
|
||||
if (firstChild.textMatches(JavaKeywords.PACKAGE)) return true;
|
||||
if (!(firstChild instanceof PsiModifierList)) return false;
|
||||
PsiElement secondChild = firstChild.getNextSibling();
|
||||
if (secondChild == null) return false;
|
||||
return secondChild.textMatches(JavaKeywords.PACKAGE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PsiImportList getImportList() {
|
||||
return withGreenStubOrAst(
|
||||
|
||||
+2
-2
@@ -55,8 +55,8 @@ public class PsiPackageStatementImpl extends JavaStubPsiElement<PsiPackageStatem
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull PsiModifierList getAnnotationList() {
|
||||
return getRequiredStubOrPsiChild(JavaStubElementTypes.MODIFIER_LIST, PsiModifierList.class);
|
||||
public PsiModifierList getAnnotationList() {
|
||||
return getStubOrPsiChild(JavaStubElementTypes.MODIFIER_LIST, PsiModifierList.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -102,14 +102,14 @@ open class FileParser(private val myParser: JavaParser) {
|
||||
private fun parsePackageStatement(builder: SyntaxTreeBuilder) {
|
||||
val statement = builder.mark()
|
||||
|
||||
val modList = builder.mark()
|
||||
if (builder.tokenType != JavaSyntaxTokenType.PACKAGE_KEYWORD) {
|
||||
myParser.declarationParser.parseAnnotations(builder)
|
||||
}
|
||||
JavaParserUtil.done(modList, JavaSyntaxElementType.MODIFIER_LIST, myParser.languageLevel)
|
||||
if (!builder.expect(JavaSyntaxTokenType.PACKAGE_KEYWORD)) {
|
||||
statement.rollbackTo()
|
||||
return
|
||||
val modList = builder.mark()
|
||||
myParser.declarationParser.parseAnnotations(builder)
|
||||
JavaParserUtil.done(modList, JavaSyntaxElementType.MODIFIER_LIST, myParser.languageLevel)
|
||||
if (!builder.expect(JavaSyntaxTokenType.PACKAGE_KEYWORD)) {
|
||||
statement.rollbackTo()
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
val ref = myParser.referenceParser.parseJavaCodeReference(builder, true, false, false, false)
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [pack]
|
||||
PsiPackageStatementStub[pack]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[name=Modifiers fqn=pack.Modifiers]
|
||||
PsiModifierListStub[mask=1]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [org.jetbrains.annotations]
|
||||
PsiPackageStatementStub[org.jetbrains.annotations]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[interface annotation name=Nullable fqn=org.jetbrains.annotations.Nullable]
|
||||
PsiModifierListStub[mask=1025]
|
||||
PsiAnnotationStub[@java.lang.annotation.Documented]
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
PsiJavaFileStub [com.mylib]
|
||||
PsiPackageStatementStub[com.mylib]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiAnnotationStub[@org.jspecify.annotations.NullMarked]
|
||||
PsiClassStub[interface name=package-info fqn=com.mylib.package-info]
|
||||
PsiModifierListStub[mask=5120]
|
||||
PsiTypeParameterListStub
|
||||
PsiRefListStub[EXTENDS_LIST:]
|
||||
PsiRefListStub[IMPLEMENTS_LIST:]
|
||||
@@ -1,8 +0,0 @@
|
||||
PsiJavaFileStub [com.mylib]
|
||||
PsiPackageStatementStub[com.mylib]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[interface name=package-info fqn=com.mylib.package-info]
|
||||
PsiModifierListStub[mask=5120]
|
||||
PsiTypeParameterListStub
|
||||
PsiRefListStub[EXTENDS_LIST:]
|
||||
PsiRefListStub[IMPLEMENTS_LIST:]
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [junit.framework]
|
||||
PsiPackageStatementStub[junit.framework]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[name=TestSuite fqn=junit.framework.TestSuite]
|
||||
PsiModifierListStub[mask=1]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [java.util.concurrent]
|
||||
PsiPackageStatementStub[java.util.concurrent]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[enum name=TimeUnit fqn=java.util.concurrent.TimeUnit]
|
||||
PsiModifierListStub[mask=1025]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [java.util]
|
||||
PsiPackageStatementStub[java.util]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[name=Collections fqn=java.util.Collections]
|
||||
PsiModifierListStub[mask=1]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [java.util]
|
||||
PsiPackageStatementStub[java.util]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[name=HashMap fqn=java.util.HashMap]
|
||||
PsiModifierListStub[mask=1]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [java.util]
|
||||
PsiPackageStatementStub[java.util]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[interface name=List fqn=java.util.List]
|
||||
PsiModifierListStub[mask=1025]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
PsiJavaFileStub [java.util]
|
||||
PsiPackageStatementStub[java.util]
|
||||
PsiModifierListStub[mask=0]
|
||||
PsiClassStub[interface name=Map fqn=java.util.Map]
|
||||
PsiModifierListStub[mask=1025]
|
||||
PsiTypeParameterListStub
|
||||
|
||||
BIN
Binary file not shown.
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:ExtraOpeningBraceInMethod.java
|
||||
PsiPackageStatement:foo
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:foo
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:ImplicitClass3.java
|
||||
PsiPackageStatement:pack1.pack2
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:pack1.pack2
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:ImplicitClass4.java
|
||||
PsiPackageStatement:pack1.pack2
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:pack1.pack2
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:ImplicitClass5.java
|
||||
PsiErrorElement:'class' or 'interface' expected
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiImportList
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
ERROR_ELEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
IMPORT_LIST
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:IncompleteAnnotation.java
|
||||
PsiPackageStatement:foo
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:foo
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:BindBeforeClass1.java
|
||||
PsiPackageStatement:p
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:p
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:BindBeforeClass4.java
|
||||
PsiPackageStatement:p
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:p
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:MarkdownWithDocCommentAfterMarkdown.java
|
||||
PsiPackageStatement:test.pkg
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:test.pkg
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:MarkdownWithDocCommentBeforeMarkdown.java
|
||||
PsiPackageStatement:test.pkg
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:test.pkg
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:OnlyMarkdownAfterMarkdown.java
|
||||
PsiPackageStatement:test.pkg
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:test.pkg
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:OnlyMarkdownBeforeMarkdown.java
|
||||
PsiPackageStatement:test.pkg
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:test.pkg
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
java.FILE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -6,8 +6,6 @@ PsiJavaFile:BindDocComment1.java
|
||||
PsiDocToken:DOC_COMMENT_END('*/')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiPackageStatement:a
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:a
|
||||
|
||||
@@ -6,8 +6,6 @@ test.java.file
|
||||
DOC_COMMENT_END
|
||||
WHITE_SPACE
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:ExtraSemicolons.java
|
||||
PsiPackageStatement:p
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:p
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:FileWithClass.java
|
||||
PsiPackageStatement:a
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:a
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:Package.java
|
||||
PsiPackageStatement:a.b.c
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:a.b.c
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:UnclosedPackage0.java
|
||||
PsiErrorElement:'class' or 'interface' expected
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiImportList
|
||||
<empty list>
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
ERROR_ELEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
IMPORT_LIST
|
||||
<empty list>
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:UnclosedPackage1.java
|
||||
PsiPackageStatement:a
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:a
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
PsiJavaFile:Packaged.java
|
||||
PsiPackageStatement:pkg
|
||||
PsiModifierList:
|
||||
<empty list>
|
||||
PsiKeyword:package('package')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiJavaCodeReferenceElement:pkg
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
test.java.file
|
||||
PACKAGE_STATEMENT
|
||||
MODIFIER_LIST
|
||||
<empty list>
|
||||
PACKAGE_KEYWORD
|
||||
WHITE_SPACE
|
||||
JAVA_CODE_REFERENCE
|
||||
|
||||
@@ -50,8 +50,7 @@ public class ClsStubBuilderTest extends LightJavaCodeInsightTestCase {
|
||||
|
||||
public void testModifiers() { doTest("../repo/pack/" + getTestName(false)); }
|
||||
public void testModuleInfo() { doTest("module-info"); }
|
||||
public void testPackageInfoWithAnnotations() { doTest("packageInfoWithAnnotations/package-info"); }
|
||||
public void testPackageInfoWithoutAnnotations() { doTest("packageInfoWithoutAnnotations/package-info"); }
|
||||
public void testPackageInfo() { doTest("package-info"); }
|
||||
|
||||
private void doClassTest(String className) {
|
||||
PsiClass aClass = getJavaFacade().findClass(className);
|
||||
|
||||
@@ -64,7 +64,6 @@ public class JavaStubBuilderTest extends LightIdeaTestCase {
|
||||
"""
|
||||
PsiJavaFileStub [p]
|
||||
PACKAGE_STATEMENT:PsiPackageStatementStub[p]
|
||||
MODIFIER_LIST:PsiModifierListStub[mask=0]
|
||||
IMPORT_LIST:PsiImportListStub
|
||||
IMPORT_STATEMENT:PsiImportStatementStub[a.b]
|
||||
IMPORT_STATIC_STATEMENT:PsiImportStatementStub[static c.d.*]
|
||||
@@ -83,7 +82,6 @@ public class JavaStubBuilderTest extends LightIdeaTestCase {
|
||||
"""
|
||||
PsiJavaFileStub [p]
|
||||
PACKAGE_STATEMENT:PsiPackageStatementStub[p]
|
||||
MODIFIER_LIST:PsiModifierListStub[mask=0]
|
||||
IMPORT_LIST:PsiImportListStub
|
||||
CLASS:PsiClassStub[name=A fqn=p.A]
|
||||
MODIFIER_LIST:PsiModifierListStub[mask=0]
|
||||
|
||||
Reference in New Issue
Block a user