| Class/object property type (2: 21) var next: Outer.A? = Outer.A() |
| Function return types (15: 26) fun getNext(): Outer.A? { |
| Function return types (36: 22) fun Any.toA(): Outer.A? { |
| Local variable declaration (11: 23) val aa: Outer.A = a |
| Nested class/object (1: 37) public class X(bar: String? = Outer.A.BAR): Outer.A() { |
| Nested class/object (3: 32) val myBar: String? = Outer.A.BAR |
| Nested class/object (6: 15) Outer.A.BAR = "" |
| Nested class/object (7: 15) Outer.A.foos() |
| New instance creation (2: 32) var next: Outer.A? = Outer.A() |
| New instance creation (32: 30) fun X.bar(a: Outer.A = Outer.A()) { |
| Parameter type (10: 22) fun foo(a: Outer.A) { |
| Parameter type (32: 20) fun X.bar(a: Outer.A = Outer.A()) { |
| Super type qualifier (20: 21) super<Outer.A>.foo() |
| Supertype (1: 51) public class X(bar: String? = Outer.A.BAR): Outer.A() { |
| Supertype (23: 29) companion object: Outer.A() { |
| Supertype (28: 17) object O: Outer.A() { |
| Target type of 'is' operation (37: 30) return if (this is Outer.A) this as Outer.A else null |
| Usage in cast target type (37: 47) return if (this is Outer.A) this as Outer.A else null |