abstract class PluginDef[T] extends PluginBase with ModuleDef
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]] }
- 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.
- See also
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- PluginDef
- ModuleDef
- ModuleDefDSL
- TagsDSL
- IncludesDSL
- AbstractBindingDefDSL
- Module
- PluginBase
- ModuleBase
- ModuleBaseInstances
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
-
new
PluginDef()(implicit recompilationToken: ForcedRecompilationToken[T])
- recompilationToken
Makes compile-time checks re-run when the source code of this
PluginDef
is changed, if it's used in the checked role.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
_initialIncludes: ArrayBuffer[Include]
- Attributes
- protected[this]
- Definition Classes
- IncludesDSL
-
def
_initialState: ArrayBuffer[BindingRef]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
def
_initialTaggedIncludes: ArrayBuffer[IncludeApplyTags]
- Attributes
- protected[this]
- Definition Classes
- IncludesDSL
-
def
_initialTags: Set[BindingTag]
- Attributes
- protected[this]
- Definition Classes
- TagsDSL
-
final
def
_make[T](provider: Functoid[T])(implicit arg0: Tag[T], pos: CodePositionMaterializer): MakeDSL[T]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
def
_registered[T <: BindingRef](bindingRef: T): T
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
addImplicit[T](implicit arg0: Tag[T], instance: T, pos: CodePositionMaterializer): MakeDSLUnnamedAfterFrom[T]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
final
def
bindings: Set[Binding]
- Definition Classes
- ModuleDefDSL
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
equals(obj: Any): Boolean
- Definition Classes
- ModuleBase → AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
hashCode(): Int
- Definition Classes
- ModuleBase → AnyRef → Any
-
final
def
include(that: ModuleBase): Unit
- Attributes
- protected[this]
- Definition Classes
- IncludesDSL
-
final
def
includeApplyTags(that: ModuleBase): Unit
- Attributes
- protected[this]
- Definition Classes
- IncludesDSL
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
iterator: Iterator[Binding]
- Definition Classes
- ModuleDefDSL
-
final
def
keys: Set[DIKey]
- Definition Classes
- ModuleBase
-
final
def
keysIterator: Iterator[DIKey]
- Definition Classes
- ModuleDefDSL
-
final macro
def
make[T]: MakeDSL[T]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
many[T](implicit tag: Tag[Set[T]], pos: CodePositionMaterializer): SetDSL[T]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
modify[T]: ModifyDSL[T, MakeDSL, MakeDSLUnnamedAfterFrom, SetDSL]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
tag(tags: BindingTag*): Unit
- Attributes
- protected[this]
- Definition Classes
- TagsDSL
-
final
def
toString(): String
- Definition Classes
- ModuleBase → AnyRef → Any
-
final
def
todo[T](implicit arg0: Tag[T], pos: CodePositionMaterializer): MakeDSLUnnamedAfterFrom[T]
- Attributes
- protected[this]
- Definition Classes
- AbstractBindingDefDSL
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated