Table of Contents

Interface IArgumentMetadata

Namespace
MASES.CLIParser
Assembly
MASES.CLIParser.dll

Metadata associated to the argument, used during the parse

public interface IArgumentMetadata
Extension Methods

Properties

ArrayValues

The array of possible values for the argument if ValueType is Array

object[] ArrayValues { get; set; }

Property Value

object[]

CrossCheck

An Action to cross check multiple values. If something is not correct during check an ArgumentException shall be raised.

Action<IEnumerable<IArgumentMetadataParsed>> CrossCheck { get; set; }

Property Value

Action<IEnumerable<IArgumentMetadataParsed>>

CustomPrefix

If Prefix contains Custom use CustomPrefix to analyze arguments

string CustomPrefix { get; set; }

Property Value

string

DataType

The Type of the parameter.

Type DataType { get; }

Property Value

Type

Default

The dafault value to use if the value is not found

object Default { get; set; }

Property Value

object

Help

Argument help

string Help { get; set; }

Property Value

string

IsCaseInvariant

True if the argument shall be treated as case invariant

bool? IsCaseInvariant { get; set; }

Property Value

bool?

IsEnum

The argument contains an enumeration value

bool IsEnum { get; }

Property Value

bool

IsExtended

True if the argument is an extended argument

bool IsExtended { get; set; }

Property Value

bool

IsFlag

The argument contains an enumeration value with FlagsAttribute

bool IsFlag { get; }

Property Value

bool

IsMandatory

True if the argument shall be mandatory

bool IsMandatory { get; set; }

Property Value

bool

IsMultiValue

The argument contains multiple values

bool IsMultiValue { get; set; }

Property Value

bool

KeyValuePairSeparator

Separator used when Type is set to KeyValue

string KeyValuePairSeparator { get; set; }

Property Value

string

MaxValue

The maximum value for the argument if ValueType is Range

object MaxValue { get; set; }

Property Value

object

MinValue

The minimum value for the argument if ValueType is Range

object MinValue { get; set; }

Property Value

object

MultiValueSeparator

The separator used in the multiple value argument

char? MultiValueSeparator { get; set; }

Property Value

char?

Name

Argument name

string Name { get; set; }

Property Value

string

Prefix

ArgumentPrefix prefix associated to IArgumentMetadata

ArgumentPrefix? Prefix { get; set; }

Property Value

ArgumentPrefix?

PrefixInUse

The string representing the actual prefix from configuration

string PrefixInUse { get; }

Property Value

string

ShortName

Argument short name

string ShortName { get; set; }

Property Value

string

Type

Set how to manage the IArgumentMetadata

ArgumentType? Type { get; set; }

Property Value

ArgumentType?

ValueType

ArgumentValueType to check input

ArgumentValueType? ValueType { get; set; }

Property Value

ArgumentValueType?