mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 11:53:49 +07:00
[lombok] IDEA-313324 Cannot resolve the staticConstructor of Lombok @Value
GitOrigin-RevId: b1f37499752fa34d1f906f1aa30fea98860ba643
This commit is contained in:
committed by
intellij-monorepo-bot
parent
e8615b4f7f
commit
2cc97a1535
@@ -1,6 +1,7 @@
|
||||
package de.plushnikov.intellij.plugin.processor.clazz;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.*;
|
||||
import de.plushnikov.intellij.plugin.LombokClassNames;
|
||||
import de.plushnikov.intellij.plugin.problem.ProblemProcessingSink;
|
||||
@@ -54,6 +55,10 @@ public class DataProcessor extends AbstractClassProcessor {
|
||||
protected Collection<String> getNamesOfPossibleGeneratedElements(@NotNull PsiClass psiClass, @NotNull PsiAnnotation psiAnnotation) {
|
||||
Collection<String> result = new ArrayList<>();
|
||||
|
||||
final String staticConstructorName = PsiAnnotationUtil.getStringAnnotationValue(psiAnnotation, "staticConstructor", "");
|
||||
if(StringUtil.isNotEmpty(staticConstructorName)) {
|
||||
result.add(staticConstructorName);
|
||||
}
|
||||
result.addAll(getNoArgsConstructorProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
result.addAll(getToStringProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
result.addAll(getEqualsAndHashCodeProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package de.plushnikov.intellij.plugin.processor.clazz;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.*;
|
||||
import de.plushnikov.intellij.plugin.LombokClassNames;
|
||||
import de.plushnikov.intellij.plugin.problem.ProblemProcessingSink;
|
||||
@@ -51,6 +52,10 @@ public class ValueProcessor extends AbstractClassProcessor {
|
||||
protected Collection<String> getNamesOfPossibleGeneratedElements(@NotNull PsiClass psiClass, @NotNull PsiAnnotation psiAnnotation) {
|
||||
Collection<String> result = new ArrayList<>();
|
||||
|
||||
final String staticConstructorName = PsiAnnotationUtil.getStringAnnotationValue(psiAnnotation, "staticConstructor", "");
|
||||
if(StringUtil.isNotEmpty(staticConstructorName)) {
|
||||
result.add(staticConstructorName);
|
||||
}
|
||||
result.addAll(getNoArgsConstructorProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
result.addAll(getToStringProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
result.addAll(getEqualsAndHashCodeProcessor().getNamesOfPossibleGeneratedElements(psiClass, psiAnnotation));
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package de.plushnikov.intellij.plugin.highlights;
|
||||
|
||||
public class StaticConstructorHighlightTest extends AbstractLombokHighlightsTest {
|
||||
|
||||
@Override
|
||||
protected String getBasePath() {
|
||||
return super.getBasePath() + "/staticConstructor";
|
||||
}
|
||||
|
||||
public void testDataDto() {
|
||||
doTest();
|
||||
}
|
||||
|
||||
public void testValueDto() {
|
||||
doTest();
|
||||
}
|
||||
}
|
||||
@@ -7,7 +7,7 @@ public final class ValueStaticConstructor {
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
final ValueStaticConstructor test = new ValueStaticConstructor.of(1);
|
||||
final ValueStaticConstructor test = ValueStaticConstructor.of(1);
|
||||
System.out.println(test);
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ public class ValueStaticConstructor {
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
final ValueStaticConstructor test = new ValueStaticConstructor.of(1);
|
||||
final ValueStaticConstructor test = ValueStaticConstructor.of(1);
|
||||
System.out.println(test);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
import lombok.Data;
|
||||
|
||||
@Data(staticConstructor = "o3f")
|
||||
public class DataDto {
|
||||
private final int someInt;
|
||||
public static void main(String[] args) {
|
||||
DataDto.o3f(2);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
import lombok.Value;
|
||||
|
||||
@Value(staticConstructor = "o3f")
|
||||
public class ValueDto {
|
||||
private int someInt;
|
||||
public static void main(String[] args) {
|
||||
ValueDto.o3f(2);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user