A typeclass that describes how to instantiate an array for the given type T.
This is a class tag on steroids.
It is used in reactive collections that have to do a lot of array allocations.
type for which we want to instantiate an array
Class tag for type T.
Creates a new array of type T initialized with nil.
Creates a new array of type T initialized with the default JVM value for that type.
Returns the nil value for the type -- a value never
used by user applications.
For reference types this is usually null,
but for integers this will usually be Int.MinValue
and not 0.