首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spray的指令如何与continuations相对应?

spray的指令如何与continuations相对应?
EN

Stack Overflow用户
提问于 2016-10-21 05:00:57
回答 1查看 40关注 0票数 0

我看不出spray的指令如何与continuation passing style (CPS)相对应。

更具体地说,延续是(a -> r) -> r (在Haskell中),但我在使用spray directives时找不到这种类型((a -> r) -> r) (它的类型为Route->Route where type Route = RequestContext => Unit)。

type Route = RequestContext => UnitRoute->Route都不像(a -> r) -> r,那么指令和CPS有什么关系呢?

谁能展示一下spray的指令correspond是如何继续传递的?

EN

回答 1

Stack Overflow用户

发布于 2016-10-24 20:26:23

最简单的指令定义为

代码语言:javascript
复制
abstract class Directive[L <: HList] {
  def happly(f: L => Route): Route
}

它就是一个(a -> r) -> r。您在spray directives文档中看到的是一个高级Directive,它在幕后构建DSL实例。您可以在Directive.scala中查看完整的定义

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40164470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档