diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaClassImpl.java b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaClassImpl.java index d7f9e5d13dd..06cdb56f763 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaClassImpl.java +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaClassImpl.java @@ -122,7 +122,14 @@ public class JavaClassImpl extends JavaClassifierImpl implements JavaC @Override @NotNull public Collection getConstructors() { - return constructors(getPsi().getConstructors()); + return constructors(KotlinPackage.filter(getPsi().getConstructors(), new Function1() { + @Override + public Boolean invoke(PsiMethod method) { + // See for example org.jetbrains.plugins.scala.lang.psi.light.ScFunctionWrapper, + // which is present in getConstructors(), but its isConstructor() returns false + return method.isConstructor(); + } + })); } @Override diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaElementCollectionFromPsiArrayUtil.java b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaElementCollectionFromPsiArrayUtil.java index f4767910b58..28c0b8efd11 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaElementCollectionFromPsiArrayUtil.java +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/structure/impl/JavaElementCollectionFromPsiArrayUtil.java @@ -178,7 +178,7 @@ public class JavaElementCollectionFromPsiArrayUtil { } @NotNull - public static Collection constructors(@NotNull PsiMethod[] methods) { + public static Collection constructors(@NotNull Iterable methods) { return convert(methods, Factories.CONSTRUCTORS); }