5c720845a8
Drop IrLocalPropertyAccessor (and subclasses). Introduce IrField.
51 lines
3.0 KiB
Plaintext
Vendored
51 lines
3.0 KiB
Plaintext
Vendored
FILE /multipleImplicitReceivers.kt
|
|
CLASS OBJECT A
|
|
CONSTRUCTOR private constructor A()
|
|
BLOCK_BODY
|
|
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
|
INSTANCE_INITIALIZER_CALL classDescriptor='A'
|
|
CLASS OBJECT B
|
|
CONSTRUCTOR private constructor B()
|
|
BLOCK_BODY
|
|
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
|
INSTANCE_INITIALIZER_CALL classDescriptor='B'
|
|
CLASS INTERFACE IFoo
|
|
PROPERTY public open val A.foo: B
|
|
FUN public open fun A.<get-foo>(): B
|
|
BLOCK_BODY
|
|
RETURN type=kotlin.Nothing from='<get-foo>() on A: B'
|
|
GET_OBJECT 'B' type=B
|
|
CLASS INTERFACE IInvoke
|
|
FUN public open operator fun B.invoke(): kotlin.Int
|
|
BLOCK_BODY
|
|
RETURN type=kotlin.Nothing from='invoke() on B: Int'
|
|
CONST Int type=kotlin.Int value='42'
|
|
FUN public fun test(fooImpl: IFoo, invokeImpl: IInvoke): kotlin.Unit
|
|
BLOCK_BODY
|
|
CALL 'with(A, A.() -> Int): Int' type=kotlin.Int operator=null
|
|
receiver: GET_OBJECT 'A' type=A
|
|
block: BLOCK type=A.() -> kotlin.Int operator=LAMBDA
|
|
FUN local final fun A.<anonymous>(): kotlin.Int
|
|
BLOCK_BODY
|
|
RETURN type=kotlin.Nothing from='<anonymous>() on A: Int'
|
|
CALL 'with(IFoo, IFoo.() -> Int): Int' type=kotlin.Int operator=null
|
|
receiver: GET_VAR 'value-parameter fooImpl: IFoo' type=IFoo operator=null
|
|
block: BLOCK type=IFoo.() -> kotlin.Int operator=LAMBDA
|
|
FUN local final fun IFoo.<anonymous>(): kotlin.Int
|
|
BLOCK_BODY
|
|
RETURN type=kotlin.Nothing from='<anonymous>() on IFoo: Int'
|
|
CALL 'with(IInvoke, IInvoke.() -> Int): Int' type=kotlin.Int operator=null
|
|
receiver: GET_VAR 'value-parameter invokeImpl: IInvoke' type=IInvoke operator=null
|
|
block: BLOCK type=IInvoke.() -> kotlin.Int operator=LAMBDA
|
|
FUN local final fun IInvoke.<anonymous>(): kotlin.Int
|
|
BLOCK_BODY
|
|
RETURN type=kotlin.Nothing from='<anonymous>() on IInvoke: Int'
|
|
CALL 'invoke() on B: Int' type=kotlin.Int operator=INVOKE
|
|
$this: $RECEIVER of '<anonymous>() on IInvoke: Int' type=IInvoke
|
|
$receiver: CALL '<get-foo>() on A: B' type=B operator=GET_PROPERTY
|
|
$this: $RECEIVER of '<anonymous>() on IFoo: Int' type=IFoo
|
|
$receiver: $RECEIVER of '<anonymous>() on A: Int' type=A
|
|
CALLABLE_REFERENCE '<anonymous>() on IInvoke: Int' type=IInvoke.() -> kotlin.Int operator=LAMBDA
|
|
CALLABLE_REFERENCE '<anonymous>() on IFoo: Int' type=IFoo.() -> kotlin.Int operator=LAMBDA
|
|
CALLABLE_REFERENCE '<anonymous>() on A: Int' type=A.() -> kotlin.Int operator=LAMBDA
|