Packages

package plan

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

Package Members

  1. package initial
  2. package operations
  3. package repr
  4. package topology

Type Members

  1. sealed trait AbstractPlan[OpType <: ExecutableOp] extends AbstractPlanExtendedAPI[OpType] with PlanLazyOps[OpType]
  2. sealed trait ExecutableOp extends AnyRef
  3. final case class OrderedPlan(steps: Vector[ExecutableOp], declaredRoots: Set[DIKey], topology: PlanTopology) extends AbstractPlan[ExecutableOp] with OrderedPlanOps with Product with Serializable

    Linearized graph which is ready to be consumed by linear executors

    Linearized graph which is ready to be consumed by linear executors

    May contain cyclic dependencies resolved with proxies

  4. sealed trait Roots extends AnyRef

    Roots designate the components to choose as "garbage collection roots" for the object graph, designated components and their dependencies will be created and

    Roots designate the components to choose as "garbage collection roots" for the object graph, designated components and their dependencies will be created and

    The purpose of the Roots/garbage collection mechanism is to allow you is to allow oversupplying the injector with bindings that may not be required to create a specific object graph, instead of carefully curating bindings to shape the graph, choosing root nodes allows you to "pluck" the sub-graph that you care about and instantiate just that sub-graph, ignoring all the other bindings.

    distage-testkit and distage-framework's Roles make heavy use of the mechanism. Roles are effectively just a root components that come with command-line arguments. distage-testkit's test cases designate their parameters as roots and instantiate only the sub-graph required for the test case.

    See also

    Garbage Collection https://izumi.7mind.io/distage/advanced-features.html#garbage-collection

    distage Roles https://izumi.7mind.io/distage/distage-framework.html#roles

    distage-testkit https://izumi.7mind.io/distage/distage-testkit.html

  5. final case class SemiPlan(steps: Vector[SemiplanOp], roots: Roots) extends AbstractPlan[SemiplanOp] with SemiPlanOps with Product with Serializable

    An unordered plan.

    An unordered plan.

    You can turn into an OrderedPlan via izumi.distage.model.Planner.finish

  6. final case class TriSplittedPlan(side: OrderedPlan, primary: OrderedPlan, shared: OrderedPlan) extends Product with Serializable

    side

    integrations, must be inhertied from the shared plan

    primary

    plan producing roots, must be inherited from the side plan

    shared

    creates a part of the graph shared by both side and primary plans

  7. sealed trait Wiring extends AnyRef

Deprecated Type Members

  1. type GCMode = Roots
    Annotations
    @deprecated
    Deprecated

    (Since version old name will be deleted in 0.11.1) GCMode has been renamed to Roots

Value Members

  1. object ExecutableOp
  2. object OrderedPlan extends OrderedPlanExtensions with Serializable
  3. object Roots
  4. object SemiPlan extends SemiPlanExtensions with Serializable
  5. object TriSplittedPlan extends Serializable
  6. object Wiring

Deprecated Value Members

  1. lazy val GCMode: Roots.type
    Annotations
    @deprecated
    Deprecated

    (Since version old name will be deleted in 0.11.1) GCMode has been renamed to Roots

Inherited from AnyRef

Inherited from Any

Ungrouped