gitextract_0ijp36fl/ ├── .gitattributes ├── .gitignore ├── EntryPoint.sln ├── LICENSE ├── NuGet.Config ├── README.md ├── appveyor.yml ├── docs/ │ ├── api/ │ │ ├── EntryPoint.BaseCliArguments.html │ │ ├── EntryPoint.BaseCliCommands.html │ │ ├── EntryPoint.Cli.html │ │ ├── EntryPoint.CommandAttribute.html │ │ ├── EntryPoint.DefaultCommandAttribute.html │ │ ├── EntryPoint.EnvironmentVariableAttribute.html │ │ ├── EntryPoint.Exceptions.DuplicateOptionException.html │ │ ├── EntryPoint.Exceptions.IUserFacingExceptionHandler.html │ │ ├── EntryPoint.Exceptions.InvalidModelException.html │ │ ├── EntryPoint.Exceptions.NoParameterException.html │ │ ├── EntryPoint.Exceptions.RequiredException.html │ │ ├── EntryPoint.Exceptions.UnknownOptionException.html │ │ ├── EntryPoint.Exceptions.UserFacingException.html │ │ ├── EntryPoint.Exceptions.VariableTypeException.html │ │ ├── EntryPoint.Exceptions.html │ │ ├── EntryPoint.Help.IHelpable.html │ │ ├── EntryPoint.Help.html │ │ ├── EntryPoint.HelpAttribute.html │ │ ├── EntryPoint.OperandAttribute.html │ │ ├── EntryPoint.OptionAttribute.html │ │ ├── EntryPoint.OptionParameterAttribute.html │ │ ├── EntryPoint.RequiredAttribute.html │ │ ├── EntryPoint.html │ │ ├── index.html │ │ └── toc.html │ ├── articles/ │ │ ├── api_overview.html │ │ ├── arguments.html │ │ ├── body.html │ │ ├── commands.html │ │ ├── help_generator.html │ │ ├── intro.html │ │ ├── tips.html │ │ ├── toc.html │ │ └── user_facing_exceptions.html │ ├── index.html │ ├── manifest.json │ ├── search-stopwords.json │ ├── styles/ │ │ ├── docfx.css │ │ ├── docfx.js │ │ ├── docfx.vendor.css │ │ ├── docfx.vendor.js │ │ ├── main.css │ │ ├── main.js │ │ └── search-worker.js │ ├── toc.html │ └── xrefmap.yml ├── docs-generation/ │ ├── BUILD.sh │ ├── README.md │ ├── Website/ │ │ ├── Program.cs │ │ ├── Properties/ │ │ │ └── AssemblyInfo.cs │ │ ├── Website.sln │ │ ├── article_api_overview.cs │ │ ├── article_arguments.cs │ │ ├── article_commands.cs │ │ ├── article_help_generator.cs │ │ ├── article_intro.cs │ │ ├── article_tips.cs │ │ ├── article_user_facing_exceptions.cs │ │ ├── global.json │ │ ├── website.csproj │ │ └── www/ │ │ ├── api_overview.md │ │ ├── arguments.md │ │ ├── commands.md │ │ ├── help_generator.md │ │ ├── intro.md │ │ ├── tips.md │ │ └── user_facing_exceptions.md │ ├── deploy.sh │ └── docfx/ │ ├── .gitignore │ ├── api/ │ │ ├── .gitignore │ │ ├── .manifest │ │ └── index.md │ ├── articles/ │ │ ├── api_overview.md │ │ ├── arguments.md │ │ ├── commands.md │ │ ├── help_generator.md │ │ ├── intro.md │ │ ├── tips.md │ │ ├── toc.yml │ │ └── user_facing_exceptions.md │ ├── docfx.json │ ├── index.md │ ├── template/ │ │ ├── ManagedReference.common.js │ │ ├── ManagedReference.extension.js │ │ ├── ManagedReference.html.primary.js │ │ ├── ManagedReference.html.primary.tmpl │ │ ├── RestApi.common.js │ │ ├── RestApi.extension.js │ │ ├── RestApi.html.primary.js │ │ ├── RestApi.html.primary.tmpl │ │ ├── common.js │ │ ├── conceptual.extension.js │ │ ├── conceptual.html.primary.js │ │ ├── conceptual.html.primary.tmpl │ │ ├── desktop.ini │ │ ├── gulpfile.js │ │ ├── partials/ │ │ │ ├── affix.tmpl.partial │ │ │ ├── breadcrumb.tmpl.partial │ │ │ ├── class.header.tmpl.partial │ │ │ ├── class.tmpl.partial │ │ │ ├── classSubtitle.tmpl.partial │ │ │ ├── enum.tmpl.partial │ │ │ ├── footer.tmpl.partial │ │ │ ├── head.tmpl.partial │ │ │ ├── li.tmpl.partial │ │ │ ├── logo.tmpl.partial │ │ │ ├── namespace.tmpl.partial │ │ │ ├── namespaceSubtitle.tmpl.partial │ │ │ ├── navbar.tmpl.partial │ │ │ ├── rest.child.tmpl.partial │ │ │ ├── rest.tmpl.partial │ │ │ ├── scripts.tmpl.partial │ │ │ ├── searchResults.tmpl.partial │ │ │ ├── title.tmpl.partial │ │ │ └── toc.tmpl.partial │ │ ├── search-stopwords.json │ │ ├── styles/ │ │ │ ├── docfx.css │ │ │ ├── docfx.js │ │ │ ├── docfx.vendor.css │ │ │ ├── docfx.vendor.js │ │ │ ├── main.css │ │ │ ├── main.js │ │ │ └── search-worker.js │ │ ├── toc.html.js │ │ ├── toc.html.tmpl │ │ └── token.json │ └── toc.yml ├── src/ │ └── EntryPoint/ │ ├── Arguments/ │ │ ├── ArgumentFacade.cs │ │ ├── ArgumentMapper.cs │ │ ├── ArgumentModel.cs │ │ ├── ArgumentReflectionExtensions.cs │ │ ├── BaseOptionAttribute.cs │ │ ├── BaseOptionAttributeEqualityComparer.cs │ │ ├── CliArgumentsHelp.cs │ │ ├── EnvironmentVariable.cs │ │ ├── Operand.cs │ │ ├── Option.cs │ │ └── OptionStrategies/ │ │ ├── EnvironmentVariableStrategy.cs │ │ ├── IOptionStrategy.cs │ │ ├── OperandStrategy.cs │ │ ├── OptionParameterStrategy.cs │ │ ├── OptionStrategy.cs │ │ ├── OptionStrategyFactory.cs │ │ └── ValueConverter.cs │ ├── BaseCliArguments.cs │ ├── BaseCliCommands.cs │ ├── Cli.cs │ ├── CommandAttribute.cs │ ├── Commands/ │ │ ├── BaseCommand.cs │ │ ├── CliCommandsHelp.cs │ │ ├── Command.cs │ │ ├── CommandFacade.cs │ │ ├── CommandModel.cs │ │ └── CommandReflectionExtensions.cs │ ├── Common/ │ │ ├── CustomExtensions.cs │ │ ├── ReflectionExtensions.cs │ │ └── TypeExtensions.cs │ ├── DefaultCommandAttribute.cs │ ├── EntryPoint.csproj │ ├── EnvironmentVariableAttribute.cs │ ├── Exceptions/ │ │ ├── DuplicateOptionException.cs │ │ ├── IUserFacingExceptionHandler.cs │ │ ├── InvalidModelException.cs │ │ ├── NoParameterException.cs │ │ ├── RequiredException.cs │ │ ├── UnknownOptionException.cs │ │ ├── UserFacingException.cs │ │ ├── UserFacingExceptionDefaults.cs │ │ └── VariableTypeException.cs │ ├── Help/ │ │ ├── HelpFacade.cs │ │ ├── HelpRules.cs │ │ └── IHelpable.cs │ ├── HelpAttribute.cs │ ├── OperandAttribute.cs │ ├── OptionAttribute.cs │ ├── OptionParameterAttribute.cs │ ├── Parsing/ │ │ ├── ParseResult.cs │ │ ├── Parser.cs │ │ ├── Token.cs │ │ ├── TokenEqualityComparer.cs │ │ ├── TokenGroup.cs │ │ └── Tokeniser.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ └── RequiredAttribute.cs └── test/ ├── EntryPointTests/ │ ├── Arguments/ │ │ ├── AppOptionModels/ │ │ │ ├── BoolArgsModel.cs │ │ │ ├── DecimalArgsModel.cs │ │ │ ├── DuplicateArgumentsModel.cs │ │ │ ├── DuplicateDoubleModel.cs │ │ │ ├── DuplicateHelpDoubleModel.cs │ │ │ ├── DuplicateHelpSingleModel.cs │ │ │ ├── DuplicateLimitsModel.cs │ │ │ ├── DuplicateNoDoublesModel.cs │ │ │ ├── DuplicateNoSinglesModel.cs │ │ │ ├── DuplicateSimilarOptionsModel.cs │ │ │ ├── DuplicateSingleModel.cs │ │ │ ├── EnvVarsArgsModel.cs │ │ │ ├── EnvVarsArgsModel_Required.cs │ │ │ ├── HelpWithRequiredArgsModel.cs │ │ │ ├── IntegerArgsModel.cs │ │ │ ├── ListsArgsModel.cs │ │ │ ├── ListsNonStructModel.cs │ │ │ ├── ListsOperandsModel.cs │ │ │ ├── OperandArgsModel.cs │ │ │ ├── OperandDumpModel.cs │ │ │ ├── OperandNonContiguousArgsModel.cs │ │ │ ├── OperandRequiredArgsModel .cs │ │ │ ├── OperandStartAt0ArgsModel.cs │ │ │ ├── OptionArgsModel.cs │ │ │ ├── ParametersArgsModel.cs │ │ │ ├── RequiredCliArguments.cs │ │ │ ├── RequiredParameterArgsModel.cs │ │ │ ├── SingleDashArgsModel.cs │ │ │ └── StringArgsModel.cs │ │ ├── ArgsDuplicatesTests.cs │ │ ├── BoolArguments.cs │ │ ├── DecimalArgumentsTests.cs │ │ ├── EnumArgumentsTests.cs │ │ ├── EnvironmentVariableTests.cs │ │ ├── HelpTests.cs │ │ ├── Helpers/ │ │ │ ├── Enum1.cs │ │ │ └── HelpTriggeredSuccessException.cs │ │ ├── IntegerArguments.cs │ │ ├── ListArgumentsTests.cs │ │ ├── ModelDuplicatesTests.cs │ │ ├── OperandsTests.cs │ │ ├── OptionTests.cs │ │ ├── ParametersTests.cs │ │ ├── QuotingTests.cs │ │ ├── RequiredParameterTests.cs │ │ ├── RequiredTests.cs │ │ ├── SingleDashTests.cs │ │ └── StringArgumentsTests.cs │ ├── Commands/ │ │ ├── BaseCommandsHelpers/ │ │ │ ├── ArgumentModel_RequiredOptions.cs │ │ │ ├── CommandModel_Defaults.cs │ │ │ ├── CommandModel_DuplicateNames.cs │ │ │ ├── CommandModel_ExceptionThrow.cs │ │ │ ├── CommandModel_Executable.cs │ │ │ ├── CommandModel_Help.cs │ │ │ ├── CommandModel_MethodSig_ManyArgs.cs │ │ │ ├── CommandModel_MethodSig_NoArgs.cs │ │ │ ├── CommandModel_NoDefaults.cs │ │ │ ├── CommandModel_RequiredOptions.cs │ │ │ └── CommandModel_TwoDefaults.cs │ │ ├── CommandArgumentsTests.cs │ │ ├── CommandExceptionHandlingTests.cs │ │ ├── CommandTests.cs │ │ └── Helpers/ │ │ └── CommandExecutedException.cs │ ├── EntryPointTests.csproj │ ├── ParsingTests/ │ │ └── TokeniserTests.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ └── xunit.runner.json └── Example/ ├── CommandLine/ │ ├── ExampleCliCommands.cs │ ├── ExampleEnum.cs │ ├── PrimaryCliArguments.cs │ └── SecondaryCliArguments.cs ├── Example.csproj ├── Program.cs └── Properties/ ├── AssemblyInfo.cs └── launchSettings.json