Packages

t

izumi.functional.bio

LowPrioritySyncSafeInstances1

trait LowPrioritySyncSafeInstances1 extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LowPrioritySyncSafeInstances1
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. implicit final def covarianceConversion[F[_], G[_]](syncSafe: SyncSafe1[F])(implicit ev: <:<[F[Unit], G[Unit]]): SyncSafe1[G]
    Annotations
    @inline()
  2. implicit final def limitedCovariance2[C[f[_]] <: SyncSafe1[f[_]], FR[_, _], E](implicit F: C[[β$2$]FR[Nothing, β$2$]] { type Divergence = izumi.functional.bio.DivergenceHelper.Nondivergent }): Of[C[[β$3$]FR[E, β$3$]]]

    Emulate covariance.

    Emulate covariance. We're forced to employ these because we can't make SyncSafe covariant, because covariant implicits are broken (see scalac bug)

    Safe because F appears only in a covariant position

    Annotations
    @inline()
    See also

    https://github.com/scala/bug/issues/11427

  3. implicit final def limitedCovariance3[C[f[_]] <: SyncSafe1[f[_]], FR[_, _, _], R0, E](implicit F: C[[γ$5$]FR[Any, Nothing, γ$5$]] { type Divergence = izumi.functional.bio.DivergenceHelper.Nondivergent }): Of[C[[γ$6$]FR[R0, E, γ$6$]]]
    Annotations
    @inline()