Packages

c

refuel.injector

AutoInjectCustomPriority

class AutoInjectCustomPriority[T] extends AutoInject[T]

Inject automatically by specifying priority.

This was been deprecated. If you want to use this feature, please declare your own trait with custom priority.

trait MyAutoInject[T] extends AutoInject[T] {
  override val injectionPriority: Int = AutoInject.DEFAULT_INJECTION_PRIORITY + 1
}
T

Type to register

Self Type
AutoInjectCustomPriority[T] with T
Annotations
@deprecated
Deprecated

Define and use traits with custom priorities as needed

Linear Supertypes
AutoInject[T], Injector, MetaMediation[Container], CanBeContainer[Container], AutoInjectable[T], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AutoInjectCustomPriority
  2. AutoInject
  3. Injector
  4. MetaMediation
  5. CanBeContainer
  6. AutoInjectable
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AutoInjectCustomPriority(injectionPriority: Int)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. implicit val _cntMutation: Container
    Definition Classes
    Injector → CanBeContainer
  5. implicit def _ijp: InjectionPool

    Implicitly injection pool

    Implicitly injection pool

    Attributes
    protected
    Definition Classes
    MetaMediation → CanBeContainer
  6. implicit def _someoneNeeds: Accessor[_]
    Attributes
    protected
    Definition Classes
    CanBeContainer
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. macro def bind[T](implicit ctn: Container, ip: InjectionPool, access: Accessor[_]): T

    Get accessible dependencies.

    Get accessible dependencies. You can detect errors that can not be assigned at compile time.

    It is faster than refuel.injector.MetaMediation.inject because of immediate assignment, but the dependency injected at compile time is determined, and this assignment can not be overwritten with "flush" or "narrow".

    The scope to which this immediate assignment applies is all the same instances that inherit refuel.injector.AutoInjectable.

    T

    Injection type

    ctn

    Container

    access

    Accessor (This refers to itself)

    Attributes
    protected
    Definition Classes
    MetaMediation
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  13. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. macro def inject[T](t: scala.reflect.api.JavaUniverse.TypeTag[T])(implicit ctn: Container, ip: InjectionPool, access: Accessor[_]): Lazy[T]

    Get accessible dependencies.

    Get accessible dependencies.

    The type information is resolved at compile time, but the injection object is finalized at runtime. This function is slower than refuel.injector.MetaMediation.bind, but can be overwritten by flush or narrow.

    T

    Injection type

    ctn

    Container

    access

    Accessor (This refers to itself)

    Attributes
    protected
    Definition Classes
    MetaMediation
  16. macro def inject[T](implicit ctn: Container, ip: InjectionPool, access: Accessor[_]): Lazy[T]

    Get accessible dependencies.

    Get accessible dependencies.

    The type information is resolved at compile time, but the injection object is finalized at runtime. This function is slower than refuel.injector.MetaMediation.bind, but can be overwritten by flush or narrow.

    T

    Injection type

    ctn

    Container

    access

    Accessor (This refers to itself)

    Attributes
    protected
    Definition Classes
    MetaMediation
  17. val injectionPriority: Int
    Definition Classes
    AutoInjectCustomPriorityAutoInject → AutoInjectable
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def narrow[T](x: T, priority: Int = Int.MaxValue)(implicit arg0: scala.reflect.api.JavaUniverse.WeakTypeTag[T], ctn: Container): Indexer[T]

    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

    x

    new dependency

    priority

    Injection priority.

    Attributes
    protected
    Definition Classes
    MetaMediation
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. def overwrite[T](x: T, priority: Int = AutoInject.DEFAULT_INJECTION_PRIORITY + 100)(implicit arg0: scala.reflect.api.JavaUniverse.WeakTypeTag[T], ctn: Container): Unit

    Manually register the new dependency.

    Manually register the new dependency.

    T

    new dependency type

    x

    new dependency.

    priority

    Injection priority.

    Definition Classes
    MetaMediation
  24. def shade[T](ctx: (LocalizedContainer) => T): T

    Create a container shade.

    Create a container shade.

    T

    Result type

    ctx

    Shaded container function.

    Definition Classes
    MetaMediation
  25. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  26. def toString(): String
    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AutoInject[T]

Inherited from Injector

Inherited from MetaMediation[Container]

Inherited from CanBeContainer[Container]

Inherited from AutoInjectable[T]

Inherited from AnyRef

Inherited from Any

Ungrouped