CoT

public class CoT<W, M, A> : CoTOf<W, M, A> where W : Comonad

(CoT w) gives you the best pairing monad transformer for any comonad w In other words, an explorer for the state space given by w

  • Undocumented

    Declaration

    Swift

    public static func fix(_ value: CoTOf<W, M, A>) -> CoT<W, M, A>
  • Undocumented

    Declaration

    Swift

    public static func liftT(_ f: @escaping (Kind<W, Any/*S*/>) -> A) -> CoT<W, M, A>
  • Undocumented

    Declaration

    Swift

    public init(_ cow: @escaping /*forall R.*/(Kind<W, (A) -> Kind<M, /*R*/Any>>) -> Kind<M, /*R*/Any>)
  • Undocumented

    Declaration

    Swift

    static func select<A, B>(_ co: Co<W, (A) -> B>, _ wa: Kind<W, A>) -> Kind<W, B>
  • Undocumented

    Declaration

    Swift

    static func lift(_ f: @escaping (Kind<W, Any>) -> A) -> Co<W, A>
  • Declaration

    Swift

    static func pair() -> Pairing<W, CoPartial<W>>

    Return Value

    The pairing between the underlying comonad, w, and the monad Co<w>.

  • Undocumented

    Declaration

    Swift

    func run<R>(_ w: Kind<W, (A) -> R>) -> R
  • Undocumented

    Declaration

    Swift

    func hoist<V>(_ transform: FunctionK<V, W>) -> Co<V, A> where V : Comonad
  • Undocumented

    Declaration

    Swift

    func lower<B>(_ input: Kind<W, B>) -> A