我目前正在使用scopt
作为命令行应用程序。但是我的scopt.OptionParser[Config]
变得非常大。我认为把它分成更小的部分,然后将它们组合起来可能会很好。
阅读文档后,我认为没有办法做到这一点。
我错过了什么吗?或者是不可能的?
答案 0 :(得分:1)
是的,它可以分成更小的块。您可以通过将功能转移到以下特征来实现:
trait FooParser { self: OptionParser[MyArgs] =>
cmd("foo")
...
}
trait BarParser { self: OptionParser[MyArgs] =>
cmd("bar")
...
}
val fooBarParser = new OptionParser[MyArgs]("FooBar") with FooParser with BarParser {
head("FooBar")
...
}