public static NonTerminalCommandBuilder <TSettings> AddOption <TSettings, TPropertyValue>( this NonTerminalCommandBuilder <TSettings> commandBuilder, string longForm, Expression <Func <TSettings, TPropertyValue> > property, Conversion <TPropertyValue> conversion) where TSettings : new() => commandBuilder.AddOption(longForm, null, property, conversion);
public static NonTerminalCommandBuilder <TSettings> AddOption <TSettings, TPropertyValue>( this NonTerminalCommandBuilder <TSettings> commandBuilder, string longForm, string?shortForm, Expression <Func <TSettings, TPropertyValue> > property, Conversion <TPropertyValue> conversion) where TSettings : new() => commandBuilder.AddOption(OptionDefinition <TSettings> .Create(longForm, shortForm, property, conversion));