39 lines
1.2 KiB
C#
39 lines
1.2 KiB
C#
|
using System;
|
||
|
|
||
|
namespace ln.application
|
||
|
{
|
||
|
public class Argument : IArgument
|
||
|
{
|
||
|
public char OptionName { get; }
|
||
|
public String LongOptionName { get; }
|
||
|
public string HelpString { get; }
|
||
|
|
||
|
public bool HasArgument { get; set; }
|
||
|
|
||
|
public string Value { get; set; } = null;
|
||
|
|
||
|
public int IntegerValue => int.Parse(Value);
|
||
|
public double DoubleValue => double.Parse(Value);
|
||
|
|
||
|
public Argument(char optionNameName, string longOptionNameName)
|
||
|
{
|
||
|
OptionName = optionNameName;
|
||
|
LongOptionName = longOptionNameName;
|
||
|
}
|
||
|
public Argument(char optionNameName, string longOptionNameName, int defaultValue)
|
||
|
: this(optionNameName, longOptionNameName, defaultValue.ToString()) { }
|
||
|
public Argument(char optionNameName, string longOptionNameName, double defaultValue)
|
||
|
: this(optionNameName, longOptionNameName, defaultValue.ToString()) { }
|
||
|
|
||
|
public Argument(char optionNameName, string longOptionNameName, string defaultValue)
|
||
|
{
|
||
|
OptionName = optionNameName;
|
||
|
LongOptionName = longOptionNameName;
|
||
|
Value = defaultValue;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|