scala.reflect

# ClassManifestFactory

#### object ClassManifestFactory

`ClassManifestFactory` defines factory methods for manifests. It is intended for use by the compiler and should not be used in client code.

Unlike `ClassManifest`, this factory isn't annotated with a deprecation warning. This is done to prevent avalanches of deprecation warnings in the code that calls methods with manifests.

In a perfect world, we would just remove the @deprecated annotation from `ClassManifest` the object and then delete it in 2.11. After all, that object is explicitly marked as internal, so noone should use it. However a lot of existing libraries disregarded the scaladoc that comes with `ClassManifest`, so we need to somehow nudge them into migrating prior to removing stuff out of the blue. Hence we've introduced this design decision as the lesser of two evils.

Source
  ClassManifestDeprecatedApis.scala

Linear Supertypes
AnyRef, Any
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. ClassManifestFactory
2. AnyRef
3. Any

1. Hide All
2. Show all

Learn more about member selection
Visibility

1. Public
2. All

### 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. #### val Any: Manifest[Any]

5. #### val AnyVal: Manifest[AnyVal]

6. #### val Boolean: AnyValManifest[Boolean]

7. #### val Byte: AnyValManifest[Byte]

8. #### val Char: AnyValManifest[Char]

9. #### val Double: AnyValManifest[Double]

10. #### val Float: AnyValManifest[Float]

11. #### val Int: AnyValManifest[Int]

12. #### val Long: AnyValManifest[Long]

13. #### val Nothing: Manifest[Nothing]

14. #### val Null: Manifest[Null]

15. #### val Object: Manifest[AnyRef]

16. #### val Short: AnyValManifest[Short]

17. #### val Unit: AnyValManifest[Unit]

18. #### def abstractType[T](prefix: OptManifest[_], name: String, upperbound: ClassManifest[_], args: OptManifest[_]*): ClassManifest[T]

    ClassManifest for the abstract type `prefix # name`.

    ClassManifest for the abstract type `prefix # name`. `upperBound` is not strictly necessary as it could be obtained by reflection. It was added so that erasure can be calculated without reflection. todo: remove after next boostrap

19. #### def abstractType[T](prefix: OptManifest[_], name: String, clazz: Class[_], args: OptManifest[_]*): ClassManifest[T]

    ClassManifest for the abstract type `prefix # name`.

    ClassManifest for the abstract type `prefix # name`. `upperBound` is not strictly necessary as it could be obtained by reflection. It was added so that erasure can be calculated without reflection.

20. #### def arrayType[T](arg: OptManifest[_]): ClassManifest[Array[T]]

21. #### final def asInstanceOf[T0]: T0

    Definition Classes
      Any

22. #### def classType[T](prefix: OptManifest[_], clazz: Class[_], args: OptManifest[_]*): ClassManifest[T]

    ClassManifest for the class type `clazz[args]`, where `clazz` is a class with non-package prefix type `prefix` and type arguments `args`.

23. #### def classType[T](clazz: Class[_], arg1: OptManifest[_], args: OptManifest[_]*): ClassManifest[T]

    ClassManifest for the class type `clazz[args]`, where `clazz` is a top-level or static class and `args` are its type arguments

24. #### def classType[T](clazz: Class[_]): ClassManifest[T]

    ClassManifest for the class type `clazz`, where `clazz` is a top-level or static class.

    ClassManifest for the class type `clazz`, where `clazz` is a top-level or static class.

    Note

      This no-prefix, no-arguments case is separate because we it's called from ScalaRunTime.boxArray itself. If we pass varargs as arrays into this, we get an infinitely recursive call to boxArray. (Besides, having a separate case is more efficient)

25. #### def clone(): AnyRef

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

26. #### final def eq(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

27. #### def equals(arg0: Any): Boolean

    Definition Classes
      AnyRef → Any

28. #### def finalize(): Unit

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )

29. #### def fromClass[T](clazz: Class[T]): ClassManifest[T]

30. #### final def getClass(): Class[_]

    Definition Classes
      AnyRef → Any

31. #### def hashCode(): Int

    Definition Classes
      AnyRef → Any

32. #### final def isInstanceOf[T0]: Boolean

    Definition Classes
      Any

33. #### final def ne(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

34. #### final def notify(): Unit

    Definition Classes
      AnyRef

35. #### final def notifyAll(): Unit

    Definition Classes
      AnyRef

36. #### def singleType[T <: AnyRef](value: AnyRef): Manifest[T]

37. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

38. #### def toString(): String

    Definition Classes
      AnyRef → Any

39. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

40. #### final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

41. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from AnyRef

### Inherited from Any

### Ungrouped