@Override
    public Optional<Function<Object, Argument>> prepare(Type type, ConfigRegistry config) {
        return IterableLike.elementTypeOf(type)
            .flatMap(config.get(SqlArrayTypes.class)::findFor)
            .map(arrayType -> value -> arrayArgument(value, arrayType));
    }
Bind a Java array or {@link Collection} to a SQL array using the
{@link SqlArrayTypeFactory} for the given type information.  Note
that due to type erasure, binding {@code Collection} arguments with
{@link org.jdbi.v3.core.statement.SqlStatement#bind(int, Object)} may
fail to determine the array component type.  Provide explicit information with
{@link org.jdbi.v3.core.statement.SqlStatement#bindByType(int, Object, org.jdbi.v3.core.generic.GenericType)}.

This factory is registered by default.
@see SqlArrayType
@see SqlArrayTypes
@see org.jdbi.v3.core.config.Configurable#registerArrayType(SqlArrayType)
core/src/main/java/org/jdbi/v3/core/array/SqlArrayArgumentFactory.java