0

我目前正在使用scopt命令行应用程序。然而,我scopt.OptionParser[Config]的变得非常大。我在想把它分成更小的部分可能会很好,然后将它们组合起来。

阅读文档后,我看不到任何这样做的方法。

我错过了什么?还是不可能?

4

1 回答 1

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")
  ...
}
于 2015-01-09T21:01:53.957 回答