zikyo
package zikyo
Members list
Type members
Classlikes
final class ProvideAsPartiallyApplied[A, S, E, E1, ER](effect: A < (S & Envs[E]))(using t: Tag[Envs[E1]], he: HasEnvs[E1, E] { type Remainder = ER; }, f: Flat[A < (S & Envs[E])])
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Extensions
Extensions
extension [A, S](effect: A < S)
def repeat[S1](backoff: Int => Duration, limit: => Int < S1)(using Flat[A < S]): A < (S & S1 & Fibers)
def repeatUntil[S1](fn: (A, Int) => (Boolean, Duration) < S1)(using Flat[A < S]): A < (S & S1 & Fibers)
def repeatWhile[S1](fn: (A, Int) => (Boolean, Duration) < S1)(using Flat[A < S]): A < (S & S1 & Fibers)
extension [A, S, E](effect: A < (S & Aborts[E]))
def abortsToOptions(using Tag[Aborts[E]], ClassTag[E], Flat[A < (S & Aborts[E])]): A < (S & Options)
def catchAborts[A1 >: A, S1](fn: E => A1 < S1)(using Tag[Aborts[E]], ClassTag[E], Flat[A < (S & Aborts[E])]): A1 < (S & S1)
def catchAbortsPartial[A1 >: A, S1](fn: PartialFunction[E, A1 < S1])(using Tag[Aborts[E]], ClassTag[E], Flat[A < (S & Aborts[E])]): A1 < (S & S1 & Aborts[E])
def catchSomeAborts[E1](using ct: ClassTag[E1], ha: HasAborts[E1, E], t: Tag[Aborts[E1]], f: Flat[A < (S & Aborts[E])]): [A1 >: A, S1] => (x$1: E1 => A1 < S1) => A1 < (S & S1 & ha.Remainder)
def catchSomeAbortsPartial[E1](using ct: ClassTag[E1], ha: HasAborts[E1, E], t: Tag[Aborts[E1]], f: Flat[A < (S & Aborts[E])]): [A1 >: A, S1] => (x$1: PartialFunction[E1, A1 < S1]) => A1 < (S & S1 & Aborts[E])
def handleSomeAborts[E1 : ClassTag](implicit evidence$1: ClassTag[E1], ha: HasAborts[E1, E], t: Tag[Aborts[E1]], f: Flat[A < (S & Aborts[E])]): Either[E1, A] < (S & ha.Remainder)
def implicitThrowable(using f: Flat[A < (S & Aborts[E])], ha: HasAborts[Throwable, E]): A < (S & ha.Remainder)
def someAbortsToOptions[E1 : ClassTag](implicit evidence$1: ClassTag[E1], ha: HasAborts[E1, E], t: Tag[Aborts[E1]], f: Flat[A < (S & Aborts[E])]): A < (S & ha.Remainder & Options)
def someAbortsToSeqs[E1 : Tag](implicit evidence$1: Tag[E1], evidence$2: ClassTag[E1], ha: HasAborts[E1, E], t: Tag[Aborts[E1]], f: Flat[A < (S & Aborts[E])]): A < (S & ha.Remainder & Seqs)
def swapAborts(using Tag[Aborts[E]], Tag[Aborts[A]], ClassTag[E], ClassTag[A], Flat[A < (S & Aborts[E])]): E < (S & Aborts[A])
def swapSomeAborts[E1 : ClassTag](implicit evidence$1: ClassTag[E1], ha: HasAborts[E1, E], te: Tag[Aborts[E]], ta: Tag[Aborts[A]], te1: Tag[Aborts[E1]], cte: ClassTag[E], cta: ClassTag[A], f: Flat[A < (S & Aborts[E])]): E1 < (S & ha.Remainder & Aborts[A])
extension [A, S](effect: A < (S & Options))
def optionsToAborts[E, S1](failure: => E < S1)(using Flat[A], Tag[Aborts[E]]): A < (S & S1 & Aborts[E])
extension [A, S, E](effect: A < (S & Envs[E]))
def provide[E1, S1, SR](dependency: E1 < S1)(using fl: Flat[A < (S & Envs[E])], he: HasEnvs[E1, E] { type Remainder = SR; }, t: Tag[Envs[E1]]): A < (S & S1 & SR)
def provideAs[E1](using f: Flat[A < (S & Envs[E])], t: Tag[Envs[E1]], he: HasEnvs[E1, E]): ProvideAsPartiallyApplied[A, S, E, E1, he.Remainder]
extension [A, S](effect: A < (S & Seqs))
def seqsToAborts[E, S1](error: => E < S1)(using Flat[A < (S & Seqs)], Tag[Aborts[E]]): A < (S & S1 & Aborts[E])
extension [A, S](effect: A < (S & Fibers))
extension [A](effect: A < Fibers)
extension [A, S](effect: A < (S & Consoles))
extension [A, S](fiber: Fiber[A] < S)
In this article