Modifiers checking for type aliases.

Exposed type checking for type aliases.
This commit is contained in:
Dmitry Petrov
2016-06-10 13:10:53 +03:00
parent 139e219ebd
commit 0ff677596f
10 changed files with 142 additions and 3 deletions
@@ -0,0 +1,43 @@
typealias L<T> = List<T>
class Outer {
private class Private
protected class Protected
internal class Internal
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate1<!> = Private
protected typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate2<!> = Private
internal typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate3<!> = Private
private typealias TestPrivate4 = Private
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate5<!> = L<Private>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate6<!> = L<TestPrivate1>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestProtected1<!> = Protected
protected typealias TestProtected2 = Protected
internal typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestProtected3<!> = Protected
private typealias TestProtected4 = Protected
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestProtected5<!> = L<Protected>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestProtected6<!> = L<TestProtected1>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal1<!> = Internal
protected typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal2<!> = Internal
internal typealias TestInternal3 = Internal
private typealias TestInternal4 = Internal
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal5<!> = L<Internal>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal6<!> = L<TestInternal1>
}
private class Private
internal class Internal
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate1<!> = Private
internal typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate2<!> = Private
private typealias TestPrivate3 = Private
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate4<!> = L<Private>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestPrivate5<!> = L<TestPrivate1>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal1<!> = Internal
internal typealias TestInternal2 = Internal
private typealias TestInternal3 = Internal
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal4<!> = L<Internal>
typealias <!EXPOSED_TYPEALIAS_EXPANDED_TYPE!>TestInternal5<!> = L<TestInternal1>
@@ -0,0 +1,73 @@
package
public typealias L</*0*/ T> = kotlin.collections.List<T>
public typealias TestInternal1 = Internal
internal typealias TestInternal2 = Internal
private typealias TestInternal3 = Internal
public typealias TestInternal4 = L<Internal>
public typealias TestInternal5 = L<TestInternal1>
public typealias TestPrivate1 = Private
internal typealias TestPrivate2 = Private
private typealias TestPrivate3 = Private
public typealias TestPrivate4 = L<Private>
public typealias TestPrivate5 = L<TestPrivate1>
internal final class Internal {
public constructor Internal()
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 Outer {
public typealias TestInternal1 = Outer.Internal
protected typealias TestInternal2 = Outer.Internal
internal typealias TestInternal3 = Outer.Internal
private typealias TestInternal4 = Outer.Internal
public typealias TestInternal5 = L<Outer.Internal>
public typealias TestInternal6 = L<Outer.TestInternal1>
public typealias TestPrivate1 = Outer.Private
protected typealias TestPrivate2 = Outer.Private
internal typealias TestPrivate3 = Outer.Private
private typealias TestPrivate4 = Outer.Private
public typealias TestPrivate5 = L<Outer.Private>
public typealias TestPrivate6 = L<Outer.TestPrivate1>
public typealias TestProtected1 = Outer.Protected
protected typealias TestProtected2 = Outer.Protected
internal typealias TestProtected3 = Outer.Protected
private typealias TestProtected4 = Outer.Protected
public typealias TestProtected5 = L<Outer.Protected>
public typealias TestProtected6 = L<Outer.TestProtected1>
public constructor Outer()
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
internal final class Internal {
public constructor Internal()
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
}
private final class Private {
public constructor Private()
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
}
protected final class Protected {
public constructor Protected()
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
}
}
private final class Private {
public constructor Private()
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
}