scala中的异步:宏尚未扩展

 手机用户2502910113_707 发布于 2023-02-13 14:00

我不确定为什么这个简单的代码会导致错误:

object Main {

  def main(args: Array[String]) {
    val userInterrupted: Future[String] = async {
      var inp =   await { Future.userInput("")}
      "You entered... " + inp
    }
  }
}

错误消息:

[error] /Users/reactive programming coursera/nodescala/src/main/scala/nodescala/Main.scala:18: macro has not been expanded
[error]     val userInterrupted: Future[String] = async {
[error]                                           ^
[error] one error found
[error] (assignment/compile:compile) Compilation failed

Debilski.. 10

这似乎是一个已知的问题(已经修复但可能在Scala 2.11之前不可用).因为它与隐式有关,你可以尝试通过隐式显式来解决它:

var inp = await { FutureCompanionOps(Future).userInput("") }

(由于这个问题与Coursera赋值有关,我知道你已经定义了implicit class FutureCompanionOps[T]一个带有类型参数的东西,这似乎是问题所在.)

1 个回答
  • 这似乎是一个已知的问题(已经修复但可能在Scala 2.11之前不可用).因为它与隐式有关,你可以尝试通过隐式显式来解决它:

    var inp = await { FutureCompanionOps(Future).userInput("") }
    

    (由于这个问题与Coursera赋值有关,我知道你已经定义了implicit class FutureCompanionOps[T]一个带有类型参数的东西,这似乎是问题所在.)

    2023-02-13 14:01 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有