Fix conversion of Java class literals
This commit is contained in:
@@ -28,6 +28,6 @@ public class ClassObjectAccessExpression extends Expression {
|
|||||||
@NotNull
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public String toKotlin() {
|
public String toKotlin() {
|
||||||
return "getJavaClass" + "<" + myTypeElement.toKotlin() + ">";
|
return "javaClass" + "<" + myTypeElement.toKotlin() + ">()";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,10 @@ public class TypeElement extends Element {
|
|||||||
myType = type;
|
myType = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Type getMyType() {
|
||||||
|
return myType;
|
||||||
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public String toKotlin() {
|
public String toKotlin() {
|
||||||
|
|||||||
@@ -159,7 +159,11 @@ public class ExpressionVisitor extends StatementVisitor {
|
|||||||
@Override
|
@Override
|
||||||
public void visitClassObjectAccessExpression(@NotNull PsiClassObjectAccessExpression expression) {
|
public void visitClassObjectAccessExpression(@NotNull PsiClassObjectAccessExpression expression) {
|
||||||
super.visitClassObjectAccessExpression(expression);
|
super.visitClassObjectAccessExpression(expression);
|
||||||
myResult = new ClassObjectAccessExpression(getConverter().elementToElement(expression.getOperand()));
|
|
||||||
|
|
||||||
|
TypeElement typeElement = (TypeElement) getConverter().elementToElement(expression.getOperand());
|
||||||
|
typeElement.getMyType().convertedToNotNull();
|
||||||
|
myResult = new ClassObjectAccessExpression(typeElement);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
getJavaClass<Any?>
|
javaClass<Any>()
|
||||||
@@ -1 +1 @@
|
|||||||
getJavaClass<String?>
|
javaClass<String>()
|
||||||
@@ -1 +1 @@
|
|||||||
var constrArgTypes : Array<Class<*>?>? = array<Class<*>?>(getJavaClass<Array<String?>?>, getJavaClass<String?>)
|
var constrArgTypes : Array<Class<*>?>? = array<Class<*>?>(javaClass<Array<String?>>(), javaClass<String>())
|
||||||
Reference in New Issue
Block a user