mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-18 20:41:22 +07:00
Java: add synthetic default constructor on resolve (IDEA-376799)
GitOrigin-RevId: 71d783efd5095b0995ac1788863c8a50de759f77
This commit is contained in:
committed by
intellij-monorepo-bot
parent
f0b97cbcd3
commit
cd8ada5c65
@@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.codeInsight;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
@@ -6,6 +6,7 @@ import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.util.Computable;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.augment.PsiExtensionMethod;
|
||||
import com.intellij.psi.impl.light.LightDefaultConstructor;
|
||||
import com.intellij.psi.impl.light.LightRecordCanonicalConstructor;
|
||||
import com.intellij.psi.impl.light.LightRecordMember;
|
||||
import com.intellij.psi.javadoc.PsiDocTag;
|
||||
@@ -161,6 +162,9 @@ public class JavaTargetElementEvaluator extends TargetElementEvaluatorEx2 implem
|
||||
if (refElement instanceof LightRecordCanonicalConstructor) {
|
||||
return ((LightRecordCanonicalConstructor)refElement).getContainingClass();
|
||||
}
|
||||
if (refElement instanceof LightDefaultConstructor def) {
|
||||
return def.getContainingClass();
|
||||
}
|
||||
}
|
||||
return super.adjustReferenceOrReferencedElement(file, editor, offset, flags, refElement);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.siyeh.ig.dependency;
|
||||
|
||||
import com.intellij.codeInsight.intention.IntentionAction;
|
||||
@@ -138,6 +138,7 @@ public final class SuspiciousPackagePrivateAccessInspection extends AbstractBase
|
||||
}
|
||||
|
||||
private void checkPackageLocalAccess(@NotNull UElement sourceNode, PsiJvmMember targetElement, final String accessType) {
|
||||
if (targetElement instanceof SyntheticElement) return;
|
||||
PsiElement sourcePsi = sourceNode.getSourcePsi();
|
||||
if (sourcePsi != null) {
|
||||
SuspiciousPackagePrivateAccess suspiciousAccess = verifyPackagePrivateAccess(sourcePsi, targetElement);
|
||||
@@ -164,6 +165,7 @@ public final class SuspiciousPackagePrivateAccessInspection extends AbstractBase
|
||||
}
|
||||
|
||||
private void checkOverridePackageLocal(@NotNull UMethod sourceNode, @NotNull PsiJvmMember targetElement) {
|
||||
if (targetElement instanceof SyntheticElement) return;
|
||||
PsiElement sourcePsi = sourceNode.getSourcePsi();
|
||||
PsiElement nameIdentifier = UElementKt.getSourcePsiElement(sourceNode.getUastAnchor());
|
||||
if (sourcePsi != null && nameIdentifier != null && targetElement.hasModifier(JvmModifier.PACKAGE_LOCAL)) {
|
||||
|
||||
Reference in New Issue
Block a user