izumi.distage.plugins
Members list
Type members
Classlikes
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
BootstrapPlugin.type
Attributes
- Companion
- object
- Supertypes
-
trait BootstrapModuletrait PluginBasetrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class BootstrapPluginDef[T]
Attributes
- See also
- Supertypes
-
trait BootstrapModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait BootstrapPlugintrait BootstrapModuletrait PluginBasetrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass AnyShow all
Java properties that control the behavior of load.PluginLoader
Java properties that control the behavior of load.PluginLoader
Attributes
- See also
- Supertypes
- Self type
-
DebugProperties.type
This macro allows distage's compile-time checks to cooperate with Scala's incremental compilation: it forces recompilation of the macro that performs compile-time plan checking every time a PluginDef's body changes.
This macro allows distage's compile-time checks to cooperate with Scala's incremental compilation: it forces recompilation of the macro that performs compile-time plan checking every time a PluginDef's body changes.
It does that by generating a new unique type for each compiler session and assigning it to the class that inherits PluginDef. The "change of super type" of a plugin forces recompilation of all code that references it, and specifically of the code generated by izumi.distage.framework.PlanCheckMacro.
This allows compile-time checking macro to re-run on relevant changes and provide rapid feedback during development.
Attributes
- See also
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
PluginBase.type
Non-abstract class or object inheritors of PluginBase will be found on the classpath by distage-extension-plugins scanning machinery. (izumi.distage.plugins.load.PluginLoader)
Non-abstract class or object inheritors of PluginBase will be found on the classpath by distage-extension-plugins scanning machinery. (izumi.distage.plugins.load.PluginLoader)
Attributes
- See also
- Companion
- object
- Supertypes
- Known subtypes
Attributes
- Companion
- class
- Supertypes
- Self type
-
PluginConfig.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object PluginConfig
Use it to define Plugins using izumi.distage.model.definition.dsl.ModuleDefDSL syntax
Use it to define Plugins using izumi.distage.model.definition.dsl.ModuleDefDSL syntax
object MyPlugin extends PluginDef {
include(myModule[F])
make[Xa[F]].from[Xa.Impl[F]]
}
Value parameters
- recompilationToken
-
Makes compile-time checks re-run when the source code of this
PluginDefis changed, if it's used in the checked role.
Attributes
- See also
- Note
-
Since this is an abstract class, you cannot mix it with other classes or use it as a mixin. Instead, you may inherit from PluginBase, which is a trait – but in that case compile-time checks will not re-run when the class is updated in that case. Alternatively, you may use izumi.distage.model.definition.dsl.IncludesDSL#include to compose modules as values instead of using inheritance.
- Supertypes
-
trait ModuleDeftrait ModuleDefDSLtrait TagsDSLtrait IncludesDSLtrait Moduletrait PluginBasetrait ModuleBasetrait CachedHashcodeclass Objecttrait Matchableclass AnyShow all
Scan the specified package at compile-time for classes and objects that inherit PluginBase
Scan the specified package at compile-time for classes and objects that inherit PluginBase
WARN: may interact badly with incremental compilation WARN: will not find plugins defined in the current module, only those defined in dependency modules (similarly to how you cannot call Scala macros defined in the current module)
Attributes
- See also
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
StaticPluginLoader.type