Enum XrefType

    • Enum Constant Detail

      • METHOD_CALL

        public static final XrefType METHOD_CALL
        A method named at an invoke instruction in the referencing method's body.
      • METHOD_OVERRIDE

        public static final XrefType METHOD_OVERRIDE
        A supertype method that the referencing method redeclares, recorded from the class hierarchy rather than from a call site.
      • BOOTSTRAP_METHOD

        public static final XrefType BOOTSTRAP_METHOD
        A method invoked by the JVM at link time to resolve an invokedynamic call site or a dynamic constant.
      • BOOTSTRAP_ARG_METHOD

        public static final XrefType BOOTSTRAP_ARG_METHOD
        A method named by a method handle passed as a static argument to a bootstrap method, such as the lambda body behind an invokedynamic.
      • BOOTSTRAP_ARG_FIELD

        public static final XrefType BOOTSTRAP_ARG_FIELD
        A field named by a field method handle passed as a static argument to a bootstrap method.
      • FIELD_READ

        public static final XrefType FIELD_READ
        A field whose value the referencing code loads.
      • FIELD_WRITE

        public static final XrefType FIELD_WRITE
        A field whose value the referencing code stores to.
      • CLASS_INSTANTIATE

        public static final XrefType CLASS_INSTANTIATE
        A class allocated by the referencing code, from a new expression.
      • CLASS_CAST

        public static final XrefType CLASS_CAST
        A type a value is checked-cast to, from a cast expression.
      • CLASS_INSTANCEOF

        public static final XrefType CLASS_INSTANCEOF
        A type tested against a value by an instanceof check.
      • CLASS_EXTENDS

        public static final XrefType CLASS_EXTENDS
        A class named as the direct superclass of the referencing class.
      • CLASS_IMPLEMENTS

        public static final XrefType CLASS_IMPLEMENTS
        An interface listed among the referencing class's direct interfaces.
      • CLASS_ANNOTATION

        public static final XrefType CLASS_ANNOTATION
        An annotation type applied to a class, method, field, or parameter.
      • TYPE_PARAMETER

        public static final XrefType TYPE_PARAMETER
        A class named as a generic type argument or type-parameter bound in a signature.
      • TYPE_LOCAL_VAR

        public static final XrefType TYPE_LOCAL_VAR
        A class named as the declared type of a local variable, recorded from the local variable table rather than from an instruction.
    • Method Detail

      • values

        public static XrefType[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (XrefType c : XrefType.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static XrefType valueOf​(String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        IllegalArgumentException - if this enum type has no constant with the specified name
        NullPointerException - if the argument is null
      • getDisplayName

        public String getDisplayName()
        Returns:
        the display name
      • getDescription

        public String getDescription()
        Returns:
        the description
      • isMethodRef

        public boolean isMethodRef()
        Check if this is a method-related reference.
        Returns:
        true for the call, override, and bootstrap-method kinds
      • isFieldRef

        public boolean isFieldRef()
        Check if this is a field-related reference.
        Returns:
        true for the field read and write kinds
      • isTypeRef

        public boolean isTypeRef()
        Check if this is a class/type-related reference.
        Returns:
        true for instantiation, cast, instanceof, inheritance, annotation, and type-usage kinds
      • isInheritanceRef

        public boolean isInheritanceRef()
        Check if this reference indicates inheritance/implementation.
        Returns:
        true for the extends and implements kinds