code: private Factory prepareProxyFactoryForCollectionTypes() {
          if (this.isInstantiableCollectionType) {
              return (Factory) Enhancer.create(this.fieldType, (LazyLoader) () -> null);
          }
          return null;
      }
docs: Prepares a proxy instance of a collection type for use as a {@link Factory}.
  Proxy instances are always {@link Factory factories}.
  Using {@link Factory#newInstance(net.sf.cglib.proxy.Callback)}
  is significantly more efficient than using {@link Enhancer#create(Class, net.sf.cglib.proxy.Callback)}.