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 no one 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.
Attributes
- Source
- ClassManifestDeprecatedApis.scala
- Graph
-
- Supertypes
- Self type
-
ClassManifestFactory.type
Members list
Value members
Concrete methods
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.
Attributes
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 bootstrap
Attributes
Attributes
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.
Attributes
- 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)
- Source
- ClassManifestDeprecatedApis.scala
ClassManifest for the class type clazz[args]
, where clazz
is a top-level or static class and args
are its type arguments
ClassManifest for the class type clazz[args]
, where clazz
is a top-level or static class and args
are its type arguments
Attributes
ClassManifest for the class type clazz[args]
, where clazz
is a class with non-package prefix type prefix
and type arguments args
.
ClassManifest for the class type clazz[args]
, where clazz
is a class with non-package prefix type prefix
and type arguments args
.