Class RuntimeType<T>

  • All Implemented Interfaces:
    java.lang.reflect.AnnotatedElement, java.lang.reflect.Type

    final class RuntimeType<T>
    extends Type<T>
    • Field Detail

      • GenericBinder

        static final TypeBinder GenericBinder
      • _reflectedType

        private final Type<?> _reflectedType
      • _erasedClass

        private final java.lang.Class<T> _erasedClass
      • _basedOn

        private final Type<T> _basedOn
      • _baseType

        private Type<? super T> _baseType
      • _interfaces

        private TypeList _interfaces
      • _nestedTypes

        private TypeList _nestedTypes
    • Constructor Detail

    • 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()
      • getErasedClass

        public java.lang.Class<T> getErasedClass()
        Overrides:
        getErasedClass in class Type<T>
      • isGenericType

        public boolean isGenericType()
        Overrides:
        isGenericType in class Type<T>
      • isAnnotationPresent

        public boolean isAnnotationPresent​(java.lang.Class<? extends java.lang.annotation.Annotation> annotationClass)
        Specified by:
        isAnnotationPresent in interface java.lang.reflect.AnnotatedElement
        Overrides:
        isAnnotationPresent in class Type<T>
      • getAnnotation

        public <A extends java.lang.annotation.Annotation> A getAnnotation​(java.lang.Class<A> annotationClass)
        Specified by:
        getAnnotation in interface java.lang.reflect.AnnotatedElement
        Overrides:
        getAnnotation in class Type<T>
      • getAnnotations

        @NotNull
        public java.lang.annotation.Annotation[] getAnnotations()
        Specified by:
        getAnnotations in interface java.lang.reflect.AnnotatedElement
        Overrides:
        getAnnotations in class Type<T>
      • getDeclaredAnnotations

        @NotNull
        public java.lang.annotation.Annotation[] getDeclaredAnnotations()
        Specified by:
        getDeclaredAnnotations in interface java.lang.reflect.AnnotatedElement
        Overrides:
        getDeclaredAnnotations in class Type<T>
      • accept

        public <P,​R> R accept​(TypeVisitor<P,​R> typeVisitor,
                                    P parameter)
        Overrides:
        accept in class Type<T>