Slide 19
Slide 19 text
fun Function2.invoke(p1: P1, partial2: Partial = partial()): (P2) R {
return { p2: P2 this(p1, p2) }
}
fun Function2.invoke(partial1: Partial = partial(), p2: P2): (P1) R {
return { p1: P1 this(p1, p2) }
}
fun Function3.invoke(p1: P1, partial2: Partial = partial(), partial3: Partial = partial()): (P2, P3) R {
return { p2: P2, p3: P3 this(p1, p2, p3) }
}
fun Function3.invoke(partial1: Partial = partial(), p2: P2, partial3: Partial = partial()): (P1, P3) R {
return { p1: P1, p3: P3 this(p1, p2, p3) }
}
fun Function3.invoke(partial1: Partial = partial(), partial2: Partial = partial(), p3: P3): (P1, P2) R {
return { p1: P1, p2: P2 this(p1, p2, p3) }
}
//All the way to Function22…. This file has 2532 lines