Packages

package macros

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class Graph[Key, A](nodes: List[Node[Key, A]], keyEquals: (Key, Key) => Boolean) extends Product with Serializable
  2. sealed trait GraphError[+Key, +A] extends AnyRef
  3. class IsReloadableMacros extends AnyRef
  4. final case class LayerBuilder[Type, Expr](target0: List[Type], remainder: List[Type], providedLayers0: List[Expr], layerToDebug: PartialFunction[Expr, Debug], sideEffectType: Type, anyType: Type, typeEquals: (Type, Type) => Boolean, foldTree: (LayerTree[Expr]) => Expr, method: ProvideMethod, exprToNode: (Expr) => Node[Type, Expr], typeToNode: (Type) => Node[Type, Expr], showExpr: (Expr) => String, showType: (Type) => String, reportWarn: (String) => Unit, reportError: (String) => Nothing) extends Product with Serializable

    LayerBuilder houses the core logic for compile-time layer construction.

    LayerBuilder houses the core logic for compile-time layer construction. It is parameterized by Type and Expr such that it can be shared across Scala 2 and 3, which have incompatible macro libraries.

    remainder

    A list of types indicating the input of the final layer. This would be the parameter of ZIO.provideSome

    providedLayers0

    A list of layers ASTs that have been provided by the user.

    layerToDebug

    A method which allows LayerBuilder to filter/extract the special ZLayer.Debug layers from the provided layers.

    typeEquals

    A method for comparing types: Used in the construction of the final layer

    foldTree

    A method for folding a tree of layers into the final layer.

    method

    The sort of method that is being called: provide, provideSome, or provideCustom. This is used to provide improved compilation warnings.

    exprToNode

    A method for converting an Expr into a Node for use in the graph traversal.

    typeToNode

    A method for converting a leftover type into a Node to be used in the graph traversal.

  5. sealed abstract class LayerTree[+A] extends Product with Serializable
  6. final case class Node[+Key, +A](inputs: List[Key], outputs: List[Key], value: A) extends Product with Serializable
  7. sealed trait ProvideMethod extends Product with Serializable
  8. final class ZLayerMakeMacros extends LayerMacroUtils

Value Members

  1. object GraphError
  2. object LayerTree extends Serializable
  3. object ProvideMethod extends Serializable

Ungrouped