Record Class Api

java.lang.Object
java.lang.Record
com.google.errorprone.bugpatterns.checkreturnvalue.Api
Record Components:
className - Returns the fully qualified type that contains the given method/constructor.
methodName - Returns the simple name of the method. If the API is a constructor (i.e., isConstructor() == true), then "<init>" is returned.
parameterTypes - Returns the list of fully qualified parameter types for the given method/constructor.

public record Api(String className, String methodName, com.google.common.collect.ImmutableList<String> parameterTypes) extends Record
Represents a Java method or constructor.

Provides a method to parse an API from a string format, and emit an API as the same sting.

  • Constructor Details

    • Api

      public Api(String className, String methodName, com.google.common.collect.ImmutableList<String> parameterTypes)
      Creates an instance of a Api record class.
      Parameters:
      className - the value for the className record component
      methodName - the value for the methodName record component
      parameterTypes - the value for the parameterTypes record component
  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • parse

      public static Api parse(String api)
      Parses an API string into an Api, ignoring trailing or inner whitespace between names.

      Example API strings are:

      • a constructor (e.g., java.net.URI#<init>(java.lang.String))
      • a static method (e.g., java.net.URI#create(java.lang.String))
      • an instance method (e.g., java.util.List#get(int))
      • an instance method with types erased (e.g., java.util.List#add(java.lang.Object))
      Throws:
      IllegalArgumentException - when api is not well-formed
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • className

      public String className()
      Returns the value of the className record component.
      Returns:
      the value of the className record component
    • methodName

      public String methodName()
      Returns the value of the methodName record component.
      Returns:
      the value of the methodName record component
    • parameterTypes

      public com.google.common.collect.ImmutableList<String> parameterTypes()
      Returns the value of the parameterTypes record component.
      Returns:
      the value of the parameterTypes record component