code: public static final <T> T assignList(Object bean, String property, String hint, BiFunction<Class<T>,String,T> factory)
      {
          Class[] pt = getParameterTypes(bean, prefix(property));
          Class type = pt != null && pt.length > 0 ? pt[0] : null;
          T value = (T) factory.apply(type, hint);
          doFor(
              bean, 
              property, 
              null,
              (Object a, int i)->{Array.set(a, i, value);return null;},
              (List l, int i)->{l.set(i, value);return null;},
              (Object b, Class c, String p)->{throw  new UnsupportedOperationException("not supported");},
              (Object b, Method m)->{throw  new UnsupportedOperationException("not supported");}
          );
          return value;
      }
docs: Assign pattern item a new value using given factory (and hint)
  @param <T>
  @param bean
  @param property
  @param hint
  @param factory