Interface AnnotationEncodedValue

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int compareTo​(EncodedValue o)
      Compare this AnnotationEncodedValue to another EncodedValue.
      boolean equals​(java.lang.Object o)
      Compares this AnnotationEncodedValue to another AnnotationEncodedValue for equality.
      java.util.Set<? extends AnnotationElement> getElements()
      Gets a set of the name/value elements associated with this annotation.
      java.lang.String getType()
      Gets the type of this annotation.
      int hashCode()
      Returns a hashcode for this AnnotationEncodedValue.
    • Method Detail

      • getType

        @Nonnull
        java.lang.String getType()
        Gets the type of this annotation. This will be the type descriptor of the class that defines this annotation.
        Specified by:
        getType in interface BasicAnnotation
        Returns:
        The type of this annotation
      • getElements

        @Nonnull
        java.util.Set<? extends AnnotationElement> getElements()
        Gets a set of the name/value elements associated with this annotation. The elements in the returned set will be unique by name.
        Specified by:
        getElements in interface BasicAnnotation
        Returns:
        A set of AnnotationElements
      • hashCode

        int hashCode()
        Returns a hashcode for this AnnotationEncodedValue. This hashCode is defined to be the following:
         
         int hashCode = getType().hashCode();
         hashCode = hashCode*31 + getElements().hashCode();
         
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        The hash code value for this AnnotationEncodedValue
      • equals

        boolean equals​(@Nullable
                       java.lang.Object o)
        Compares this AnnotationEncodedValue to another AnnotationEncodedValue for equality. This AnnotationEncodedValue is equal to another AnnotationEncodedValue if all of it's "fields" are equal. That is, if the return values getType() and getElements() are both equal.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - The object to be compared for equality with this AnnotationEncodedValue
        Returns:
        true if the specified object is equal to this AnnotationEncodedValue
      • compareTo

        int compareTo​(@Nonnull
                      EncodedValue o)
        Compare this AnnotationEncodedValue to another EncodedValue. The comparison is based on the value of getType() and getElements(), in that order. When comparing the set of elements, the comparison is done with the semantics of org.jf.util.CollectionUtils.compareAsSet(), using the natural ordering of AnnotationElement.
        Specified by:
        compareTo in interface java.lang.Comparable<EncodedValue>
        Parameters:
        o - The EncodedValue to compare with this AnnotationEncodedValue
        Returns:
        An integer representing the result of the comparison