private TypeElement asTypeElement(TypeMirror typeMirror) {
      DeclaredType declaredType = MoreTypes.asDeclared(typeMirror);
      Element element = declaredType.asElement();
      return MoreElements.asType(element);
    }
Returns the method from within the given type that has the same erased signature as the given
method, or null if there is no such method.
common/src/main/java/com/google/auto/common/Overrides.java