Class BaseAnnotationEncodedValue

java.lang.Object
org.jf.dexlib2.base.value.BaseAnnotationEncodedValue
All Implemented Interfaces:
Comparable<EncodedValue>, BasicAnnotation, AnnotationEncodedValue, EncodedValue
Direct Known Subclasses:
BuilderEncodedValues.BuilderAnnotationEncodedValue, DexBackedAnnotationEncodedValue, EncodedValueRewriter.RewrittenAnnotationEncodedValue, ImmutableAnnotationEncodedValue

public abstract class BaseAnnotationEncodedValue extends Object implements AnnotationEncodedValue
  • Constructor Details

    • BaseAnnotationEncodedValue

      public BaseAnnotationEncodedValue()
  • Method Details

    • hashCode

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

      public boolean equals(@Nullable Object o)
      Description copied from interface: AnnotationEncodedValue
      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.
      Specified by:
      equals in interface AnnotationEncodedValue
      Overrides:
      equals in class 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

      public int compareTo(@Nonnull EncodedValue o)
      Description copied from interface: AnnotationEncodedValue
      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 AnnotationEncodedValue
      Specified by:
      compareTo in interface Comparable<EncodedValue>
      Parameters:
      o - The EncodedValue to compare with this AnnotationEncodedValue
      Returns:
      An integer representing the result of the comparison
    • getValueType

      public int getValueType()
      Description copied from interface: EncodedValue
      Returns the type of this encoded value. The returned integer will be one of the ValueType.* constants.
      Specified by:
      getValueType in interface EncodedValue
      Returns:
      The type of this encoded value
    • toString

      public String toString()
      Overrides:
      toString in class Object