我想fold
过喷涂验证。
但我不知道如何为neutral element
获取identity
或Directive
。
我想做的是
def validateMap(data: Map[KeyType, Int]): Directive0 =
data foldLeft (Directive.identity) { case (acc, (key,limit)) =>
acc & validate(limit <= 10 && limit >= 0 , s"limit for $key has to be in range of 0..10")
}
是否为喷涂中的指令定义了标识/中性元素? 我怎么能得到它?
答案 0 :(得分:1)
“pass
”是身份指令:
我怎样才能得到它?
喷雾文档相当不错,但查看源代码通常更有效。您可以使用spray checkout中的以下grep找到它:
$ grep --include='*.scala' -i Directive -R * | egrep -i 'noop|empty|identity'
spray-routing/src/main/scala/spray/routing/directives/BasicDirectives.scala: def noop: Directive0 = Directive.Empty