Packages

p

izumi.distage

constructors

package constructors

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package macros

Type Members

  1. sealed trait AnyConstructor[T] extends AnyConstructorOptionalMakeDSL[T]

    An implicitly summonable constructor for a type T, can generate constructors for:

    An implicitly summonable constructor for a type T, can generate constructors for:

    Since version 1.1.0, does not generate constructors "factory-like" traits and abstract classes, instead use FactoryConstructor.

    Use HasConstructor to generate constructors for zio.Has values.

    returns

    izumi.distage.model.providers.Functoid[T] value

    Example:
    1. import distage.{AnyConstructor, Functoid, Injector, ModuleDef}
      
      class A(val i: Int)
      
      val constructor: Functoid[A] = AnyConstructor[A]
      
      val lifecycle = Injector().produceGet[A](new ModuleDef {
        make[A].from(constructor)
        make[Int].fromValue(5)
      })
      
      lifecycle.use {
        (a: A) =>
          println(a.i)
      }
  2. final class ClassConstructor[T] extends AnyVal with AnyConstructor[T]

    An implicitly summonable constructor for a concrete class T

    An implicitly summonable constructor for a concrete class T

    See also

    AnyConstructor

  3. final class FactoryConstructor[T] extends AnyVal with AnyConstructor[T]

    An implicitly summonable constructor for a "factory-like" trait or abstract class T

    An implicitly summonable constructor for a "factory-like" trait or abstract class T

    See also

    Auto-Factories feature

    izumi.distage.model.definition.impl recommended documenting annotation for use with FactoryConstructor

    AnyConstructor

  4. final class HasConstructor[T] extends AnyVal with AnyConstructor[T]

    An implicitly summonable constructor for a T <: zio.Has[A] with zio.Has[B] with zio.Has[C]

    An implicitly summonable constructor for a T <: zio.Has[A] with zio.Has[B] with zio.Has[C]

    zio.Has heterogeneous map values may be used by ZIO or other Reader-like effects

    See also

    ZIO Has bindings

    AnyConstructor

  5. final class TraitConstructor[T] extends AnyVal with AnyConstructor[T]

    An implicitly summonable constructor for a traits or abstract class T

    An implicitly summonable constructor for a traits or abstract class T

    See also

    Auto-Traits feature

    izumi.distage.model.definition.impl recommended documenting annotation for use with TraitConstructor

    AnyConstructor

Ungrouped