izumi.distage.roles.RoleAppMain
See theRoleAppMain companion object abstract class RoleAppMain [F [_ ]](implicit val tagK : Tag [F ], val defaultModule : DefaultModule [F ], val artifact : IzArtifactMaterializer ) extends RoleCheckableApp [F ] Create a launcher for role-based applications by extending this in a top-level object
Attributes See also: Example: import izumi.distage.framework.RoleAppMain
import izumi.distage.plugins.PluginConfig
object RoleLauncher extends RoleAppMain.LauncherBIO[zio.IO] {
override def pluginConfig: PluginConfig = {
PluginConfig.cached(pluginsPackage = "my.example.app.plugins")
}
}
Companion: object Graph Reset zoom Hide graph Show graph
Supertypes class Object
trait Matchable
class Any
Known subtypes Members list Concise view
Type members
Shortcut for izumi.distage.framework.PlanCheck.Main
object WiringTest extends MyApp.PlanCheck(PlanCheckConfig(...))
same as
object WiringTest extends PlanCheck.Main(MyApp, PlanCheckConfig(...))
Attributes Graph Reset zoom Hide graph Show graph
Supertypes class Object
trait Matchable
class Any
Value members
Create an object graph for inspection in the REPL:
Create an object graph for inspection in the REPL:
scala> val graph = Launcher.replLocator("-u", "mode:test", ":role1")
val graph: izumi.fundamentals.platform.functional.Identity[izumi.distage.model.Locator] = izumi.distage.LocatorDefaultImpl@6f6a2ac8
scala> val testObj = graph.get[Hello]
val testObj: example.Hellower = example.Hellower@25109d84
scala> testObj.hello("test")
Hello test!
Attributes Note: All resources will be leaked. Use replLocatorWithClose if you need resource cleanup within a REPL session.
Attributes Definition Classes