本文整理汇总了C#中IOptions.HasOption方法的典型用法代码示例。如果您正苦于以下问题:C# IOptions.HasOption方法的具体用法?C# IOptions.HasOption怎么用?C# IOptions.HasOption使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IOptions
的用法示例。
在下文中一共展示了IOptions.HasOption方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ProcessArguments
private void ProcessArguments(IOptions options, OptionValue opt, string[] tokens, ref int index)
{
// loop until an option is found
while (++index < tokens.Length) {
String str = tokens[index];
// found an Option, not an argument
if (options.HasOption(str) && str.StartsWith("-")) {
index--;
break;
}
// found a value
try {
opt.AddValueForProcessing(Util.StripLeadingAndTrailingQuotes(str));
} catch (ApplicationException) {
index--;
break;
}
}
if (opt.Values == null && !opt.Option.HasOptionalArguments()) {
throw new MissingArgumentException(opt.Option);
}
}
示例2: ProcessOption
protected void ProcessOption(IOptions options, string arg, string[] tokens, ref int index)
{
bool hasOption = options.HasOption(arg);
// if there is no option throw an UnrecognisedOptionException
if (!hasOption) {
throw new UnrecognizedOptionException("Unrecognized option: " + arg, arg);
}
// get the option represented by arg
OptionValue opt = new OptionValue(options.GetOption(arg));
// if the option is a required option remove the option from
// the requiredOptions list
if (opt.Option.IsRequired) {
options.RequiredOptions.Remove(opt.Option.Key());
}
// if the option is in an OptionGroup make that option the selected
// option of the group
if (options.GetOptionGroup(opt.Option) != null) {
IOptionGroup group = options.GetOptionGroup(opt.Option);
if (group.IsRequired) {
foreach (var option in group.Options)
options.RequiredOptions.Remove(option.Key());
}
// group.SetSelected(opt.Option);
AssertNotSelected(group, opt.Option);
}
// if the option takes an argument value
if (opt.Option.HasArgument()) {
ProcessArguments(options, opt, tokens, ref index);
}
// set the option on the command line
cmd.AddOption(opt);
}