Scala Compiler2.12.2-20170504-135222-21d12e9 < Back
 

# 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

c

scala.tools.nsc.doc.model.ModelFactoryImplicitSupport

# ImplicitNotFound 

###

#### 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

Linear Supertypes
java.lang.Exception, java.lang.Throwable, java.io.Serializable, AnyRef, Any
Type Hierarchy
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. ImplicitNotFound
2. Exception
3. Throwable
4. Serializable
5. AnyRef
6. Any

Implicitly

1. by RichException
2. by any2stringadd
3. by StringFormat
4. by Ensuring
5. by ArrowAssoc

1. Hide All
2. Show All

Visibility

1. Public
2. All

### 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 to any2stringadd[(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 to ArrowAssoc[(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[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )
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 to Ensuring[(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 to Ensuring[(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 to Ensuring[(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 to Ensuring[(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: Any): Boolean
    Definition Classes
      AnyRef → Any
15.  def fillInStackTrace(): java.lang.Throwable
    Definition Classes
      Throwable
16.  def finalize(): Unit
    Attributes
      protected[java.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 to StringFormat[(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[_]
    Definition Classes
      AnyRef → Any
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
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
29.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
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( ... )
37.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
38.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
39.  def →[B](y: B): ((ModelFactoryImplicitSupport.this)#ImplicitNotFound, B)
    Implicit
      This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound to ArrowAssoc[(ModelFactoryImplicitSupport.this)#ImplicitNotFound] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
      ArrowAssoc

### Deprecated Value Members

1.  def getStackTraceString: String
   Implicit
     This member is added by an implicit conversion from (ModelFactoryImplicitSupport.this)#ImplicitNotFound to RichException performed by method RichException in scala.Predef.
   Definition Classes
     RichException
   Annotations
     @deprecated
   Deprecated

     (Since version 2.11.0) use Throwable#getStackTrace

### 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 RichException from (ModelFactoryImplicitSupport.this)#ImplicitNotFound to RichException

### 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