using OptsFn; var options = Opts .Create("myapp", "A simple command-line app") .Add('--name', "Your name") .AddBool('-v', "Verbose output") .Parse(args); var name = options.Value ("--name"); var verbose = options.IsPresent("-v");
using OptsFn; var options = Opts .Create("myapp", "A command-line app with subcommands") .AddCommand("command1", cmd => { cmd.Add('-x', "Option X") .Add('-y', "Option Y") .Callback(args => { /* do something */ }); }) .AddCommand("command2", cmd => { cmd.Add('-z', "Option Z") .Callback(args => { /* do something else */ }); }) .Parse(args); var subcommand = options.Subcommand; if (subcommand == "command1") { // handle command 1 } else if (subcommand == "command2") { // handle command 2 } else { // handle default case }In this example, we're using OptsFn to define a command-line interface with two subcommands: "command1" and "command2". Each subcommand has its own set of options, and we're using the OptsFn API to parse the command-line arguments and determine which subcommand was invoked. Package Library: OptsFn is a package library that can be found on NuGet.org. Its full name is "OptsFn Command-line parsing fluent API".