mirror of
https://github.com/Tyrrrz/CliFx.git
synced 2025-10-25 15:19:17 +00:00
34 lines
994 B
C#
34 lines
994 B
C#
using System.CommandLine;
|
|
using System.CommandLine.Invocation;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace CliFx.Benchmarks.Commands
|
|
{
|
|
public class SystemCommandLineCommand
|
|
{
|
|
public static int ExecuteHandler(string s, int i, bool b) => 0;
|
|
|
|
public Task<int> ExecuteAsync(string[] args)
|
|
{
|
|
var command = new RootCommand
|
|
{
|
|
new Option(new[] {"--str", "-s"})
|
|
{
|
|
Argument = new Argument<string>()
|
|
},
|
|
new Option(new[] {"--int", "-i"})
|
|
{
|
|
Argument = new Argument<int>()
|
|
},
|
|
new Option(new[] {"--bool", "-b"})
|
|
{
|
|
Argument = new Argument<bool>()
|
|
}
|
|
};
|
|
|
|
command.Handler = CommandHandler.Create(typeof(SystemCommandLineCommand).GetMethod(nameof(ExecuteHandler)));
|
|
|
|
return command.InvokeAsync(args);
|
|
}
|
|
}
|
|
} |