public CommandArgProto(string name, char mnemonic = '\0', UsageElement usage = null, string value = null, ArgValidator validator = null, CommandArgOptions options = CommandArgOptions.None) : base(name, mnemonic, value) { Usage = Usage.CreateUsage(name, mnemonic, usage); _validator = validator ?? new ArgValidator(); Options = options & ~CommandArgOptions.IsPositional; }
public CommandArgProto(string name, int index, UsageElement usage = null, string value = null, ArgValidator validator = null, CommandArgOptions options = CommandArgOptions.None) : base(index, name) { Usage = Usage.CreateUsage(name, usage); _validator = validator ?? new ArgValidator(); Options = options | CommandArgOptions.IsPositional; }
public CommandArgProto(string name, Usage usage, string value = null, ArgValidator validator = null, CommandArgOptions options = CommandArgOptions.None) : base(name, value) { Usage ??= usage; _validator = validator ?? new ArgValidator(); Options = options; }
public void CtorTest() { string n0 = "a"; Usage u0 = new Usage("usage"); string v0 = "b"; CommandArgOptions o0 = CommandArgOptions.HasArgument | CommandArgOptions.HasMultiple | CommandArgOptions.IsRequired | CommandArgOptions.IsPositional; var d = new CommandArgProto(n0, u0, v0, null, o0); Assert.Equal(n0, d.Name); Assert.Equal(u0, d.Usage); Assert.Equal(v0, d.Value); Assert.Equal(o0, d.Options); Assert.True(d.IsRequired); Assert.True(d.HasMultiple); Assert.True(d.HasArgument); Assert.False(d.IsSwitch); Assert.True(d.IsPositional); }