guava/src/com/google/common/reflect/Invokable.java
@SuppressWarnings("unchecked") // The declaring class is T.
  @Override
  public TypeToken<T> getOwnerType() {
    return (TypeToken<T>) TypeToken.of(getDeclaringClass());
  }
@SuppressWarnings("unchecked") // The declaring class is T.
  @Override
  public TypeToken<T> getOwnerType() {
    return (TypeToken<T>) TypeToken.of(getDeclaringClass());
  }
Overridden in TypeToken#method() and TypeToken#constructor()