Interface MethodProtoReference

All Superinterfaces:
Comparable<MethodProtoReference>, Reference
All Known Implementing Classes:
BaseMethodProtoReference, BuilderMethodProtoReference, DexBackedMethodProtoReference, ImmutableMethodProtoReference, PoolMethodProto

public interface MethodProtoReference extends Reference, Comparable<MethodProtoReference>
This class represents a reference to a method prototype.
  • Method Details

    • getParameterTypes

      @Nonnull List<? extends CharSequence> getParameterTypes()
      Gets a list of the types of the parameters of this method prototype.
      Returns:
      A list of the parameter types of this method prototype, as strings.
    • getReturnType

      @Nonnull String getReturnType()
      Gets the return type of the referenced method prototype.
      Returns:
      The return type of the referenced method prototype.
    • hashCode

      int hashCode()
      Returns a hashcode for this MethodProtoReference. This hashCode is defined to be the following:
       
       int hashCode =  getReturnType().hashCode();
       hashCode = hashCode*31 + CharSequenceUtils.listHashCode(getParameters());
       
      Overrides:
      hashCode in class Object
      Returns:
      The hash code value for this ProtoReference
    • equals

      boolean equals(@Nullable Object o)
      Compares this MethodProtoReference to another MethodProtoReference for equality. This MethodProtoReference is equal to another MethodProtoReference if all of it's "fields" are equal. That is, if the return values of getReturnType() and getParameterTypes() are all equal. Equality for getParameters() should be tested by comparing the string representation of each element. I.e. CharSequenceUtils.listEquals(this.getParameterTypes(), other.getParameterTypes())
      Overrides:
      equals in class Object
      Parameters:
      o - The object to be compared for equality with this MethodProtoReference
      Returns:
      true if the specified object is equal to this MethodProtoReference
    • compareTo

      int compareTo(@Nonnull MethodProtoReference o)
      Compare this MethodProtoReference to another MethodProtoReference. The comparison is based on the comparison of the return values of getReturnType() and getParameters(), in that order. getParameters() should be compared using the semantics of org.jf.util.CollectionUtils.compareAsList()
      Specified by:
      compareTo in interface Comparable<MethodProtoReference>
      Parameters:
      o - The MethodReference to compare with this MethodProtoReference
      Returns:
      An integer representing the result of the comparison