public final class ArrayType extends TypeBase
JavaType.| Modifier and Type | Field and Description |
|---|---|
protected JavaType |
_componentType
Type of elements in the array.
|
protected Object |
_emptyArray
We will also keep track of shareable instance of empty array,
since it usually needs to be constructed any way; and because
it is essentially immutable and thus can be shared.
|
_asStatic, _class, _hashCode, _typeHandler, _valueHandler| Modifier and Type | Method and Description |
|---|---|
protected JavaType |
_narrow(Class<?> subclass)
Handling of narrowing conversions for arrays is trickier: for now,
it is not even allowed.
|
protected String |
buildCanonicalName() |
static ArrayType |
construct(JavaType componentType,
Object valueHandler,
Object typeHandler) |
JavaType |
containedType(int index) |
int |
containedTypeCount() |
String |
containedTypeName(int index)
Not sure what symbolic name is used internally, if any;
let's follow naming of Collection types here.
|
boolean |
equals(Object o) |
JavaType |
getContentType() |
StringBuilder |
getErasedSignature(StringBuilder sb)
Method for accessing signature without generic
type information, in form compatible with all versions
of JVM, and specifically used for type descriptions
when generating byte code.
|
StringBuilder |
getGenericSignature(StringBuilder sb) |
boolean |
hasGenericTypes() |
boolean |
isAbstract()
For some odd reason, modifiers for array classes would
claim they are abstract types.
|
boolean |
isArrayType() |
boolean |
isConcrete()
For some odd reason, modifiers for array classes would
claim they are abstract types.
|
boolean |
isContainerType() |
JavaType |
narrowContentsBy(Class<?> contentClass)
For array types, both main type and content type can be modified;
but ultimately they are interchangeable.
|
String |
toString() |
JavaType |
widenContentsBy(Class<?> contentClass) |
ArrayType |
withContentTypeHandler(Object h)
"Copy method" that will construct a new instance that is identical to
this instance, except that its content type will have specified
type handler assigned.
|
ArrayType |
withContentValueHandler(Object h)
"Copy method" that will construct a new instance that is identical to
this instance, except that it will have specified content value handler assigned.
|
ArrayType |
withStaticTyping()
Method that can be called to get a type instance that indicates
that values of the type should be handled using "static typing" for purposes
of serialization (as opposed to "dynamic" aka runtime typing):
meaning that no runtime information is needed for determining serializers to use.
|
ArrayType |
withTypeHandler(Object h)
"Copy method" that will construct a new instance that is identical to
this instance, except that it will have specified type handler assigned.
|
ArrayType |
withValueHandler(Object h)
"Copy method" that will construct a new instance that is identical to
this instance, except that it will have specified value handler assigned.
|
_classSignature, getTypeHandler, getValueHandler, serialize, serializeWithType, toCanonical_assertSubclass, _widen, forcedNarrowBy, getErasedSignature, getGenericSignature, getKeyType, getRawClass, hashCode, hasRawClass, isCollectionLikeType, isEnumType, isFinal, isInterface, isMapLikeType, isPrimitive, isThrowable, narrowBy, useStaticType, widenByprotected final JavaType _componentType
protected final Object _emptyArray
public static ArrayType construct(JavaType componentType, Object valueHandler, Object typeHandler)
public ArrayType withTypeHandler(Object h)
JavaTypewithTypeHandler in class JavaTypepublic ArrayType withContentTypeHandler(Object h)
JavaTypewithContentTypeHandler in class JavaTypepublic ArrayType withValueHandler(Object h)
JavaTypewithValueHandler in class JavaTypepublic ArrayType withContentValueHandler(Object h)
JavaTypewithContentValueHandler in class JavaTypepublic ArrayType withStaticTyping()
JavaTypewithStaticTyping in class JavaTypeprotected String buildCanonicalName()
buildCanonicalName in class TypeBaseprotected JavaType _narrow(Class<?> subclass)
public JavaType narrowContentsBy(Class<?> contentClass)
narrowContentsBy in class JavaTypepublic JavaType widenContentsBy(Class<?> contentClass)
widenContentsBy in class JavaTypepublic boolean isArrayType()
isArrayType in class JavaTypepublic boolean isAbstract()
isAbstract in class JavaTypepublic boolean isConcrete()
isConcrete in class JavaTypepublic boolean hasGenericTypes()
hasGenericTypes in class JavaTypepublic String containedTypeName(int index)
containedTypeName in class JavaTypepublic boolean isContainerType()
isContainerType in class JavaTypepublic JavaType getContentType()
getContentType in class JavaTypepublic int containedTypeCount()
containedTypeCount in class JavaTypepublic JavaType containedType(int index)
containedType in class JavaTypepublic StringBuilder getGenericSignature(StringBuilder sb)
getGenericSignature in class TypeBasesb - StringBuilder to append signature topublic StringBuilder getErasedSignature(StringBuilder sb)
JavaTypegetErasedSignature in class TypeBasesb - StringBuilder to append signature toCopyright © 2012-2013 FasterXML. All Rights Reserved.