/// <summary> /// Устанавливает компонент для разбора команды на составляющие. /// </summary> /// <param name="tokenizer">Компонент для разбора команды на составляющие.</param> /// <returns>Экземпляр билдера.</returns> /// <exception cref="ArgumentNullException">Если <paramref name="tokenizer"/> равен <c>null</c>.</exception> public CommandParserBuilder WithTokenizer(ICommandTokenizer tokenizer) { if (tokenizer == null) { throw new ArgumentNullException(nameof(tokenizer)); } _tokenizerProvider = () => tokenizer; return(this); }
public CustomCommandTokenizer(Func <ICommandParserSettings> settingsProvider) { _sourceTokenizer = new DefaultCommandTokenizer(settingsProvider); }
/// <summary> /// Creates a new instance of the base command line parser /// </summary> /// <param name="propertyService">Property service of the command line parse</param> /// <param name="tokenizer">Command argument tokenizer</param> protected CommandLineParser(IPropertyService propertyService, ICommandTokenizer tokenizer) { this.PropertyService = propertyService ?? throw new ArgumentNullException(nameof(propertyService)); this.Tokenizer = tokenizer ?? throw new ArgumentNullException(nameof(tokenizer)); }