Packages

  • package root

    The Scala compiler and reflection APIs.

    The Scala compiler and reflection APIs.

    Definition Classes
    root
  • package scala
    Definition Classes
    root
  • package tools
    Definition Classes
    scala
  • package nsc
    Definition Classes
    tools
  • package doc
    Definition Classes
    nsc
  • package model
    Definition Classes
    doc
  • trait ModelFactoryImplicitSupport extends AnyRef

    This trait finds implicit conversions for a class in the default scope and creates scaladoc entries for each of them.

    This trait finds implicit conversions for a class in the default scope and creates scaladoc entries for each of them.

    Let's take this as an example:

    object Test {
      class A
    
      class B {
        def foo = 1
      }
    
      class C extends B {
        def bar = 2
        class implicit
      }
    
      D def conv(a: A) = new C
    }

    Overview: - scaladoc-ing the above classes, A will get two more methods: foo and bar, over its default methods - the nested classes (specifically D above), abstract types, type aliases and constructor members are not added to A (see makeMember0 in ModelFactory, last 3 cases) - the members added by implicit conversion are always listed under the implicit conversion, not under the class they actually come from (foo will be listed as coming from the implicit conversion to C instead of B) - see definitionName in MemberImpl

    Internals: TODO: Give an overview here

    Definition Classes
    model
  • ImplicitConversionImpl
  • ImplicitNotFound
  • typeVarToOriginOrWildcard
  • wildcardToNothing

class ImplicitNotFound extends Exception

This is a flag that indicates whether to eliminate implicits that cannot be satisfied within the current scope. For example, if an implicit conversion requires that there is a Numeric[T] in scope:

class A[T]
class B extends A[Int]
class C extends A[String]
implicit def enrichA[T: Numeric](a: A[T]): D

For B, no constraints are generated as Numeric[Int] is already in the default scope. On the other hand, for the conversion from C to D, depending on -implicits-show-all, the conversion can:

  • not be generated at all, since there's no Numeric[String] in scope (if ran without -implicits-show-all)
  • generated with a *weird* constraint, Numeric[String] as the user might add it by hand (if flag is enabled)
Source
ModelFactoryImplicitSupport.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ImplicitNotFound
  2. Exception
  3. Throwable
  4. Serializable
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ImplicitNotFound(tpe: Global.Type)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toany2stringadd[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): ((ModelFactoryImplicitSupport.this)#ImplicitNotFound, B)
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toArrowAssoc[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def addSuppressed(arg0: java.lang.Throwable): Unit
    Definition Classes
    Throwable
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. def ensuring(cond: ((ModelFactoryImplicitSupport.this)#ImplicitNotFound) => Boolean, msg: => Any): (ModelFactoryImplicitSupport.this)#ImplicitNotFound
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toEnsuring[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: ((ModelFactoryImplicitSupport.this)#ImplicitNotFound) => Boolean): (ModelFactoryImplicitSupport.this)#ImplicitNotFound
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toEnsuring[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean, msg: => Any): (ModelFactoryImplicitSupport.this)#ImplicitNotFound
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toEnsuring[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean): (ModelFactoryImplicitSupport.this)#ImplicitNotFound
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toEnsuring[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. def fillInStackTrace(): java.lang.Throwable
    Definition Classes
    Throwable
  16. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  17. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toStringFormat[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  18. def getCause(): java.lang.Throwable
    Definition Classes
    Throwable
  19. final def getClass(): java.lang.Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. def getLocalizedMessage(): String
    Definition Classes
    Throwable
  21. def getMessage(): String
    Definition Classes
    Throwable
  22. def getStackTrace(): Array[StackTraceElement]
    Definition Classes
    Throwable
  23. final def getSuppressed(): Array[java.lang.Throwable]
    Definition Classes
    Throwable
  24. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  25. def initCause(arg0: java.lang.Throwable): java.lang.Throwable
    Definition Classes
    Throwable
  26. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  27. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  28. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  29. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  30. def printStackTrace(arg0: PrintWriter): Unit
    Definition Classes
    Throwable
  31. def printStackTrace(arg0: PrintStream): Unit
    Definition Classes
    Throwable
  32. def printStackTrace(): Unit
    Definition Classes
    Throwable
  33. def setStackTrace(arg0: Array[StackTraceElement]): Unit
    Definition Classes
    Throwable
  34. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  35. def toString(): String
    Definition Classes
    Throwable → AnyRef → Any
  36. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def [B](y: B): ((ModelFactoryImplicitSupport.this)#ImplicitNotFound, B)
    Implicit
    This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound toArrowAssoc[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from java.lang.Exception

Inherited from java.lang.Throwable

Inherited from java.io.Serializable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from(ModelFactoryImplicitSupport.this)#ImplicitNotFound to any2stringadd[(ModelFactoryImplicitSupport.this)#ImplicitNotFound]

Inherited by implicit conversion StringFormat from(ModelFactoryImplicitSupport.this)#ImplicitNotFound to StringFormat[(ModelFactoryImplicitSupport.this)#ImplicitNotFound]

Inherited by implicit conversion Ensuring from(ModelFactoryImplicitSupport.this)#ImplicitNotFound to Ensuring[(ModelFactoryImplicitSupport.this)#ImplicitNotFound]

Inherited by implicit conversion ArrowAssoc from(ModelFactoryImplicitSupport.this)#ImplicitNotFound to ArrowAssoc[(ModelFactoryImplicitSupport.this)#ImplicitNotFound]

Ungrouped