All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cats.syntax.split.scala Maven / Gradle / Ivy

package cats
package syntax

import cats.arrow.Split

trait SplitSyntax {
  // TODO: use simulacrum instances eventually
  implicit def splitSyntax[F[_, _]: Split, A, B](fab: F[A, B]): SplitOps[F, A, B] =
    new SplitOps[F, A, B](fab)
}

class SplitOps[F[_, _], A, B](fab: F[A, B])(implicit F: Split[F]) {
  def split[C, D](fcd: F[C, D]): F[(A, C), (B, D)] = F.split(fab, fcd)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy