Fix codegen predictor for properties and property accessors
This commit is contained in:
@@ -61,6 +61,9 @@ public final class PsiCodegenPredictor {
|
|||||||
// TODO: Method won't work for declarations inside companion objects
|
// TODO: Method won't work for declarations inside companion objects
|
||||||
// TODO: Method won't give correct class name for traits implementations
|
// TODO: Method won't give correct class name for traits implementations
|
||||||
|
|
||||||
|
if (declaration instanceof KtPropertyAccessor) {
|
||||||
|
return getPredefinedJvmInternalName(((KtPropertyAccessor) declaration).getProperty(), fileClassesProvider);
|
||||||
|
}
|
||||||
KtDeclaration parentDeclaration = KtStubbedPsiUtil.getContainingDeclaration(declaration);
|
KtDeclaration parentDeclaration = KtStubbedPsiUtil.getContainingDeclaration(declaration);
|
||||||
|
|
||||||
String parentInternalName;
|
String parentInternalName;
|
||||||
@@ -73,8 +76,8 @@ public final class PsiCodegenPredictor {
|
|||||||
else {
|
else {
|
||||||
KtFile containingFile = declaration.getContainingKtFile();
|
KtFile containingFile = declaration.getContainingKtFile();
|
||||||
|
|
||||||
if (declaration instanceof KtNamedFunction) {
|
if (declaration instanceof KtNamedFunction || declaration instanceof KtProperty) {
|
||||||
Name name = ((KtNamedFunction) declaration).getNameAsName();
|
Name name = ((KtNamedDeclaration) declaration).getNameAsName();
|
||||||
return name == null ? null : FileClasses.getFileClassInternalName(fileClassesProvider, containingFile) + "$" + name.asString();
|
return name == null ? null : FileClasses.getFileClassInternalName(fileClassesProvider, containingFile) + "$" + name.asString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user