【问题标题】:While loops generated via Scala Macros are not equal虽然通过 Scala 宏生成的循环不相等
【发布时间】:2016-04-12 23:56:33
【问题描述】:

在测试宏 (Scala 2.11.7) 时,我遇到了以下问题:与 equalStructure 相比,生成的 while 循环不相等。以下代码 sn -p 说明了这个问题:

  val actual = c.untypecheck(q"while (true) {}")
  val expected = c.untypecheck(q"while (true) {}")
  actual equalsStructure expected //is false

是设计使然还是有什么我想念的?

【问题讨论】:

    标签: scala macros


    【解决方案1】:

    注解也一样:

    > q"@enum object Test" equalsStructure(q"@enum object Test")
    res1: Boolean = false
    

    我认为这是一个错误,因为它按预期工作:

    > q"object Test" equalsStructure(q"object Test")
    res1: Boolean = true
    

    我在他们的 github 存储库上提出了 issue。让我们看看他们怎么说。

    【讨论】:

      猜你喜欢
      • 2020-01-02
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 2016-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多