/// <summary> /// Determines whether the string at the index is the start of an long option. /// </summary> /// <param name="s">The string.</param> /// <param name="index">The index.</param> /// <returns> /// <c>true</c> if it is a long argument start; otherwise, <c>false</c>. /// </returns> protected bool IsLongOption(string s, int index) { return(((index + 1) < s.Length) && OptionPrefixes.Contains(s[index + 1]) && s[index].Equals(s[index + 1])); }
/// <summary> /// Determines whether the character at index of specified string is an argument start character. /// </summary> /// <param name="s">The string.</param> /// <param name="index">The index.</param> /// <returns> /// <c>true</c> if the character is an argument start character; otherwise, <c>false</c>. /// </returns> protected bool IsOptionStart(string s, int index) { return(OptionPrefixes.Contains(s[index])); }
/// <summary> /// Does the validation of the option (long) name. /// </summary> /// <param name="optionName">Name of the option.</param> /// <returns></returns> protected virtual bool DoValidateOptionName(string optionName) { return(!String.IsNullOrEmpty(optionName) && !OptionPrefixes.Any(optionName.Contains) && !optionName.Contains(" ")); }