A class representing the type U
to which T
would be erased.
A class representing the type U
to which T
would be erased.
Note that there is no subtyping relationship between T
and U
.
A method that should be called from every well-designed equals method that is open to be overridden in a subclass.
A method that should be called from every well-designed equals method that is open to be overridden in a subclass. See Programming in Scala, Chapter 28 for discussion and design.
the value being probed for possible equality
true if this instance can possibly equal that
, otherwise false
Note: testing for erasure here is important, as it is many times faster than <:< and rules out most comparisons.
Produces a new array with element type T
and length len
Produces a new array with element type T
and length len
A ClassTag[T] can serve as an extractor that matches only objects of type T.
A ClassTag[T] can serve as an extractor that matches only objects of type T.
The compiler tries to turn unchecked type tests in pattern matches into checked ones
by wrapping a (_: T)
type pattern as ct(_: T)
, where ct
is the ClassTag[T]
instance.
Type tests necessary before calling other extractors are treated similarly.
SomeExtractor(...)
is turned into ct(SomeExtractor(...))
if T
in SomeExtractor.unapply(x: T)
is uncheckable, but we have an instance of ClassTag[T]
.
Produces a ClassTag
that knows how to instantiate an Array[Array[T]]
Produces a ClassTag
that knows how to instantiate an Array[Array[T]]
Tests whether the type represented by this manifest is a subtype
of the type represented by that
manifest, subject to the limitations
described in the header.
Tests whether the type represented by this manifest is a subtype
of the type represented by that
manifest, subject to the limitations
described in the header.
(Since version 2.10.0) Use scala.reflect.runtime.universe.TypeTag for subtype checking instead
Tests whether the type represented by this manifest is a supertype
of the type represented by that
manifest, subject to the limitations
described in the header.
Tests whether the type represented by this manifest is a supertype
of the type represented by that
manifest, subject to the limitations
described in the header.
(Since version 2.10.0) Use scala.reflect.runtime.universe.TypeTag for subtype checking instead
(Since version 2.10.0) Use runtimeClass instead
(Since version 2.10.0) Use wrap.newArray instead
(Since version 2.10.0) Use wrap.wrap.newArray instead
(Since version 2.10.0) Use wrap.wrap.wrap.newArray instead
(Since version 2.10.0) Use wrap.wrap.wrap.wrap.newArray instead
(Since version 2.10.0) Use ArrayBuilder.make(this) instead
(Since version 2.10.0) Create WrappedArray directly instead
A
Manifest[T]
is an opaque descriptor for type T. Its supported use is to give access to the erasure of the type as aClass
instance, as is necessary for the creation of nativeArrays
if the class is not known at compile time.The type-relation operators
<:<
and=:=
should be considered approximations only, as there are numerous aspects of type conformance which are not yet adequately represented in manifests.Example usages: