code: public TypeUsage.Builder mapEnd(IntUnaryOperator mapper) {
      Objects.requireNonNull(mapper);
      return end(mapper.applyAsInt(end()));
    }
docs: Replaces the value to be returned by {@link TypeUsage#end()} by applying {@code mapper} to it
  and using the result.
  
  @return this {@code Builder} object
  @throws NullPointerException if {@code mapper} is null
  @throws IllegalStateException if the field has not been set