@Override
    public Optional<Function<Object, Argument>> prepare(Type type, ConfigRegistry config) {
        return Optional.of(type)
            .filter(Class.class::isInstance)
            .map(Class.class::cast)
            .map(supportedTypes::get)
            .map(sqlType -> value -> ObjectArgument.of(value, sqlType));
    }
Creates a new {@link ArgumentFactory} that maps objects to {@link java.sql.Types} values.

@param types the Java {@link Class}es to handle with the {@link java.sql.Types} they bind to.
@return an {@link ArgumentFactory} that handles only the given {@link Class}es.
core/src/main/java/org/jdbi/v3/core/argument/SetObjectArgumentFactory.java