FILE fqName: fileName:/delegatedImplementationWithExplicitOverride.kt CLASS INTERFACE name:IFooBar modality:ABSTRACT visibility:public flags: superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:IFooBar flags: FUN name:foo visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:IFooBar flags: FUN name:bar visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:IFooBar flags: FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: overridden: FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags: FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: overridden: FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: overridden: FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: CLASS OBJECT name:FooBarImpl modality:FINAL visibility:public flags: superTypes:[IFooBar] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:FooBarImpl flags: CONSTRUCTOR visibility:private <> () returnType:FooBarImpl flags:primary BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'constructor Any()' INSTANCE_INITIALIZER_CALL classDescriptor='FooBarImpl' FUN name:foo visibility:public modality:OPEN <> ($this:FooBarImpl) returnType:kotlin.Unit flags: overridden: FUN name:foo visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:FooBarImpl flags: BLOCK_BODY FUN name:bar visibility:public modality:OPEN <> ($this:FooBarImpl) returnType:kotlin.Unit flags: overridden: FUN name:bar visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:FooBarImpl flags: BLOCK_BODY FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: overridden: FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags: FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: overridden: FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: overridden: FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: CLASS CLASS name:C modality:FINAL visibility:public flags: superTypes:[IFooBar] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:C flags: CONSTRUCTOR visibility:public <> () returnType:C flags:primary BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'constructor Any()' INSTANCE_INITIALIZER_CALL classDescriptor='C' FIELD DELEGATE name:C$IFooBar$delegate type:FooBarImpl visibility:private flags:final EXPRESSION_BODY GET_OBJECT 'FooBarImpl' type=FooBarImpl FUN DELEGATED_MEMBER name:foo visibility:public modality:OPEN <> ($this:C) returnType:kotlin.Unit flags: overridden: FUN name:foo visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:C flags: BLOCK_BODY CALL 'foo(): Unit' type=kotlin.Unit origin=null $this: GET_FIELD '`C$IFooBar$delegate`: FooBarImpl' type=FooBarImpl origin=null receiver: GET_VAR 'this@C: C' type=C origin=null FUN name:bar visibility:public modality:OPEN <> ($this:C) returnType:kotlin.Unit flags: overridden: FUN name:bar visibility:public modality:ABSTRACT <> ($this:IFooBar) returnType:kotlin.Unit flags: $this: VALUE_PARAMETER name: type:C flags: BLOCK_BODY FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: overridden: FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags: FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: overridden: FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: overridden: FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags: $this: VALUE_PARAMETER name: type:kotlin.Any flags: