Async

cps.macros.Async$
object Async

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Async.type

Members list

Concise view

Type members

Classlikes

class InferAsyncArg[F[_], C <: CpsMonadContext[F]](using val am: Aux[F, C])

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Value members

Concrete methods

def adoptFlags[F[_] : Type, T](f: Expr[T], dm: Expr[CpsMonad[F]])(implicit evidence$7: Type[F], Quotes): AsyncMacroFlags
transparent inline def async[F[_]](using am: CpsMonad[F]): InferAsyncArg[F, Context]
def loomTransform[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type](f: Expr[T], dm: Expr[CpsAsyncMonad[F]], ctx: Expr[C], runtimeApi: Expr[CpsRuntimeAwait[F]], optMemoization: Option[Memoization[F]], observatory: Observatory, flags: AsyncMacroFlags)(implicit evidence$23: Type[F], evidence$24: Type[T], evidence$25: Type[C], Quotes): Expr[T]
def nestTransform[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type, S : Type](f: Expr[S], cpsCtx: TransformationContext[F, T, C])(implicit evidence$13: Type[F], evidence$14: Type[T], evidence$15: Type[C], evidence$16: Type[S], Quotes): CpsExpr[F, S]
def resolveMemoization[F[_] : Type, T : Type](f: Expr[T], dm: Expr[CpsMonad[F]])(implicit evidence$8: Type[F], evidence$9: Type[T], Quotes): Memoization[F]
def rootTransform[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type](f: Expr[T], dm: Expr[CpsMonad[F]], mc: Expr[C], optMemoization: Option[Memoization[F]], optRuntimeAwait: Option[Expr[CpsRuntimeAwait[F]]], flags: AsyncMacroFlags, observatory: Observatory, nesting: Int, parent: Option[TransformationContext[_[_], _, _]])(implicit evidence$10: Type[F], evidence$11: Type[T], evidence$12: Type[C], Quotes): CpsExpr[F, T]
transparent inline def transform[F[_], T, C <: CpsMonadContext[F]](inline expr: T, inline ctx: C)(using m: CpsMonad[F]): F[T]
def transformContextInstanceMonad[F[_] : Type, T : Type, C <: CpsMonadInstanceContext[F] : Type](f: Expr[T], dm: Expr[C])(implicit evidence$20: Type[F], evidence$21: Type[T], evidence$22: Type[C], Quotes): Expr[F[T]]
transparent inline def transformContextLambda[F[_], T, C <: CpsMonadContext[F]](inline expr: C ?=> T)(using m: CpsMonad[F]): C => F[T]
def transformContextLambdaImpl[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type](cexpr: Expr[C ?=> T])(implicit evidence$17: Type[F], evidence$18: Type[T], evidence$19: Type[C], Quotes): Expr[C => F[T]]
def transformImpl[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type](f: Expr[T], c: Expr[C])(implicit evidence$1: Type[F], evidence$2: Type[T], evidence$3: Type[C], Quotes): Expr[F[T]]

transform expression and get monad from context.

transform expression and get monad from context.

Attributes

c
  • monad context parameter
f
  • expression to transform
def transformMonad[F[_] : Type, T : Type, C <: CpsMonadContext[F] : Type](f: Expr[T], dm: Expr[CpsMonad[F]], mc: Expr[C])(implicit evidence$4: Type[F], evidence$5: Type[T], evidence$6: Type[C], Quotes): Expr[F[T]]

transform expression within given monad. Use this function is you need to force async-transform from other macros.

transform expression within given monad. Use this function is you need to force async-transform from other macros.

Attributes