Package com.strobel.reflection
Class Type<T>
- java.lang.Object
-
- com.strobel.reflection.MemberInfo
-
- com.strobel.reflection.Type<T>
-
- All Implemented Interfaces:
java.lang.reflect.AnnotatedElement
,java.lang.reflect.Type
- Direct Known Subclasses:
ArrayType
,BottomType
,CapturedType
,CompoundType
,ErasedType
,GenericParameter
,GenericParameterBuilder
,GenericType
,NullType
,PrimitiveType
,ReflectedType
,RuntimeType
,TypeBuilder
,TypeBuilderInstantiation
,WildcardType
public abstract class Type<T> extends MemberInfo implements java.lang.reflect.Type
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
Type.FilterOptions
private static class
Type.LazyConstants
-
Field Summary
Fields Modifier and Type Field Description private RuntimeTypeCache<T>
_cache
private ErasedType<T>
_erasedType
private TypeList
_interfaces
static Type<?>
Bottom
Deprecated.UsebottomType()
instead.(package private) static TypeCache
CACHE
(package private) static java.lang.Object
CACHE_LOCK
static Binder
DefaultBinder
protected static java.util.Set<BindingFlags>
DefaultLookup
static char
Delimiter
protected static ConstructorInfo[]
EmptyConstructors
protected static FieldInfo[]
EmptyFields
protected static MemberInfo[]
EmptyMembers
protected static MethodInfo[]
EmptyMethods
protected static java.lang.Object[]
EmptyObjects
protected static java.lang.String[]
EmptyStrings
static Type<?>[]
EmptyTypes
static MemberFilter
FilterMethodOverride
static MemberFilter
FilterName
static MemberFilter
FilterNameIgnoreCase
static MemberFilter
FilterRawMember
static Type<?>
NullType
Deprecated.UsenullType()
instead.(package private) static Type<?>[]
PRIMITIVE_TYPES
(package private) static Resolver
RESOLVER
(package private) static TypeBinder
TYPE_BINDER
static Missing
Value
-
Fields inherited from class com.strobel.reflection.MemberInfo
EMPTY_ANNOTATIONS, ENUM_MODIFIER, VARARGS_MODIFIER
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
Type()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.StringBuilder
_appendClassDescription(java.lang.StringBuilder sb)
protected java.lang.StringBuilder
_appendClassName(java.lang.StringBuilder sb, boolean fullName, boolean dottedName)
protected java.lang.StringBuilder
_appendClassSignature(java.lang.StringBuilder sb)
protected java.lang.StringBuilder
_appendErasedClassSignature(java.lang.StringBuilder sb)
<P,R>
Raccept(TypeVisitor<P,R> visitor, P parameter)
java.lang.StringBuilder
appendBriefDescription(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendDescription(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendErasedDescription(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendErasedSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendGenericSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendSignature(java.lang.StringBuilder sb)
java.lang.StringBuilder
appendSimpleDescription(java.lang.StringBuilder sb)
Type<?>
asSuperTypeOf(Type<?> type)
static Type<?>
bottomType()
boolean
containsGenericParameter(Type<?> genericParameter)
boolean
containsGenericParameters()
protected Type<T[]>
createArrayType()
private boolean
filterApplyCore(MemberInfo member, java.util.Set<BindingFlags> bindingFlags, boolean isPublic, boolean isPackagePrivate, boolean isStatic, java.lang.String name, boolean prefixLookup)
private boolean
filterApplyPrefixLookup(MemberInfo method, java.lang.String name, boolean ignoreCase)
private boolean
filterApplyType(Type<?> type, java.util.Set<BindingFlags> bindingFlags, java.lang.String name, boolean prefixLookup)
(package private) boolean
filterMethodBase(MethodBase method, java.util.Set<BindingFlags> methodFlags, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConventions, Type<?>... argumentTypes)
(package private) static java.util.Set<BindingFlags>
filterPreCalculate(boolean isPublic, boolean isInherited, boolean isStatic)
MemberList<? extends MemberInfo>
findMembers(java.util.Set<MemberType> memberTypes, java.util.Set<BindingFlags> bindingAttr, MemberFilter filter, java.lang.Object filterCriteria)
static Type<?>
forName(java.lang.String name)
static Type<?>
forName(java.lang.String name, boolean throwOnError)
<A extends java.lang.annotation.Annotation>
AgetAnnotation(java.lang.Class<A> annotationClass)
java.lang.annotation.Annotation[]
getAnnotations()
Type<? super T>
getBaseType()
(package private) RuntimeTypeCache<T>
getCache()
protected java.lang.String
getClassFullName()
protected java.lang.String
getClassSimpleName()
ConstructorInfo
getConstructor(Type<?>... parameterTypes)
ConstructorInfo
getConstructor(java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>... parameterTypes)
ConstructorInfo
getConstructor(java.util.Set<BindingFlags> bindingFlags, Type<?>... parameterTypes)
ConstructorList
getConstructors()
ConstructorList
getConstructors(java.util.Set<BindingFlags> bindingFlags)
java.lang.annotation.Annotation[]
getDeclaredAnnotations()
protected ConstructorList
getDeclaredConstructors()
protected FieldList
getDeclaredFields()
protected MethodList
getDeclaredMethods()
protected TypeList
getDeclaredTypes()
MethodBase
getDeclaringMethod()
Type<?>
getElementType()
java.lang.Object[]
getEnumConstants()
java.lang.String[]
getEnumNames()
java.lang.Class<T>
getErasedClass()
Type<?>
getErasedType()
TypeList
getExplicitInterfaces()
Type<?>
getExtendsBound()
FieldInfo
getField(java.lang.String name)
FieldInfo
getField(java.lang.String name, java.util.Set<BindingFlags> bindingFlags)
private FieldInfo[]
getFieldCandidates(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
FieldList
getFields()
FieldList
getFields(java.util.Set<BindingFlags> bindingFlags)
private static Type.FilterOptions
getFilterOptions(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
java.lang.String
getFullName()
int
getGenericParameterPosition()
java.lang.String
getGenericSignature()
Method that returns full generic signature of the type; suitable as signature for things like ASM package.Type<?>
getGenericTypeDefinition()
TypeList
getGenericTypeParameters()
TypeList
getInterfaces()
java.lang.String
getInternalName()
javax.lang.model.type.TypeKind
getKind()
MemberList<?>
getMember(java.lang.String name)
MemberList<?>
getMember(java.lang.String name, MemberType memberType, MemberType... memberTypes)
MemberList<?>
getMember(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, java.util.Set<MemberType> memberTypes)
MemberList<?>
getMembers()
MemberList<?>
getMembers(MemberType memberType, MemberType... memberTypes)
MemberList<?>
getMembers(java.util.Set<BindingFlags> bindingFlags)
MemberList<?>
getMembers(java.util.Set<BindingFlags> bindingFlags, MemberType memberType, MemberType... memberTypes)
MemberList<?>
getMembers(java.util.Set<BindingFlags> bindingFlags, java.util.Set<MemberType> memberTypes)
MemberList<?>
getMembersOfType(java.util.Set<MemberType> memberTypes)
MemberType
getMemberType()
MethodInfo
getMethod(java.lang.String name, Type<?>... parameterTypes)
MethodInfo
getMethod(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>... parameterTypes)
MethodInfo
getMethod(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, Type<?>... parameterTypes)
private <M extends MethodBase>
M[]getMethodBaseCandidates(MemberType type, java.lang.String name, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>[] parameterTypes, boolean allowPrefixLookup)
MethodList
getMethods()
MethodList
getMethods(java.util.Set<BindingFlags> bindingFlags)
MethodList
getMethods(java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention)
(package private) Type<?>
getMostSpecificType(Type<?> t1, Type<?> t2)
java.lang.String
getName()
Type<?>
getNestedType(java.lang.String fullName)
Type<?>
getNestedType(java.lang.String fullName, java.util.Set<BindingFlags> bindingFlags)
private Type<?>[]
getNestedTypeCandidates(java.lang.String fullName, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
TypeList
getNestedTypes()
TypeList
getNestedTypes(java.util.Set<BindingFlags> bindingFlags)
java.lang.Package
getPackage()
(package private) Type<?>
getRootElementType()
java.lang.String
getShortName()
Type<?>
getSuperBound()
static <T> Type<T>
getType(T object)
TypeList
getTypeArguments()
protected TypeBindings
getTypeBindings()
Type<?>
getUnderlyingType()
protected Type<?>
getUnderlyingTypeCore()
boolean
hasElementType()
boolean
hasExtendsBound()
int
hashCode()
boolean
hasSuperBound()
boolean
implementsInterface(Type<?> interfaceType)
protected void
invalidateCaches()
Invalidate any cached type/member information.boolean
isAbstract()
boolean
isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
boolean
isArray()
boolean
isAssignableFrom(Type<?> type)
boolean
isBoundedType()
boolean
isClass()
boolean
isCompoundType()
boolean
isEnum()
boolean
isEquivalentTo(MemberInfo m)
boolean
isEquivalentTo(Type<?> other)
boolean
isGenericParameter()
boolean
isGenericType()
boolean
isGenericTypeDefinition()
boolean
isInstance(java.lang.Object o)
boolean
isInterface()
boolean
isLocalClass()
boolean
isNested()
boolean
isPrimitive()
boolean
isRawType()
boolean
isSubTypeOf(Type<?> type)
boolean
isSynthetic()
boolean
isUnbounded()
boolean
isVisible()
boolean
isWildcardType()
static TypeList
list(Type<?>... types)
static TypeList
list(java.lang.Class<?>... classes)
static TypeList
list(java.util.List<? extends Type<?>> types)
Type<T[]>
makeArrayType()
static <T> Type<T[]>
makeArrayType(Type<T> elementType)
static Type<?>
makeCompoundType(Type<?> baseType, TypeList interfaces)
static Type<?>
makeCompoundType(TypeList bounds)
private static <T> Type<T>
makeCompoundTypeCore(Type<T> baseType, TypeList interfaces)
static <T> Type<? extends T>
makeExtendsWildcard(Type<T> bound)
<U extends T>
Type<U>makeGenericType(Type<?>... typeArguments)
<U extends T>
Type<U>makeGenericType(TypeList typeArguments)
protected Type<?>
makeGenericTypeCore(TypeList typeArguments)
static <T> Type<? super T>
makeSuperWildcard(Type<T> bound)
static WildcardType<?>
makeWildcard()
T
newInstance(java.lang.Object... arguments)
static Type<?>
nullType()
static <T> Type<T>
of(java.lang.Class<T> clazz)
(package private) static <T> Type<T>
of(java.lang.reflect.Type type)
private static Type<?>
resolveClassType(java.lang.Class<?> actualClass)
protected static Type<?>
substitute(Type<?> type, TypeBindings typeBindings)
java.lang.String
toString()
(package private) static Type<?>
tryFind(java.lang.reflect.Type type)
static WildcardType<?>
unboundedWildcard()
-
Methods inherited from class com.strobel.reflection.MemberInfo
emptyAnnotations, equals, getAnnotationsByType, getBriefDescription, getDeclaredAnnotation, getDeclaredAnnotationsByType, getDeclaringType, getDescription, getErasedDescription, getErasedSignature, getModifiers, getReflectedType, getSignature, getSimpleDescription, isFinal, isNonPublic, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic
-
-
-
-
Field Detail
-
DefaultBinder
public static final Binder DefaultBinder
-
Delimiter
public static final char Delimiter
- See Also:
- Constant Field Values
-
Value
public static final Missing Value
-
EmptyTypes
public static final Type<?>[] EmptyTypes
-
Bottom
@Deprecated public static final Type<?> Bottom
Deprecated.UsebottomType()
instead.
-
NullType
@Deprecated public static final Type<?> NullType
Deprecated.UsenullType()
instead.
-
EmptyObjects
protected static final java.lang.Object[] EmptyObjects
-
EmptyStrings
protected static final java.lang.String[] EmptyStrings
-
EmptyMethods
protected static final MethodInfo[] EmptyMethods
-
EmptyConstructors
protected static final ConstructorInfo[] EmptyConstructors
-
EmptyFields
protected static final FieldInfo[] EmptyFields
-
EmptyMembers
protected static final MemberInfo[] EmptyMembers
-
DefaultLookup
protected static final java.util.Set<BindingFlags> DefaultLookup
-
_interfaces
private TypeList _interfaces
-
_erasedType
private ErasedType<T> _erasedType
-
CACHE_LOCK
static final java.lang.Object CACHE_LOCK
-
CACHE
static final TypeCache CACHE
-
RESOLVER
static final Resolver RESOLVER
-
PRIMITIVE_TYPES
static final Type<?>[] PRIMITIVE_TYPES
-
TYPE_BINDER
static final TypeBinder TYPE_BINDER
-
_cache
private RuntimeTypeCache<T> _cache
-
FilterNameIgnoreCase
public static final MemberFilter FilterNameIgnoreCase
-
FilterName
public static final MemberFilter FilterName
-
FilterRawMember
public static final MemberFilter FilterRawMember
-
FilterMethodOverride
public static final MemberFilter FilterMethodOverride
-
-
Method Detail
-
bottomType
public static Type<?> bottomType()
-
nullType
public static Type<?> nullType()
-
unboundedWildcard
public static WildcardType<?> unboundedWildcard()
-
getMemberType
public MemberType getMemberType()
- Specified by:
getMemberType
in classMemberInfo
-
isNested
public boolean isNested()
-
isLocalClass
public boolean isLocalClass()
-
isVisible
public boolean isVisible()
-
isClass
public final boolean isClass()
-
isInterface
public final boolean isInterface()
-
isEnum
public final boolean isEnum()
-
isAbstract
public final boolean isAbstract()
-
isArray
public boolean isArray()
-
isGenericType
public boolean isGenericType()
-
isGenericTypeDefinition
public boolean isGenericTypeDefinition()
-
isRawType
public boolean isRawType()
-
isGenericParameter
public boolean isGenericParameter()
-
isPrimitive
public boolean isPrimitive()
-
hasElementType
public boolean hasElementType()
-
getKind
public javax.lang.model.type.TypeKind getKind()
-
getInterfaces
public TypeList getInterfaces()
-
getExplicitInterfaces
public TypeList getExplicitInterfaces()
-
getErasedClass
public java.lang.Class<T> getErasedClass()
-
newInstance
public T newInstance(java.lang.Object... arguments)
-
getDeclaringMethod
public MethodBase getDeclaringMethod()
-
getElementType
public Type<?> getElementType()
-
getGenericParameterPosition
public int getGenericParameterPosition()
-
getTypeBindings
protected TypeBindings getTypeBindings()
-
getTypeArguments
public TypeList getTypeArguments()
-
getGenericTypeParameters
public TypeList getGenericTypeParameters()
-
getGenericTypeDefinition
public Type<?> getGenericTypeDefinition()
-
containsGenericParameters
public boolean containsGenericParameters()
-
containsGenericParameter
public boolean containsGenericParameter(Type<?> genericParameter)
-
isBoundedType
public boolean isBoundedType()
-
isUnbounded
public boolean isUnbounded()
-
hasExtendsBound
public boolean hasExtendsBound()
-
hasSuperBound
public boolean hasSuperBound()
-
getExtendsBound
public Type<?> getExtendsBound()
-
getSuperBound
public Type<?> getSuperBound()
-
isEquivalentTo
public final boolean isEquivalentTo(MemberInfo m)
- Overrides:
isEquivalentTo
in classMemberInfo
-
isEquivalentTo
public boolean isEquivalentTo(Type<?> other)
-
isSubTypeOf
public boolean isSubTypeOf(Type<?> type)
-
isInstance
public boolean isInstance(java.lang.Object o)
-
implementsInterface
public boolean implementsInterface(Type<?> interfaceType)
-
isAssignableFrom
public boolean isAssignableFrom(Type<?> type)
-
getPackage
public java.lang.Package getPackage()
-
isCompoundType
public boolean isCompoundType()
-
isWildcardType
public boolean isWildcardType()
-
isSynthetic
public boolean isSynthetic()
-
accept
public <P,R> R accept(TypeVisitor<P,R> visitor, P parameter)
-
getAnnotation
public <A extends java.lang.annotation.Annotation> A getAnnotation(java.lang.Class<A> annotationClass)
- Specified by:
getAnnotation
in interfacejava.lang.reflect.AnnotatedElement
- Overrides:
getAnnotation
in classMemberInfo
-
getAnnotations
@NotNull public java.lang.annotation.Annotation[] getAnnotations()
- Specified by:
getAnnotations
in interfacejava.lang.reflect.AnnotatedElement
- Overrides:
getAnnotations
in classMemberInfo
-
getDeclaredAnnotations
@NotNull public java.lang.annotation.Annotation[] getDeclaredAnnotations()
- Specified by:
getDeclaredAnnotations
in interfacejava.lang.reflect.AnnotatedElement
- Overrides:
getDeclaredAnnotations
in classMemberInfo
-
isAnnotationPresent
public boolean isAnnotationPresent(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
- Specified by:
isAnnotationPresent
in interfacejava.lang.reflect.AnnotatedElement
- Overrides:
isAnnotationPresent
in classMemberInfo
-
getMember
public final MemberList<?> getMember(java.lang.String name)
-
getMember
public final MemberList<?> getMember(java.lang.String name, MemberType memberType, MemberType... memberTypes)
-
getMember
public MemberList<?> getMember(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, java.util.Set<MemberType> memberTypes)
-
getField
public final FieldInfo getField(java.lang.String name)
-
getField
public FieldInfo getField(java.lang.String name, java.util.Set<BindingFlags> bindingFlags)
-
getMethod
public final MethodInfo getMethod(java.lang.String name, Type<?>... parameterTypes)
-
getMethod
public final MethodInfo getMethod(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, Type<?>... parameterTypes)
-
getMethod
public MethodInfo getMethod(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>... parameterTypes)
-
getConstructor
public final ConstructorInfo getConstructor(Type<?>... parameterTypes)
-
getConstructor
public final ConstructorInfo getConstructor(java.util.Set<BindingFlags> bindingFlags, Type<?>... parameterTypes)
-
getConstructor
public ConstructorInfo getConstructor(java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>... parameterTypes)
-
getMembers
public final MemberList<?> getMembers()
-
getMembersOfType
public final MemberList<?> getMembersOfType(java.util.Set<MemberType> memberTypes)
-
getMembers
public final MemberList<?> getMembers(MemberType memberType, MemberType... memberTypes)
-
getMembers
public final MemberList<?> getMembers(java.util.Set<BindingFlags> bindingFlags)
-
getMembers
public final MemberList<?> getMembers(java.util.Set<BindingFlags> bindingFlags, MemberType memberType, MemberType... memberTypes)
-
getMembers
public MemberList<?> getMembers(java.util.Set<BindingFlags> bindingFlags, java.util.Set<MemberType> memberTypes)
-
findMembers
public MemberList<? extends MemberInfo> findMembers(java.util.Set<MemberType> memberTypes, java.util.Set<BindingFlags> bindingAttr, MemberFilter filter, java.lang.Object filterCriteria)
-
getFields
public final FieldList getFields()
-
getFields
public FieldList getFields(java.util.Set<BindingFlags> bindingFlags)
-
getMethods
public final MethodList getMethods()
-
getMethods
public final MethodList getMethods(java.util.Set<BindingFlags> bindingFlags)
-
getMethods
public MethodList getMethods(java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention)
-
getConstructors
public final ConstructorList getConstructors()
-
getConstructors
public ConstructorList getConstructors(java.util.Set<BindingFlags> bindingFlags)
-
getNestedTypes
public final TypeList getNestedTypes()
-
getNestedTypes
public TypeList getNestedTypes(java.util.Set<BindingFlags> bindingFlags)
-
getNestedType
public final Type<?> getNestedType(java.lang.String fullName)
-
getNestedType
public Type<?> getNestedType(java.lang.String fullName, java.util.Set<BindingFlags> bindingFlags)
-
getEnumConstants
public java.lang.Object[] getEnumConstants()
-
getEnumNames
public java.lang.String[] getEnumNames()
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classMemberInfo
-
getErasedType
public final Type<?> getErasedType()
-
substitute
protected static Type<?> substitute(Type<?> type, TypeBindings typeBindings)
-
getRootElementType
Type<?> getRootElementType()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classMemberInfo
-
getName
public java.lang.String getName()
- Specified by:
getName
in classMemberInfo
-
getClassFullName
protected java.lang.String getClassFullName()
-
getClassSimpleName
protected java.lang.String getClassSimpleName()
-
getShortName
public java.lang.String getShortName()
-
getFullName
public java.lang.String getFullName()
-
getInternalName
public java.lang.String getInternalName()
-
getGenericSignature
public java.lang.String getGenericSignature()
Method that returns full generic signature of the type; suitable as signature for things like ASM package.
-
appendBriefDescription
public java.lang.StringBuilder appendBriefDescription(java.lang.StringBuilder sb)
- Specified by:
appendBriefDescription
in classMemberInfo
-
appendSimpleDescription
public java.lang.StringBuilder appendSimpleDescription(java.lang.StringBuilder sb)
- Specified by:
appendSimpleDescription
in classMemberInfo
-
appendErasedDescription
public java.lang.StringBuilder appendErasedDescription(java.lang.StringBuilder sb)
- Specified by:
appendErasedDescription
in classMemberInfo
-
appendDescription
public java.lang.StringBuilder appendDescription(java.lang.StringBuilder sb)
- Specified by:
appendDescription
in classMemberInfo
-
appendSignature
public java.lang.StringBuilder appendSignature(java.lang.StringBuilder sb)
- Specified by:
appendSignature
in classMemberInfo
-
appendGenericSignature
public java.lang.StringBuilder appendGenericSignature(java.lang.StringBuilder sb)
- Overrides:
appendGenericSignature
in classMemberInfo
-
invalidateCaches
protected void invalidateCaches()
Description copied from class:MemberInfo
Invalidate any cached type/member information. This is not guaranteed to be thread-safe, should only be called when a partially constructed type/member definition changes (e.g., a TypeBuilder, MethodBuilder, etc.).- Overrides:
invalidateCaches
in classMemberInfo
-
appendErasedSignature
public java.lang.StringBuilder appendErasedSignature(java.lang.StringBuilder sb)
- Specified by:
appendErasedSignature
in classMemberInfo
-
_appendClassSignature
protected java.lang.StringBuilder _appendClassSignature(java.lang.StringBuilder sb)
-
_appendErasedClassSignature
protected java.lang.StringBuilder _appendErasedClassSignature(java.lang.StringBuilder sb)
-
_appendClassDescription
protected java.lang.StringBuilder _appendClassDescription(java.lang.StringBuilder sb)
-
_appendClassName
protected java.lang.StringBuilder _appendClassName(java.lang.StringBuilder sb, boolean fullName, boolean dottedName)
-
of
public static <T> Type<T> of(java.lang.Class<T> clazz)
-
forName
public static Type<?> forName(java.lang.String name)
-
forName
public static Type<?> forName(java.lang.String name, boolean throwOnError)
-
resolveClassType
private static Type<?> resolveClassType(java.lang.Class<?> actualClass)
-
getType
public static <T> Type<T> getType(T object)
-
of
static <T> Type<T> of(java.lang.reflect.Type type)
-
tryFind
static Type<?> tryFind(java.lang.reflect.Type type)
-
makeWildcard
public static WildcardType<?> makeWildcard()
-
makeCompoundTypeCore
private static <T> Type<T> makeCompoundTypeCore(Type<T> baseType, TypeList interfaces)
-
list
public static TypeList list(java.lang.Class<?>... classes)
-
getCache
final RuntimeTypeCache<T> getCache()
-
getDeclaredConstructors
protected ConstructorList getDeclaredConstructors()
-
getDeclaredMethods
protected MethodList getDeclaredMethods()
-
getDeclaredFields
protected FieldList getDeclaredFields()
-
getDeclaredTypes
protected TypeList getDeclaredTypes()
-
getMethodBaseCandidates
private <M extends MethodBase> M[] getMethodBaseCandidates(MemberType type, java.lang.String name, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConvention, Type<?>[] parameterTypes, boolean allowPrefixLookup)
-
getFieldCandidates
private FieldInfo[] getFieldCandidates(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
-
getNestedTypeCandidates
private Type<?>[] getNestedTypeCandidates(java.lang.String fullName, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
-
filterMethodBase
boolean filterMethodBase(MethodBase method, java.util.Set<BindingFlags> methodFlags, java.util.Set<BindingFlags> bindingFlags, CallingConvention callingConventions, Type<?>... argumentTypes)
-
filterApplyType
private boolean filterApplyType(Type<?> type, java.util.Set<BindingFlags> bindingFlags, java.lang.String name, boolean prefixLookup)
-
filterApplyCore
private boolean filterApplyCore(MemberInfo member, java.util.Set<BindingFlags> bindingFlags, boolean isPublic, boolean isPackagePrivate, boolean isStatic, java.lang.String name, boolean prefixLookup)
-
filterApplyPrefixLookup
private boolean filterApplyPrefixLookup(MemberInfo method, java.lang.String name, boolean ignoreCase)
-
getFilterOptions
private static Type.FilterOptions getFilterOptions(java.lang.String name, java.util.Set<BindingFlags> bindingFlags, boolean allowPrefixLookup)
-
filterPreCalculate
static java.util.Set<BindingFlags> filterPreCalculate(boolean isPublic, boolean isInherited, boolean isStatic)
-
-