javac-wrapper: refactoring, fixes and tests

This commit is contained in:
baratynskiy
2017-06-27 17:24:10 +03:00
committed by Alexander Baratynskiy
parent 8494e54608
commit 01883a41cb
382 changed files with 42897 additions and 688 deletions
@@ -0,0 +1,55 @@
// FILE: a/b/c.java
package a.b;
public class c {
public void ab_c() {}
}
// FILE: a/b.java
package a;
public class b<T> {
public static class c {
public void a_bc() {}
}
}
// FILE: c/d.java
package c;
import a.b.c;
public class d {
public c getC() { return null; }
}
// FILE: c.kt
import a.b.c
import c.d
fun test(ab_c: c) {
ab_c.ab_c()
val ab_c2: a.b.c = a.b.c()
ab_c2.ab_c()
val ab_c3 = a.b.c()
ab_c3.ab_c()
}
fun test2(ab_c: a.b.c) {
ab_c.<!UNRESOLVED_REFERENCE!>a_bc<!>()
ab_c.ab_c()
}
fun test3() = d().getC()
fun test4() {
val ab_c = test3()
ab_c.ab_c()
val ab_c2 = test3()
ab_c2.<!UNRESOLVED_REFERENCE!>a_bc<!>()
}
@@ -0,0 +1,46 @@
package
public fun test(/*0*/ ab_c: a.b.c): kotlin.Unit
public fun test2(/*0*/ ab_c: a.b.c): kotlin.Unit
public fun test3(): a.b.c!
public fun test4(): kotlin.Unit
package a {
public open class b</*0*/ T : kotlin.Any!> {
public constructor b</*0*/ T : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public open class c {
public constructor c()
public open fun a_bc(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package a.b {
public open class c {
public constructor c()
public open fun ab_c(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
}
package c {
public open class d {
public constructor d()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open fun getC(): a.b.c!
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -0,0 +1,46 @@
// FILE: a/b/c.java
package a.b;
public class c {
public void ab_c() {}
}
// FILE: a/b.java
package a;
public class b {
public void a_b() {}
public static class c {
public void a_bc() {}
}
}
// FILE: d/d.java
package d;
public class d {
public a.b test() { return null; }
public a.b.c test2() { return null; }
}
// FILE: c.kt
fun t() = d.d().test()
fun t2() = d.d().test2()
fun test(a_b: a.b) {
a_b.a_b()
val ab_c = t2()
ab_c.<!UNRESOLVED_REFERENCE!>ab_c<!>()
ab_c.a_bc()
val ab_c2: a.b.c = t2()
ab_c2.<!UNRESOLVED_REFERENCE!>ab_c<!>()
ab_c2.a_bc()
}
fun test2() = t().a_b()
@@ -0,0 +1,48 @@
package
public fun t(): a.b!
public fun t2(): a.b.c!
public fun test(/*0*/ a_b: a.b): kotlin.Unit
public fun test2(): kotlin.Unit
package a {
public open class b {
public constructor b()
public open fun a_b(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public open class c {
public constructor c()
public open fun a_bc(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package a.b {
public open class c {
public constructor c()
public open fun ab_c(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
}
package d {
public open class d {
public constructor d()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun test(): a.b!
public open fun test2(): a.b.c!
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -0,0 +1,47 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// FILE: a/a.java
package a;
public class a {}
// FILE: a/b.java
package a;
public class b {
public void a_b() {}
}
// FILE: test/a.java
package test;
public class a {}
// FILE: test/d.java
package test;
public class d {
public a.b getB() { return null; }
}
// FILE: b.kt
package test
val x = d().<!MISSING_DEPENDENCY_CLASS!>getB<!>()
// FILE: test/c.java
package test;
import a.a;
public class c {
public static a getA() { return null; }
}
// FILE: c.kt
package test
fun foo() {
val a = c.getA()
a.<!UNRESOLVED_REFERENCE!>a<!>
a.<!UNRESOLVED_REFERENCE!>a<!>()
}
@@ -0,0 +1,49 @@
package
package a {
public open class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open class b {
public constructor b()
public open fun a_b(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package test {
public val x: a.b!
public fun foo(): kotlin.Unit
public open class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open class c {
public constructor c()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public open fun getA(): a.a!
}
public open class d {
public constructor d()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open fun getB(): a.b!
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -0,0 +1,55 @@
// FILE: a/b.java
package a;
public class b {
public void a_b() {}
}
// FILE: a.java
public class a {
public static class b {
public void _ab() {}
}
}
// FILE: some/c1.java
package some;
public class c1 {
public a.b test() { return null; }
}
// FILE: a/c2.java
package a;
public class c2 {
public a.b test() { return null; }
}
// FILE: c3.java
public class c3 {
public a.b test() { return null; }
}
// FILE: c1.kt
package some
fun test() {
val a_b = c1().test()
a_b.a_b()
}
// FILE: c2.kt
package a
fun test() {
val a_b = c2().test()
a_b.a_b()
}
// FILE: c3.kt
fun test() {
val _ab = c3().test()
_ab._ab()
}
@@ -0,0 +1,58 @@
package
public fun test(): kotlin.Unit
public open class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public open class b {
public constructor b()
public open fun _ab(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
public open class c3 {
public constructor c3()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun test(): a.b!
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
package a {
public fun test(): kotlin.Unit
public open class b {
public constructor b()
public open fun a_b(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open class c2 {
public constructor c2()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun test(): a.b!
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package some {
public fun test(): kotlin.Unit
public open class c1 {
public constructor c1()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun test(): a.b!
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -0,0 +1,57 @@
// FILE: a/b.java
package a;
public class b {
public void a_b() {}
}
// FILE:some/a.java
package some;
public class a {
public static class b {
public void some_ab() {}
}
}
// FILE: c1.kt
package other
class a {}
fun test(<!UNUSED_PARAMETER!>a_<!>: a.<!UNRESOLVED_REFERENCE!>b<!>) {
val <!UNUSED_VARIABLE!>a_2<!> = a.<!UNRESOLVED_REFERENCE!>b<!>()
}
//FILE: c2.kt
package other2
class a {
class b {
fun other2_ab() {}
}
}
fun test(_ab: a.b) {
_ab.other2_ab()
val _ab2 = a.b()
_ab2.other2_ab()
}
// FILE: c3.kt
package some
fun test(_ab: a.b) {
_ab.some_ab()
val _ab2 = a.b()
_ab2.some_ab()
}
// FILE: c4.kt
package a
fun test(_b: b) {
_b.a_b()
}
@@ -0,0 +1,62 @@
package
package a {
public fun test(/*0*/ _b: a.b): kotlin.Unit
public open class b {
public constructor b()
public open fun a_b(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package other {
public fun test(/*0*/ a_: [ERROR : a.b]): kotlin.Unit
public final class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
package other2 {
public fun test(/*0*/ _ab: other2.a.b): kotlin.Unit
public final class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final class b {
public constructor b()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final fun other2_ab(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
}
package some {
public fun test(/*0*/ _ab: some.a.b): kotlin.Unit
public open class a {
public constructor a()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public open class b {
public constructor b()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun some_ab(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
}