Additional fixes for consistent parent conversion

This commit is contained in:
Dmitry Jemerov
2017-10-06 17:21:07 +02:00
parent bde7a657cf
commit 703d053157
5 changed files with 91 additions and 11 deletions
@@ -0,0 +1,39 @@
UFile (package = )
UClass (name = Callback)
UAnnotationMethod (name = onError)
UParameter (name = throwable)
UAnnotation (fqName = org.jetbrains.annotations.NotNull)
UClass (name = Model)
UAnnotationMethod (name = crashMe)
UParameter (name = clazz)
UAnnotation (fqName = org.jetbrains.annotations.NotNull)
UParameter (name = factory)
UAnnotation (fqName = org.jetbrains.annotations.NotNull)
UBlockExpression
UThrowExpression
UCallExpression (kind = UastCallKind(name='constructor_call'), argCount = 0))
UIdentifier (Identifier (UnsupportedOperationException))
USimpleNameReferenceExpression (identifier = <init>)
UAnnotationMethod (name = Model)
UBlockExpression
UBlockExpression
UCallExpression (kind = UastCallKind(name='method_call'), argCount = 2))
UIdentifier (Identifier (crashMe))
USimpleNameReferenceExpression (identifier = crashMe)
UQualifiedReferenceExpression
UClassLiteralExpression
USimpleNameReferenceExpression (identifier = java)
ULambdaExpression
UBlockExpression
UObjectLiteralExpression
UClass (name = null)
UAnnotationMethod (name = onError)
UParameter (name = throwable)
UAnnotation (fqName = org.jetbrains.annotations.NotNull)
UBlockExpression
UThrowExpression
UCallExpression (kind = UastCallKind(name='constructor_call'), argCount = 1))
UIdentifier (Identifier (UnsupportedOperationException))
USimpleNameReferenceExpression (identifier = <init>)
ULiteralExpression (value = "")
UAnnotationMethod (name = Model$1$1)
@@ -0,0 +1,20 @@
public abstract interface Callback {
public abstract fun onError(throwable: java.lang.Throwable) : void = UastEmptyExpression
}
public final class Model {
public final fun crashMe(clazz: java.lang.Class<T>, factory: kotlin.jvm.functions.Function0<? extends T>) : void {
throw <init>()
}
public fun Model() {
{
crashMe(Callback.java, {
anonymous object : Callback {
override fun onError(throwable: Throwable) {
throw UnsupportedOperationException("")
}
}
})
}
}
}