trait Injector extends DependencyPoolRef[LocalizedContainer]
- Self Type
- Injector
- Alphabetic
- By Inheritance
- Injector
- DependencyPoolRef
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- implicit final class __refuel_X[T] extends AnyRef
Gets an indexer for registering new dependencies.
Gets an indexer for registering new dependencies. By default, the dependency priority is set to maximum.
- T
new dependency type
- Attributes
- protected
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
- implicit val __refuel_accessor: Accessor[_]
This refers to itself.
This refers to itself. When injecting, check if this Accessor is authorized.
- Attributes
- protected
- implicit def __refuel_c: Container
- Definition Classes
- DependencyPoolRef
- val __refuel_cRef: Option[LocalizedContainer]
- Definition Classes
- DependencyPoolRef
- implicit def _implicitNestedProviding[X](variable: Lazy[Lazy[X]])(implicit ctn: LocalizedContainer): X
- implicit def _implicitProviding[X](variable: Lazy[X])(implicit ctn: LocalizedContainer): X
Provide internal instance Lazy[T].
Provide internal instance Lazy[T]. Once injected, the object is persisted. However, if a request from a different container instance occurs, it may be searched again.
- X
Variable type
- variable
Stored dependency object.
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def closed[T](ctx: (LocalizedContainer) => T): T
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def extended[T](ctx: (LocalizedContainer) => T)(implicit c: Container): T
Create a container shade.
Create a container shade. You can't nest shading.
class A(value: String) class B(a: A) class C(b: B) class D(c: C) shade { implicit c => new BStub().index[B]() inject[D].run // Use BStub in C in D } inject[D].run // Use A in B in C in D
- T
Result type
- ctx
Shaded container function.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- macro def inject[T]: Lazy[T]
Get accessible dependencies.
Get accessible dependencies.
The type information is resolved at compile time, but the injection object is finalized at runtime.
- T
Injection type
- Attributes
- protected
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated