// CHECK: // Mangled name: Circle // Public signature: /Circle|null[0] class Circle : Shape { // CHECK: // Mangled name: Circle#(){} // Public signature: /Circle.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ // CHECK JVM_IR: // Mangled name: Circle#draw!Canvas(){}kotlin.String // Public signature: /Circle.draw|-6733499063990640842[0] // Public signature debug description: draw!Canvas(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: Circle#draw!Canvas(){} // Public signature: /Circle.draw|4876755509620013985[0] // Public signature debug description: draw!Canvas(){} override fun draw($context_receiver_0: Canvas): String } // CHECK: // Mangled name: Canvas // Public signature: /Canvas|null[0] interface Canvas { // CHECK: // Mangled name: Canvas{}suffix // Public signature: /Canvas.suffix|-3301965527200666288[0] // Public signature debug description: {}suffix abstract val suffix: String // CHECK JVM_IR: // Mangled name: Canvas#(){}kotlin.String // Public signature: /Canvas.suffix.|8958072538558116778[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: Canvas#(){} // Public signature: /Canvas.suffix.|-7634976832113083262[0] // Public signature debug description: (){} abstract get } // CHECK: // Mangled name: Shape // Public signature: /Shape|null[0] interface Shape { // CHECK JVM_IR: // Mangled name: Shape#draw!Canvas(){}kotlin.String // Public signature: /Shape.draw|-6733499063990640842[0] // Public signature debug description: draw!Canvas(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: Shape#draw!Canvas(){} // Public signature: /Shape.draw|4876755509620013985[0] // Public signature debug description: draw!Canvas(){} abstract fun draw($context_receiver_0: Canvas): String } // CHECK: // Mangled name: MyCanvas // Public signature: /MyCanvas|null[0] object MyCanvas : Canvas { // CHECK: // Mangled name: MyCanvas{}suffix // Public signature: /MyCanvas.suffix|-3301965527200666288[0] // Public signature debug description: {}suffix override val suffix: String // CHECK JVM_IR: // Mangled name: MyCanvas#(){}kotlin.String // Public signature: /MyCanvas.suffix.|8958072538558116778[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: MyCanvas#(){} // Public signature: /MyCanvas.suffix.|-7634976832113083262[0] // Public signature debug description: (){} override get // CHECK: // Mangled name: MyCanvas#(){} // Public signature: /MyCanvas.|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ } // CHECK JVM_IR: // Mangled name: #box(){}kotlin.String // Public signature: /box|-9347091776561469[0] // Public signature debug description: box(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: #box(){} // Public signature: /box|2173511048851971368[0] // Public signature debug description: box(){} fun box(): String