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.

Attributes

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

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

Members list

Concise view

Value members

Concrete methods

Attributes

Returns:

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

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product