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

ltd.k1nd.pets.dog.syntax.SyncOps.scala Maven / Gradle / Ivy

The newest version!
package ltd.k1nd.pets.dog.syntax

import cats.effect.Sync
import ltd.k1nd.pets.dog.syntax.SyncOps.SyncSyntax
import machinist.DefaultOps

trait SyncOps {
  implicit def createSyncSyntax[T](value: T): SyncSyntax[T] =
    new SyncSyntax[T](value)
}

object SyncOps {
  implicit final class SyncSyntax[T](val lhs: T) extends AnyVal {
    def delay[F[_]: Sync]: F[T] = macro DefaultOps.unopWithEv[Sync[F], F[T]]
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy