Files
kotlin-fork/compiler/testData/ir/irText/declarations/contextReceivers/fromKEEP/monoidSum.sig.kt.txt
T
Sergej Jaskiewicz 1a29b9efff [FIR, IR] Fix name mangling for functions with context receivers
- Mangled names of property accessors now include context receiver
  types of the corresponding property when computed from FIR.
- Context receivers are now supported when computing mangled names
  from IR
- IrBasedDescriptors now account for context receivers

^KT-57435 Fixed
2023-05-23 08:55:50 +00:00

93 lines
2.9 KiB
Kotlin
Vendored

// CHECK:
// Mangled name: Monoid
// Public signature: /Monoid|null[0]
interface Monoid<T : Any?> : Semigroup<T> {
// CHECK JVM_IR:
// Mangled name: Monoid#combine@1:0(1:0){}1:0
// Public signature: /Monoid.combine|-3517256775590682507[0]
abstract /* fake */ override infix fun T.combine(other: T): T
// CHECK:
// Mangled name: Monoid{}unit
// Public signature: /Monoid.unit|-5200734743185576787[0]
abstract val unit: T
// CHECK JVM_IR:
// Mangled name: Monoid#<get-unit>(){}1:0
// Public signature: /Monoid.unit.<get-unit>|-2842189358620964971[0]
abstract get
}
// CHECK:
// Mangled name: Semigroup
// Public signature: /Semigroup|null[0]
interface Semigroup<T : Any?> {
// CHECK JVM_IR:
// Mangled name: Semigroup#combine@1:0(1:0){}1:0
// Public signature: /Semigroup.combine|-3517256775590682507[0]
abstract infix fun T.combine(other: T): T
}
// CHECK:
// Mangled name: IntMonoid
// Public signature: /IntMonoid|null[0]
object IntMonoid : Monoid<Int> {
// CHECK:
// Mangled name: IntMonoid{}unit
// Public signature: /IntMonoid.unit|-5200734743185576787[0]
override val unit: Int
// CHECK JVM_IR:
// Mangled name: IntMonoid#<get-unit>(){}kotlin.Int
// Public signature: /IntMonoid.unit.<get-unit>|3772729924213749256[0]
override get
// CHECK:
// Mangled name: IntMonoid#<init>(){}
// Public signature: /IntMonoid.<init>|-5645683436151566731[0]
private constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: IntMonoid#combine@kotlin.Int(kotlin.Int){}kotlin.Int
// Public signature: /IntMonoid.combine|4765448259581317405[0]
override infix fun Int.combine(other: Int): Int
}
// CHECK:
// Mangled name: StringMonoid
// Public signature: /StringMonoid|null[0]
object StringMonoid : Monoid<String> {
// CHECK:
// Mangled name: StringMonoid{}unit
// Public signature: /StringMonoid.unit|-5200734743185576787[0]
override val unit: String
// CHECK JVM_IR:
// Mangled name: StringMonoid#<get-unit>(){}kotlin.String
// Public signature: /StringMonoid.unit.<get-unit>|4504480110251605077[0]
override get
// CHECK:
// Mangled name: StringMonoid#<init>(){}
// Public signature: /StringMonoid.<init>|-5645683436151566731[0]
private constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: StringMonoid#combine@kotlin.String(kotlin.String){}kotlin.String
// Public signature: /StringMonoid.combine|-5815259829474546918[0]
override infix fun String.combine(other: String): String
}
// CHECK JVM_IR:
// Mangled name: #box(){}kotlin.String
// Public signature: /box|-9347091776561469[0]
fun box(): String
// CHECK JVM_IR:
// Mangled name: #sum!Monoid<0:0>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0
// Public signature: /sum|7635142307973834922[0]
fun <T : Any?> List<T>.sum($context_receiver_0: Monoid<T>): T