com.fasterxml.classmate.types
Class ResolvedPrimitiveType

java.lang.Object
  extended by com.fasterxml.classmate.ResolvedType
      extended by com.fasterxml.classmate.types.ResolvedPrimitiveType

public final class ResolvedPrimitiveType
extends ResolvedType

Type used for Java primitive types (which does not include arrays here).

Since set of primitive types is bounded, constructor is defined as protected, and class final; that is, new primitive types are not to be constructed by calling applications.


Field Summary
protected  String _description
          Human-readable description should be simple as well
protected  String _signature
          Primitive types have single-character Signature, easy and efficient to just store here
 
Fields inherited from class com.fasterxml.classmate.ResolvedType
_erasedType, _typeBindings, NO_CONSTRUCTORS, NO_FIELDS, NO_METHODS, NO_TYPES
 
Constructor Summary
protected ResolvedPrimitiveType(Class<?> erased, char sig, String desc)
           
 
Method Summary
static List<ResolvedPrimitiveType> all()
           
 StringBuilder appendBriefDescription(StringBuilder sb)
           
 StringBuilder appendErasedSignature(StringBuilder sb)
           
 StringBuilder appendFullDescription(StringBuilder sb)
           
 StringBuilder appendSignature(StringBuilder sb)
           
 boolean canCreateSubtypes()
          Method that can be used to check if call to TypeResolver.resolveSubtype(ResolvedType, Class) may ever succeed; if false, it will fail with an exception, if true, it may succeed.
 ResolvedType getArrayElementType()
          Method that can be used to access element type of array types; will return null for non-array types, and non-null type for array types.
 String getErasedSignature()
          Method that returns type erased signature of the type; suitable as non-generic signature some packages need
 String getFullDescription()
          Human-readable full description of type, which includes specification of super types (in brief format)
 List<ResolvedType> getImplementedInterfaces()
          Returns ordered list of interfaces (in declaration order) that this type implements.
 ResolvedType getParentClass()
          Returns parent class of this type, if it has one; primitive types and interfaces have no parent class, nor does Object type Object.
 ResolvedType getSelfReferencedType()
          Accessor that must be used to find out actual type in case of "self-reference"; case where type refers recursive to itself (like, T implements Comparable<T>).
 String getSignature()
          Method that returns full generic signature of the type; suitable as signature for things like ASM package.
 boolean isAbstract()
           
 boolean isArray()
          Method that indicates whether this type is an array type.
 boolean isInterface()
           
 boolean isPrimitive()
          Method that indicates whether this type is one of small number of primitive Java types; not including array types of primitive types but just basic primitive types.
static ResolvedPrimitiveType voidType()
           
 
Methods inherited from class com.fasterxml.classmate.ResolvedType
_appendClassDescription, _appendClassName, _appendClassSignature, _appendErasedClassSignature, _getConstructors, _getFields, _getMethods, canCreateSubtype, equals, findSupertype, getBriefDescription, getConstructors, getErasedType, getMemberFields, getMemberMethods, getStaticFields, getStaticMethods, getTypeBindings, getTypeParameters, hashCode, isConcrete, isInstanceOf, toString, typeParametersFor
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

_signature

protected final String _signature
Primitive types have single-character Signature, easy and efficient to just store here


_description

protected final String _description
Human-readable description should be simple as well

Constructor Detail

ResolvedPrimitiveType

protected ResolvedPrimitiveType(Class<?> erased,
                                char sig,
                                String desc)
Method Detail

all

public static List<ResolvedPrimitiveType> all()

voidType

public static ResolvedPrimitiveType voidType()

canCreateSubtypes

public boolean canCreateSubtypes()
Description copied from class: ResolvedType
Method that can be used to check if call to TypeResolver.resolveSubtype(ResolvedType, Class) may ever succeed; if false, it will fail with an exception, if true, it may succeed.

Specified by:
canCreateSubtypes in class ResolvedType

getSelfReferencedType

public ResolvedType getSelfReferencedType()
Description copied from class: ResolvedType
Accessor that must be used to find out actual type in case of "self-reference"; case where type refers recursive to itself (like, T implements Comparable<T>). For all other types returns null but for self-references "real" type. Separate accessor is provided to avoid accidental infinite loops.

Specified by:
getSelfReferencedType in class ResolvedType

getParentClass

public ResolvedType getParentClass()
Description copied from class: ResolvedType
Returns parent class of this type, if it has one; primitive types and interfaces have no parent class, nor does Object type Object. Also, placeholders for cyclic (recursive) types return null for this method.

Specified by:
getParentClass in class ResolvedType

isInterface

public boolean isInterface()
Specified by:
isInterface in class ResolvedType

isAbstract

public boolean isAbstract()
Specified by:
isAbstract in class ResolvedType

getArrayElementType

public ResolvedType getArrayElementType()
Description copied from class: ResolvedType
Method that can be used to access element type of array types; will return null for non-array types, and non-null type for array types.

Specified by:
getArrayElementType in class ResolvedType

isArray

public boolean isArray()
Description copied from class: ResolvedType
Method that indicates whether this type is an array type.

Specified by:
isArray in class ResolvedType

isPrimitive

public boolean isPrimitive()
Description copied from class: ResolvedType
Method that indicates whether this type is one of small number of primitive Java types; not including array types of primitive types but just basic primitive types.

Specified by:
isPrimitive in class ResolvedType

getImplementedInterfaces

public List<ResolvedType> getImplementedInterfaces()
Description copied from class: ResolvedType
Returns ordered list of interfaces (in declaration order) that this type implements.

Specified by:
getImplementedInterfaces in class ResolvedType
Returns:
List of interfaces this type implements, if any; empty list if none

getSignature

public String getSignature()
Description copied from class: ResolvedType
Method that returns full generic signature of the type; suitable as signature for things like ASM package.

Overrides:
getSignature in class ResolvedType

getErasedSignature

public String getErasedSignature()
Description copied from class: ResolvedType
Method that returns type erased signature of the type; suitable as non-generic signature some packages need

Overrides:
getErasedSignature in class ResolvedType

getFullDescription

public String getFullDescription()
Description copied from class: ResolvedType
Human-readable full description of type, which includes specification of super types (in brief format)

Overrides:
getFullDescription in class ResolvedType

appendSignature

public StringBuilder appendSignature(StringBuilder sb)
Specified by:
appendSignature in class ResolvedType

appendErasedSignature

public StringBuilder appendErasedSignature(StringBuilder sb)
Specified by:
appendErasedSignature in class ResolvedType

appendFullDescription

public StringBuilder appendFullDescription(StringBuilder sb)
Specified by:
appendFullDescription in class ResolvedType

appendBriefDescription

public StringBuilder appendBriefDescription(StringBuilder sb)
Specified by:
appendBriefDescription in class ResolvedType


Copyright © 2011 fasterxml.com. All Rights Reserved.