Introduce experimental -Xuse-javac compilation mode
In this mode, javac AST and Symbol files are used during Kotlin compilation instead of PSI / binary stuff. Later, they are reused for Java file compilation. javac in this mode is integrated into kotlinc.
This commit is contained in:
committed by
Mikhail Glukhikh
parent
c9a04fe1e2
commit
5eea3b6569
@@ -0,0 +1,39 @@
|
||||
package test
|
||||
|
||||
private fun getJavaInner(): test.JavaClass2.JavaInner!
|
||||
private fun getKotlinInner(): test.KotlinClass.KotlinInner!
|
||||
private fun getKotlinInner3(): test.KotlinInterface.KotlinInner2.KotlinInner3!
|
||||
|
||||
public/*package*/ open class JavaClass2 {
|
||||
public/*package*/ constructor JavaClass2()
|
||||
|
||||
public/*package*/ open class JavaInner {
|
||||
public/*package*/ constructor JavaInner()
|
||||
}
|
||||
}
|
||||
|
||||
private open class KotlinClass : test.KotlinInterface.KotlinInner2 {
|
||||
public constructor KotlinClass()
|
||||
|
||||
public final inner class KotlinInner {
|
||||
public constructor KotlinInner()
|
||||
}
|
||||
}
|
||||
|
||||
private interface KotlinInterface {
|
||||
|
||||
public open class KotlinInner2 : test.JavaClass2 {
|
||||
public constructor KotlinInner2()
|
||||
|
||||
public final class KotlinInner3 {
|
||||
public constructor KotlinInner3()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public open class UseKotlinInner : test.KotlinClass {
|
||||
public constructor UseKotlinInner()
|
||||
public/*package*/ open fun getJavaInner(): test.JavaClass2.JavaInner!
|
||||
public/*package*/ open fun getKotlinInner(): test.KotlinClass.KotlinInner!
|
||||
public/*package*/ open fun getKotlinInner3(): test.KotlinInterface.KotlinInner2.KotlinInner3!
|
||||
}
|
||||
Reference in New Issue
Block a user