Skip to content

StartOptionGroup

Lunar Doggo edited this page Jul 24, 2021 · 1 revision

What is it?

A StartOptionGroup represents a grouping of StartOptions. This way you don't have to manually separate the command line parameters into groups and validate if a specific StartOption, which should only be used if other StartOptions are present, can be used. Instances of this class can only be built by using a StartOptionGroupBuilder.

The group itself is identified by a Switch-StartOption. Just like with StartOptions, a NameConflictException will be raised, if there is another StartOptionGroup or groupless/included StartOption with the same name.

Implementation

public class StartOptionGroup : IClonable<StartOptionGroup>

Constructor

public StartOptionGroup(string, string, string, IEnumerable<StartOption>)

This constructor is only used internally by StartOptionGroupBuilder

Properties

Signature Description
public IEnumerable<StartOption> Options { get; } Enumeration of all subordinate StartOptions to the StartOptionGroup
public string Description { get; } Description of the StartOptionGroup displayed on the help page
public string ShortName { get; } Short name of the StartOptionGroup
public string LongName { get; } Long name of the StartOptionGroup

Methods

Signatures Description
public StartOption GetOptionByShortName(string) Searches for a StartOption inside the StartOptionGroup with the provided short name
public StartOption GetOptionByLongName(string) Searches for a StartOption inside the StartOptionGroup with the provided long name
public StartOptionGroup Clone() Creates a new instance of StartOptionGroup with the same values. The subordinate StartOptions are cloned as well