Package com.strobel.reflection
Class ErasedType<T>
- java.lang.Object
-
- com.strobel.reflection.MemberInfo
-
- com.strobel.reflection.Type<T>
-
- com.strobel.reflection.ErasedType<T>
-
- All Implemented Interfaces:
java.lang.reflect.AnnotatedElement,java.lang.reflect.Type
final class ErasedType<T> extends Type<T>
-
-
Field Summary
Fields Modifier and Type Field Description private Type<?>_baseTypeprivate ConstructorList_constructorsprivate FieldList_fieldsprivate TypeList_interfacesprivate MethodList_methodsprivate TypeList_nestedTypesprivate Type<?>_originalType(package private) static TypeEraserGenericEraserprivate static TypeMapper<java.lang.Void>UpperBoundMapper-
Fields inherited from class com.strobel.reflection.Type
Bottom, CACHE, CACHE_LOCK, DefaultBinder, DefaultLookup, Delimiter, EmptyConstructors, EmptyFields, EmptyMembers, EmptyMethods, EmptyObjects, EmptyStrings, EmptyTypes, FilterMethodOverride, FilterName, FilterNameIgnoreCase, FilterRawMember, NullType, PRIMITIVE_TYPES, RESOLVER, TYPE_BINDER, Value
-
Fields inherited from class com.strobel.reflection.MemberInfo
EMPTY_ANNOTATIONS, ENUM_MODIFIER, VARARGS_MODIFIER
-
-
Constructor Summary
Constructors Constructor Description ErasedType(Type<?> baseType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <P,R>
Raccept(TypeVisitor<P,R> typeVisitor, P parameter)private voidensureBaseType()private voidensureConstructors()private voidensureFields()private voidensureInterfaces()private voidensureMethods()private voidensureNestedTypes()<A extends java.lang.annotation.Annotation>
AgetAnnotation(java.lang.Class<A> annotationClass)java.lang.annotation.Annotation[]getAnnotations()Type<? super T>getBaseType()protected java.lang.StringgetClassFullName()protected java.lang.StringgetClassSimpleName()java.lang.annotation.Annotation[]getDeclaredAnnotations()ConstructorListgetDeclaredConstructors()protected FieldListgetDeclaredFields()protected MethodListgetDeclaredMethods()protected TypeListgetDeclaredTypes()Type<?>getDeclaringType()java.lang.Class<T>getErasedClass()TypeListgetExplicitInterfaces()java.lang.StringgetFullName()Type<?>getGenericTypeDefinition()java.lang.StringgetInternalName()intgetModifiers()java.lang.StringgetName()TypeBindingsgetTypeBindings()protected Type<?>getUnderlyingTypeCore()booleanisAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)booleanisGenericType()booleanisRawType()-
Methods inherited from class com.strobel.reflection.Type
_appendClassDescription, _appendClassName, _appendClassSignature, _appendErasedClassSignature, appendBriefDescription, appendDescription, appendErasedDescription, appendErasedSignature, appendGenericSignature, appendSignature, appendSimpleDescription, asSuperTypeOf, bottomType, containsGenericParameter, containsGenericParameters, createArrayType, filterMethodBase, filterPreCalculate, findMembers, forName, forName, getCache, getConstructor, getConstructor, getConstructor, getConstructors, getConstructors, getDeclaringMethod, getElementType, getEnumConstants, getEnumNames, getErasedType, getExtendsBound, getField, getField, getFields, getFields, getGenericParameterPosition, getGenericSignature, getGenericTypeParameters, getInterfaces, getKind, getMember, getMember, getMember, getMembers, getMembers, getMembers, getMembers, getMembers, getMembersOfType, getMemberType, getMethod, getMethod, getMethod, getMethods, getMethods, getMethods, getMostSpecificType, getNestedType, getNestedType, getNestedTypes, getNestedTypes, getPackage, getRootElementType, getShortName, getSuperBound, getType, getTypeArguments, getUnderlyingType, hasElementType, hasExtendsBound, hashCode, hasSuperBound, implementsInterface, invalidateCaches, isAbstract, isArray, isAssignableFrom, isBoundedType, isClass, isCompoundType, isEnum, isEquivalentTo, isEquivalentTo, isGenericParameter, isGenericTypeDefinition, isInstance, isInterface, isLocalClass, isNested, isPrimitive, isSubTypeOf, isSynthetic, isUnbounded, isVisible, isWildcardType, list, list, list, makeArrayType, makeArrayType, makeCompoundType, makeCompoundType, makeExtendsWildcard, makeGenericType, makeGenericType, makeGenericTypeCore, makeSuperWildcard, makeWildcard, newInstance, nullType, of, of, substitute, toString, tryFind, unboundedWildcard
-
Methods inherited from class com.strobel.reflection.MemberInfo
emptyAnnotations, equals, getAnnotationsByType, getBriefDescription, getDeclaredAnnotation, getDeclaredAnnotationsByType, getDescription, getErasedDescription, getErasedSignature, getReflectedType, getSignature, getSimpleDescription, isFinal, isNonPublic, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic
-
-
-
-
Field Detail
-
GenericEraser
static final TypeEraser GenericEraser
-
_originalType
private final Type<?> _originalType
-
_interfaces
private TypeList _interfaces
-
_baseType
private Type<?> _baseType
-
_fields
private FieldList _fields
-
_constructors
private ConstructorList _constructors
-
_methods
private MethodList _methods
-
_nestedTypes
private TypeList _nestedTypes
-
UpperBoundMapper
private static final TypeMapper<java.lang.Void> UpperBoundMapper
-
-
Constructor Detail
-
ErasedType
ErasedType(Type<?> baseType)
-
-
Method Detail
-
ensureBaseType
private void ensureBaseType()
-
ensureInterfaces
private void ensureInterfaces()
-
ensureFields
private void ensureFields()
-
ensureConstructors
private void ensureConstructors()
-
ensureMethods
private void ensureMethods()
-
ensureNestedTypes
private void ensureNestedTypes()
-
getClassFullName
protected java.lang.String getClassFullName()
- Overrides:
getClassFullNamein classType<T>
-
getClassSimpleName
protected java.lang.String getClassSimpleName()
- Overrides:
getClassSimpleNamein classType<T>
-
getFullName
public java.lang.String getFullName()
- Overrides:
getFullNamein classType<T>
-
getInternalName
public java.lang.String getInternalName()
- Overrides:
getInternalNamein classType<T>
-
getErasedClass
public java.lang.Class<T> getErasedClass()
- Overrides:
getErasedClassin classType<T>
-
getUnderlyingTypeCore
@NotNull protected Type<?> getUnderlyingTypeCore()
- Overrides:
getUnderlyingTypeCorein classType<T>
-
getExplicitInterfaces
public TypeList getExplicitInterfaces()
- Overrides:
getExplicitInterfacesin classType<T>
-
getBaseType
public Type<? super T> getBaseType()
- Overrides:
getBaseTypein classType<T>
-
getGenericTypeDefinition
public Type<?> getGenericTypeDefinition()
- Overrides:
getGenericTypeDefinitionin classType<T>
-
getDeclaringType
public Type<?> getDeclaringType()
- Specified by:
getDeclaringTypein classMemberInfo
-
isGenericType
public boolean isGenericType()
- Overrides:
isGenericTypein classType<T>
-
getTypeBindings
public TypeBindings getTypeBindings()
- Overrides:
getTypeBindingsin classType<T>
-
getModifiers
public int getModifiers()
- Specified by:
getModifiersin classMemberInfo
-
isAnnotationPresent
public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
- Specified by:
isAnnotationPresentin interfacejava.lang.reflect.AnnotatedElement- Overrides:
isAnnotationPresentin classType<T>
-
getAnnotation
public <A extends java.lang.annotation.Annotation> A getAnnotation(java.lang.Class<A> annotationClass)
- Specified by:
getAnnotationin interfacejava.lang.reflect.AnnotatedElement- Overrides:
getAnnotationin classType<T>
-
getAnnotations
@NotNull public java.lang.annotation.Annotation[] getAnnotations()
- Specified by:
getAnnotationsin interfacejava.lang.reflect.AnnotatedElement- Overrides:
getAnnotationsin classType<T>
-
getDeclaredAnnotations
@NotNull public java.lang.annotation.Annotation[] getDeclaredAnnotations()
- Specified by:
getDeclaredAnnotationsin interfacejava.lang.reflect.AnnotatedElement- Overrides:
getDeclaredAnnotationsin classType<T>
-
accept
public <P,R> R accept(TypeVisitor<P,R> typeVisitor, P parameter)
-
getDeclaredConstructors
public ConstructorList getDeclaredConstructors()
- Overrides:
getDeclaredConstructorsin classType<T>
-
getDeclaredMethods
protected MethodList getDeclaredMethods()
- Overrides:
getDeclaredMethodsin classType<T>
-
getDeclaredFields
protected FieldList getDeclaredFields()
- Overrides:
getDeclaredFieldsin classType<T>
-
getDeclaredTypes
protected TypeList getDeclaredTypes()
- Overrides:
getDeclaredTypesin classType<T>
-
-