public static SubBuilder <T> Append <T, P>(this SubBuilder <T> b, Func <T, P> propertyGetter, params IValidator <P>[] validators)
 {
     b.Add(CreateAdapter(b.ItemId, propertyGetter, validators));
     return(b);
 }
 public static SubBuilder <T> Append <T>(this SubBuilder <T> b, IValidator <T> validator)
 {
     b.Add(validator);
     return(b);
 }
 public static CombinedValidatorBuilder <T> EndGroup <T>(this SubBuilder <T> b)
 {
     b.ParentValidatorBuilder.Add(new ItemIdAdapterValidator <T>(b.ItemId, b.Build()));
     return(b.ParentValidatorBuilder);
 }