SelectProvide

com.geirolz.app.toolkit.AppBuilder.SelectProvide
final case class SelectProvide[F[_], FAILURE, INFO <: SimpleAppInfo[_], LOGGER_T[_[_]], CONFIG, RESOURCES, DEPENDENCIES](info: INFO, messages: AppMessages, loggerBuilder: F[LOGGER_T[F]], configLoader: Resource[F, CONFIG], resourcesLoader: Resource[F, RESOURCES], dependenciesLoader: (NoDeps[INFO, LOGGER_T[F], CONFIG, RESOURCES]) => Resource[F, Either[FAILURE, DEPENDENCIES]], beforeProvidingTask: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) => F[Unit])(implicit evidence$1: Async[F], evidence$2: Parallel[F], evidence$3: LoggerAdapter[LOGGER_T], evidence$4: Show[CONFIG])

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

inline def beforeProviding(f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[Unit]): SelectProvide[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
def provideOne[FAILURE2 <: FAILURE : ClassTag](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[FAILURE2 | Unit]): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
inline def provideOneE[FAILURE2 <: FAILURE](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[Either[FAILURE2, Unit]]): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
inline def provideOneF[FAILURE2 <: FAILURE](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[Either[FAILURE2, F[Unit]]]): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
def provideParallel[FAILURE2 <: FAILURE : ClassTag](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> List[F[FAILURE2 | Unit]]): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
def provideParallelAttemptFE[FAILURE2 <: FAILURE](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[Either[FAILURE2, List[F[Either[FAILURE2, Unit]]]]]): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
inline def provideParallelE[FAILURE2 <: FAILURE](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> List[F[Either[FAILURE2, Unit]]])(using DummyImplicit): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
def provideParallelF[FAILURE2 <: FAILURE : ClassTag](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[List[F[FAILURE2 | Unit]]])(implicit evidence$1: ClassTag[FAILURE2], DummyImplicit): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]
inline def provideParallelFE[FAILURE2 <: FAILURE](f: (AppContext[INFO, LOGGER_T[F], CONFIG, DEPENDENCIES, RESOURCES]) ?=> F[List[F[Either[FAILURE2, Unit]]]])(using DummyImplicit): App[F, FAILURE, INFO, LOGGER_T, CONFIG, RESOURCES, DEPENDENCIES]

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product