我想知道标准的Scala解析器组合器是否包含一个解析器,它接受Scala语言本身也接受的相同标识符(如Scala语言规范1.1节中所述).
该StdTokenParsers特征有一个ident解析器,但它拒绝像这样的标识符empty_?.
(如果确实没有这样的解析器,我也可以实例化Scala解析器本身,但那不再是轻量级了.)
我正在将Scala Play应用程序迁移到2.5,并且我正在将我的组件移动到依赖注入.还有一个地方我不知道如何去做.我在随播对象中定义了一个PathBindable隐式转换:
object Task {
implicit def pathBindable(implicit stringBinder: PathBindable[String]) =
new PathBindable[Task] {
...
}
}
Run Code Online (Sandbox Code Playgroud)
PathBindable的实现需要从存储库中查找对象,但我还没有找到一种依赖注入存储库的方法.作为一种解决方法,我正在使用现已弃用的Play对象:
val tasks = Play.application(Play.current).injector.instanceOf[TasksRepository]
Run Code Online (Sandbox Code Playgroud)
任何想法如何妥善解决?
dependency-injection scala playframework playframework-2.0 playframework-2.5