我正在阅读 CommandLineParser 文档,我对这里的功能设计方式非常感兴趣:
我基本上有一个命令行应用程序,我需要在其中设置不同的参数。像下面的东西
MyApp.exe -a val1 -b val2 -c -d
我想要实现的是,如果 -c 存在于命令行应用程序中,我想获取-a val1 -b val2产生的结果,然后使用该结果和-c的操作调用我的下一个函数.
在这种情况下:
int Main(string[] args) {
return CommandLine.Parser.Default.ParseArguments<AddOptions, CommitOptions, CloneOptions>(args)
.MapResult(
(AddOptions opts) => RunAddAndReturnExitCode(opts),
(CommitOptions opts) => RunCommitAndReturnExitCode(opts),
errs => 1);
}
如何获得RunAddAndReturnExitCode(opts)的结果并将其添加到 RunCommitAndReturnExitCode 中?
我真的很喜欢动词的设计方式,因为它使代码保持整洁。