From 661d9e95c5682e2158e32fb2da0c07080df0a553 Mon Sep 17 00:00:00 2001 From: subbotin Date: Thu, 27 Nov 2025 13:34:54 +0400 Subject: [PATCH] Completion for java "expression" does't work with DTO as records #245 --- .../expression/JavaExpressionInjector.java | 21 ++++--------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/mapstruct/intellij/expression/JavaExpressionInjector.java b/src/main/java/org/mapstruct/intellij/expression/JavaExpressionInjector.java index 75eb082..ef73892 100644 --- a/src/main/java/org/mapstruct/intellij/expression/JavaExpressionInjector.java +++ b/src/main/java/org/mapstruct/intellij/expression/JavaExpressionInjector.java @@ -20,23 +20,7 @@ import com.intellij.openapi.util.TextRange; import com.intellij.patterns.ElementPattern; import com.intellij.patterns.StandardPatterns; -import com.intellij.psi.PsiAnnotation; -import com.intellij.psi.PsiAnnotationMemberValue; -import com.intellij.psi.PsiAnnotationParameterList; -import com.intellij.psi.PsiClass; -import com.intellij.psi.PsiClassObjectAccessExpression; -import com.intellij.psi.PsiClassType; -import com.intellij.psi.PsiElement; -import com.intellij.psi.PsiField; -import com.intellij.psi.PsiJavaCodeReferenceElement; -import com.intellij.psi.PsiLanguageInjectionHost; -import com.intellij.psi.PsiLiteralExpression; -import com.intellij.psi.PsiMethod; -import com.intellij.psi.PsiNameValuePair; -import com.intellij.psi.PsiParameter; -import com.intellij.psi.PsiReference; -import com.intellij.psi.PsiType; -import com.intellij.psi.PsiTypeParameter; +import com.intellij.psi.*; import com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistry; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiUtil; @@ -190,6 +174,9 @@ else if ( resolved instanceof PsiParameter resolvedPsiParameter ) { else if ( resolved instanceof PsiField resolvedPsiField ) { targetType = resolvedPsiField.getType(); } + else if (resolved instanceof PsiRecordComponent resolvedRecordComponent) { + targetType = resolvedRecordComponent.getType(); + } } } break;