Packages

  • package root
    Definition Classes
    root
  • package izumi
    Definition Classes
    root
  • package distage
    Definition Classes
    izumi
  • package model
    Definition Classes
    distage
  • package definition
    Definition Classes
    model
  • package dsl
    Definition Classes
    definition
  • trait AbstractBindingDefDSL[BindDSL[_], BindDSLAfterFrom[_], SetDSL[_]] extends AbstractBindingDefDSLMacro[BindDSL]
    Definition Classes
    dsl
  • final class MutationContext extends AnyRef

    Use this to create utility functions that add bindings mutably to the current module, as opposed to creating new modules and including them.

    Use this to create utility functions that add bindings mutably to the current module, as opposed to creating new modules and including them.

    Example:

    import distage.{ClassConstructor, Tag, ModuleDef}
    import izumi.distage.model.definition.dsl.ModuleDefDSL
    
    trait RegisteredComponent
    class RegisteredComponentImpl extends RegisteredComponent
    
    def addAndRegister[T <: RegisteredComponent: Tag: ClassConstructor](implicit mutateModule: ModuleDefDSL#MutationContext): Unit = {
      new mutateModule.dsl {
        make[T]
    
        many[RegisteredComponent]
          .weak[T]
      }
    }
    
    new ModuleDef {
      addAndRegister[RegisteredComponentImpl]
    }
    Definition Classes
    AbstractBindingDefDSL
  • dsl

abstract class dsl extends AbstractBindingDefDSLMacro[BindDSL]

Linear Supertypes
AbstractBindingDefDSLMacro[BindDSL], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. dsl
  2. AbstractBindingDefDSLMacro
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new dsl()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def _make[T](provider: Functoid[T])(implicit arg0: Tag[T], pos: CodePositionMaterializer): BindDSL[T]
    Attributes
    protected[this]
  5. final def addImplicit[T](implicit arg0: Tag[T], instance: T, pos: CodePositionMaterializer): BindDSLAfterFrom[T]
    Attributes
    protected[this]
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  8. final def discard(): Unit

    Avoid discarded non-Unit value warning.

    Avoid discarded non-Unit value warning.

    Annotations
    @inline()
    See also

    izumi.fundamentals.platform.language.Quirks.discard

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final macro def make[T]: BindDSL[T]
    Attributes
    protected[this]
    Definition Classes
    AbstractBindingDefDSLMacro
  16. final def makeFactory[T](implicit arg0: Tag[T], arg1: FactoryConstructor[T]): BindDSLAfterFrom[T]
    Attributes
    protected[this]
  17. final def makeSubcontext[T](implicit arg0: Tag[T]): SubcontextDSL[T]
    Attributes
    protected[this]
  18. final def makeSubcontext[T](submodule: ModuleBase)(implicit arg0: Tag[T]): SubcontextDSL[T]
    Attributes
    protected[this]
  19. final def makeTrait[T](implicit arg0: Tag[T], arg1: TraitConstructor[T]): BindDSLAfterFrom[T]
    Attributes
    protected[this]
  20. final def many[T](implicit tag: Tag[Set[T]], pos: CodePositionMaterializer): SetDSL[T]
    Attributes
    protected[this]
  21. final def modify[T]: ModifyDSL[T, BindDSL, BindDSLAfterFrom, SetDSL]
    Attributes
    protected[this]
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  26. def toString(): String
    Definition Classes
    AnyRef → Any
  27. final def todo[T](implicit arg0: Tag[T], pos: CodePositionMaterializer): BindDSLAfterFrom[T]
    Attributes
    protected[this]
  28. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AbstractBindingDefDSLMacro[BindDSL]

Inherited from AnyRef

Inherited from Any

Ungrouped