public ConfiguratorBuilder(Type targetType, Type proxyType, IMemberNamesProvider memberNamesProvider, ModuleBuilder moduleBuilder)
 {
     this.targetType          = targetType ?? throw new ArgumentNullException(nameof(targetType));
     this.proxyType           = proxyType ?? throw new ArgumentNullException(nameof(proxyType));
     this.memberNamesProvider = memberNamesProvider ?? throw new ArgumentNullException(nameof(memberNamesProvider));
     this.moduleBuilder       = moduleBuilder ?? throw new ArgumentNullException(nameof(moduleBuilder));
 }
 public MemberNamesProviderCacheProxy(IMemberNamesProvider target)
     : this()
 {
     this.target = target ?? throw new ArgumentNullException(nameof(target));
 }