ln.application/ln.application/Argument.cs

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;
}
}
}