Packages

p

wvlet

airframe

package airframe

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. airframe
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Package Members

  1. package lifecycle
  2. package tracing

Type Members

  1. trait AirframeException extends Exception
  2. class Binder[A] extends BinderImpl[A]

  3. trait DISupport extends AnyRef

    A trait for embedding Session to user traits or classes

  4. class Design extends LogSupport with DesignImpl

    Immutable airframe design.

    Immutable airframe design.

    Design instance does not hold any duplicate bindings for the same Surface.

  5. case class DesignOptions(enabledLifeCycleLogging: Option[Boolean] = None, stage: Option[Stage] = None, defaultInstanceInjection: Option[Boolean] = None, options: Map[String, Any] = Map.empty) extends Serializable with Product

    Design configs

  6. class DesignWithContext[A] extends Design

    DesignWithContext[A] is a wrapper of Design class for chaining lifecycle hooks for the same type A.

    DesignWithContext[A] is a wrapper of Design class for chaining lifecycle hooks for the same type A. This can be safely cast to just Design

  7. class LazyF0[+R] extends Serializable with Cloneable

    This class is used to obtain the class names of the call-by-name functions (Function0[R]).

    This class is used to obtain the class names of the call-by-name functions (Function0[R]).

    This wrapper do not directly access the field f (Function0[R]) in order to avoid the evaluation of the function.

  8. case class LifeCycleHookDesign(lifeCycleHookType: LifeCycleHookType, surface: Surface, hook: (Any) => Unit) extends Product with Serializable
  9. implicit class LifeCycleSupport[A] extends LogSupport
  10. trait Session extends SessionImpl with AutoCloseable

    Session manages injected objects (e.g., Singleton)

  11. class SessionBuilder extends LogSupport

  12. sealed trait Stage extends AnyRef

Value Members

  1. def getOrElseUpdateTraitFactoryCache(s: Surface, factory: (Session) => Any): (Session) => Any
  2. def newDesign: Design

    The entry point to create a new design beginning from a blanc design import wvlet.airframe._ val d = design.bind[X]

  3. def newSilentDesign: Design

    Create an empty design, which sends life cycle logs to debug log level

  4. macro def registerTraitFactory[A]: Surface
  5. val traitFactoryCache: Map[Surface, (Session) => Any]
  6. object AirframeException extends Serializable
  7. object Binder extends Serializable
  8. object Design extends Serializable
  9. object DesignOptions extends Serializable
  10. object LazyF0 extends Serializable
  11. object Session extends LogSupport
  12. object Stage

Deprecated Value Members

  1. macro def bind[A, D1, D2, D3, D4, D5](provider: (D1, D2, D3, D4, D5) => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  2. macro def bind[A, D1, D2, D3, D4](provider: (D1, D2, D3, D4) => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  3. macro def bind[A, D1, D2, D3](provider: (D1, D2, D3) => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  4. macro def bind[A, D1, D2](provider: (D1, D2) => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  5. macro def bind[A, D1](provider: (D1) => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  6. macro def bind[A](provider: => A): A
    Annotations
    @deprecated
    Deprecated

    (Since version 19.11.0) Use design.bind[A].toProvider(...) instead

  7. macro def bind[A]: A

    Inject a singleton of A

    Inject a singleton of A

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use constructor injection instead

  8. macro def bindFactory[F <: Function1[_, _]]: F
    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) bindFactory is deprecated in Scala 3

  9. macro def bindFactory2[F <: Function2[_, _, _]]: F
    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) bindFactory is deprecated in Scala 3

  10. macro def bindFactory3[F <: Function3[_, _, _, _]]: F
    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) bindFactory is deprecated in Scala 3

  11. macro def bindFactory4[F <: Function4[_, _, _, _, _]]: F
    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) bindFactory is deprecated in Scala 3

  12. macro def bindFactory5[F <: Function5[_, _, _, _, _, _]]: F
    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) bindFactory is deprecated in Scala 3

  13. macro def bindLocal[A, D1, D2, D3, D4, D5](provider: => (D1, D2, D3, D4, D5) => A): A

    Create a new instance of A using the provider function that receives dependencies of D1, D2, D3, D4, and D5.

    Create a new instance of A using the provider function that receives dependencies of D1, D2, D3, D4, and D5. The lifecycle of the generated instance of A will be managed by the current session

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

  14. macro def bindLocal[A, D1, D2, D3, D4](provider: => (D1, D2, D3, D4) => A): A

    Create a new instance of A using the provider function that receives dependencies of D1, D2, D3, and D4.

    Create a new instance of A using the provider function that receives dependencies of D1, D2, D3, and D4. The lifecycle of the generated instance of A will be managed by the current session

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

  15. macro def bindLocal[A, D1, D2, D3](provider: => (D1, D2, D3) => A): A

    Create a new instance of A using the provider function that receives dependencies of D1, D2, and D3.

    Create a new instance of A using the provider function that receives dependencies of D1, D2, and D3. The lifecycle of the generated instance of A will be managed by the current session

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

  16. macro def bindLocal[A, D1, D2](provider: => (D1, D2) => A): A

    Create a new instance of A using the provider function that receives dependencies of D1 and D2.

    Create a new instance of A using the provider function that receives dependencies of D1 and D2. The lifecycle of the generated instance of A will be managed by the current session

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

  17. macro def bindLocal[A, D1](provider: => (D1) => A): A

    Create a new instance of A using the provider function that receives a dependency of D1.

    Create a new instance of A using the provider function that receives a dependency of D1. The lifecycle of the generated instaance of A will be managed by the current session

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

  18. macro def bindLocal[A](provider: => A): A

    Create a new instance of A using the provider function.

    Create a new instance of A using the provider function. The lifecycle of the generated instance of A will be managed by the current session.

    Annotations
    @deprecated
    Deprecated

    (Since version 24.1.0) Use design.bind[A].toProvider(...) instead

Inherited from AnyRef

Inherited from Any

Ungrouped