Skip to content

ApplicationStartOptions

Lunar Doggo edited this page Jul 24, 2021 · 2 revisions

What is it?

An instance of ApplicationStartOptions is used by a StartOptionParser and contains all information the parser needs to be operated: all StartOptionGroups, groupless StartOptions, HelpOptions and an instance of StartOptionParserSettings.

Note: Make sure, you don't reuse neither short nor long start option names from the groupless StartOptions as the name of a StartOptionGroup or its subordinate StartOptions. Because in this case the parser won't be able to decide if an occurance of a duplicate should be assigned to a groupless StartOption or to the StartOptionGroup, a NameConflictException will be thrown.

Implementation

public class ApplicationStartOptions

Constructors

Signature Description
public ApplicationStartOptions(IEnumerable<StartOptionGroup>, IEnumerable<StartOption>) Simplest constructor, should be used if you want to use the default HelpOptions and StartOptionParserSettings
public ApplicationStartOptions(IEnumerable<StartOptionGroup>, IEnumerable<StartOption>, IEnumerable<HelpOption>) Can be used to provide override the default HelpOptions and instead define custom ones
public ApplicationStartOptions(IEnumerable<StartOptionGroup>, IEnumerable<StartOption>, IEnumerable<HelpOption>, StartOptionParserSettings) Can be used to provide custom HelpOptions and StartOptionParserSettings

Properties

Signature Description
public StartOptionParserSettings StartOptionParserSettings { get; } StartOptionParserSettings the StartOptionParser should use
public IEnumerable<StartOptionGroup> StartOptionGroups { get; } Enumeration of all StartOptionGroups the StartOptionParser should be able to parse
public IEnumerable<StartOption> GrouplessStartOptions { get; } Enumeration of all groupless StartOptions the StartOptionParser should be able to parse
public IEnumerable<HelpOption> HelpOptions { get; } Enumeration of all HelpOptions the StartOptionParser should be able to parse and set the help requested flag accordingly