arrow-core / arrow.core.extensions.sequence.functor / kotlin.sequences.Sequence / widen

widen

@JvmName("widen") fun <B, A : B> Sequence<A>.~~widen~~(): Sequence<B> Deprecated: @extension kinded projected functions are deprecated

Given A is a sub type of B, re-type this value from Kind<F, A> to Kind<F, B>

Kind<F, A> -> Kind<F, B>

import arrow.Kind
import arrow.core.extensions.sequence.applicative.just
import arrow.core.k
import arrow.core.widen

fun main(args: Array<String>) {
 val result: Kind<*, CharSequence> =
 //sampleStart
 "Hello".just().map { "$it World" }.widen().k()
 //sampleEnd
 println(result)
}

Do you like Arrow?

Arrow Org
<