Class ArgType


  • public abstract class ArgType
    extends java.lang.Object
    • Field Detail

      • INT

        public static final ArgType INT
      • BOOLEAN

        public static final ArgType BOOLEAN
      • BYTE

        public static final ArgType BYTE
      • SHORT

        public static final ArgType SHORT
      • CHAR

        public static final ArgType CHAR
      • FLOAT

        public static final ArgType FLOAT
      • DOUBLE

        public static final ArgType DOUBLE
      • LONG

        public static final ArgType LONG
      • VOID

        public static final ArgType VOID
      • OBJECT

        public static final ArgType OBJECT
      • CLASS

        public static final ArgType CLASS
      • STRING

        public static final ArgType STRING
      • ENUM

        public static final ArgType ENUM
      • THROWABLE

        public static final ArgType THROWABLE
      • ERROR

        public static final ArgType ERROR
      • EXCEPTION

        public static final ArgType EXCEPTION
      • RUNTIME_EXCEPTION

        public static final ArgType RUNTIME_EXCEPTION
      • OBJECT_ARRAY

        public static final ArgType OBJECT_ARRAY
      • WILDCARD

        public static final ArgType WILDCARD
      • UNKNOWN

        public static final ArgType UNKNOWN
      • UNKNOWN_OBJECT

        public static final ArgType UNKNOWN_OBJECT
      • UNKNOWN_OBJECT_NO_ARRAY

        public static final ArgType UNKNOWN_OBJECT_NO_ARRAY
      • UNKNOWN_ARRAY

        public static final ArgType UNKNOWN_ARRAY
      • NARROW

        public static final ArgType NARROW
      • NARROW_NUMBERS

        public static final ArgType NARROW_NUMBERS
      • NARROW_INTEGRAL

        public static final ArgType NARROW_INTEGRAL
      • NARROW_NUMBERS_NO_BOOL

        public static final ArgType NARROW_NUMBERS_NO_BOOL
      • NARROW_NUMBERS_NO_FLOAT

        public static final ArgType NARROW_NUMBERS_NO_FLOAT
      • WIDE

        public static final ArgType WIDE
      • INT_FLOAT

        public static final ArgType INT_FLOAT
      • INT_BOOLEAN

        public static final ArgType INT_BOOLEAN
      • BYTE_BOOLEAN

        public static final ArgType BYTE_BOOLEAN
      • UNKNOWN_INT

        public static final ArgType UNKNOWN_INT
      • hash

        protected int hash
    • Constructor Detail

      • ArgType

        public ArgType()
    • Method Detail

      • object

        public static ArgType object​(java.lang.String obj)
      • genericType

        public static ArgType genericType​(java.lang.String type)
      • genericType

        public static ArgType genericType​(java.lang.String type,
                                          ArgType extendType)
      • genericType

        public static ArgType genericType​(java.lang.String type,
                                          java.util.List<ArgType> extendTypes)
      • wildcard

        public static ArgType wildcard()
      • generic

        public static ArgType generic​(java.lang.String obj,
                                      java.util.List<ArgType> generics)
      • generic

        public static ArgType generic​(java.lang.String obj,
                                      ArgType generic)
      • generic

        @TestOnly
        public static ArgType generic​(java.lang.String obj,
                                      ArgType... generics)
      • array

        public static ArgType array​(@NotNull
                                    @NotNull ArgType vtype)
      • array

        public static ArgType array​(@NotNull
                                    @NotNull ArgType type,
                                    int dimension)
      • isTypeKnown

        public boolean isTypeKnown()
      • isPrimitive

        public boolean isPrimitive()
      • getObject

        public java.lang.String getObject()
      • isObject

        public boolean isObject()
      • isGeneric

        public boolean isGeneric()
      • isGenericType

        public boolean isGenericType()
      • getGenericTypes

        public java.util.List<ArgType> getGenericTypes()
      • getExtendTypes

        public java.util.List<ArgType> getExtendTypes()
      • setExtendTypes

        public void setExtendTypes​(java.util.List<ArgType> extendTypes)
      • getWildcardType

        public ArgType getWildcardType()
      • isWildcard

        public boolean isWildcard()
      • getOuterType

        public ArgType getOuterType()
      • getInnerType

        public ArgType getInnerType()
      • isArray

        public boolean isArray()
      • getArrayDimension

        public int getArrayDimension()
      • getArrayElement

        public ArgType getArrayElement()
      • getArrayRootElement

        public ArgType getArrayRootElement()
      • contains

        public abstract boolean contains​(PrimitiveType type)
      • selectFirst

        public abstract ArgType selectFirst()
      • getPossibleTypes

        public abstract PrimitiveType[] getPossibleTypes()
      • isClsKnown

        public static boolean isClsKnown​(RootNode root,
                                         ArgType cls)
      • canBeObject

        public boolean canBeObject()
      • canBeArray

        public boolean canBeArray()
      • canBePrimitive

        public boolean canBePrimitive​(PrimitiveType primitiveType)
      • canBeAnyNumber

        public boolean canBeAnyNumber()
      • convertFromPrimitiveType

        public static ArgType convertFromPrimitiveType​(PrimitiveType primitiveType)
      • parse

        public static ArgType parse​(java.lang.String type)
      • parse

        public static ArgType parse​(char f)
      • getRegCount

        public int getRegCount()
      • containsGeneric

        public boolean containsGeneric()
      • containsTypeVariable

        public boolean containsTypeVariable()
      • isVoid

        public boolean isVoid()
      • visitTypes

        @Nullable
        public <R> R visitTypes​(java.util.function.Function<ArgType,​R> visitor)
        Recursively visit all subtypes of this type. To exit return non-null value.
      • tryToResolveClassAlias

        public static java.util.List<ArgType> tryToResolveClassAlias​(RootNode root,
                                                                     java.util.List<ArgType> types)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object