@Override
    public boolean equals(@Nullable Object object) {
      if (this == object) {
        return true;
      } else if (!(object instanceof ElementFactory)) {
        return false;
      }

      ElementFactory that = (ElementFactory) object;
      return this.toString.equals(that.toString);
    }
An {@link ElementFactory} for an annotated element.
common/src/main/java/com/google/auto/common/BasicAnnotationProcessor.java