PlanCheckMaterializer

izumi.distage.framework.PlanCheckMaterializer
See thePlanCheckMaterializer companion object
final case class PlanCheckMaterializer[AppMain <: CheckableApp, -Cfg <: Any](checkPassed: Boolean, checkedPlugins: Seq[ModuleBase], app: AppMain, roles: String, excludeActivations: String, config: String, checkConfig: Option[Boolean], printBindings: Option[Boolean], onlyWarn: Option[Boolean])

This implicit performs a compile-time check for a given distage-based App when materialized.

The reason to use an implicit macro for this, instead of a direct def-macro is because implicit macros are more compositional – you may write new functions using the implicit without writing new macros, by contrast macros can only be composed inside new macros – and this in turn requires separating them into different sbt modules.

Type parameters

AppMain

The application to check, this should be a static object, most often a main object inherited from izumi.distage.roles.RoleAppMain

Cfg

Additional configuration options for compile-time checker

Attributes

See also
Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Attributes

Returns

a list of issues, if any. Does not throw.

def makeCfg: Any

Inherited methods

def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product