code: public static <B extends Bean> MinimalMetaBean<B> of(
              Class<B> beanType,
              String[] fieldNames,
              Supplier<BeanBuilder<B>> builderSupplier,
              List<Function<B, Object>> getters,
              List<BiConsumer<B, Object>> setters) {
  
          if (getters == null) {
              throw new NullPointerException("Getter functions must not be null");
          }
          if (setters == null) {
              throw new NullPointerException("Setter functions must not be null");
          }
          return new MinimalMetaBean<>(beanType, fieldNames, builderSupplier, getters, setters);
      }
docs: Obtains an instance of the meta-bean for mutable beans.
  <p>
  The properties will be determined using reflection to find the
  {@link PropertyDefinition} annotation.
  The field names must be specified as reflection does not return fields in source code order.
  
  @param <B>  the type of the bean
  @param beanType  the bean type, not null
  @param fieldNames  the field names, not null
  @param builderSupplier  the supplier of bean builders, not null
  @param getters  the getter functions, not null
  @param setters  the setter functions, not null
  @return the meta-bean, not null