KT-9498 extension: now type can be inferred for getter with expression body

This commit is contained in:
Mikhail Glukhikh
2016-02-17 13:09:20 +03:00
parent 405c21a17e
commit 883e2e4d2b
13 changed files with 108 additions and 9 deletions
@@ -0,0 +1,3 @@
class A {
<!PROPERTY_WITH_NO_TYPE_NO_INITIALIZER!>val a<!> get() = <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>a<!>
}
@@ -0,0 +1,9 @@
package
public final class A {
public constructor A()
public final val a: [ERROR : No type, no body]
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
}
@@ -24,6 +24,9 @@ class Foo {
<!AMBIGUOUS_ANONYMOUS_TYPE_INFERRED!>public val <!EXPOSED_PROPERTY_TYPE!>publicProperty<!><!> = object : MyClass(), MyTrait {}
<!PROPERTY_WITH_NO_TYPE_NO_INITIALIZER!>val propertyWithGetter<!>
<!AMBIGUOUS_ANONYMOUS_TYPE_INFERRED!>get()<!> = object: MyClass(), MyTrait {}
private fun privateFunction() = object : MyClass(), MyTrait {}
@@ -16,6 +16,7 @@ public final class Foo {
internal final val internal2Property: Foo.internal2Property.<no name provided>
public final val internalProperty: Foo.internalProperty.<no name provided>
private final val privateProperty: Foo.privateProperty.<no name provided>
public final val propertyWithGetter: [ERROR : No type, no body]
protected final val protectedProperty: Foo.protectedProperty.<no name provided>
public final val publicProperty: Foo.publicProperty.<no name provided>
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean