public QualifiedType<?> mapType(Function<Type, Type> mapper) {
        return new QualifiedType<>(mapper.apply(type), qualifiers);
    }
Apply the provided mapping function to the type, and if non-empty is returned,
return an {@code Optional<QualifiedType<?>>} with the returned type, and the same
qualifiers as this instance.

@param mapper a mapping function to apply to the type
@return an optional qualified type with the mapped type and the same qualifiers
core/src/main/java/org/jdbi/v3/core/qualifier/QualifiedType.java