gpt4 book ai didi

scala - 为什么 Scala 不能将此匹配优化为开关?

转载 作者:行者123 更新时间:2023-12-03 16:03:06 25 4
gpt4 key购买 nike

我有这个pattern match匹配 仅限 在字节值上,但是当我添加 @switch它说:

could not emit switch to @switch annotated match



我在这里想念什么?

仅供引用,我已经尝试过但没有奏效:
  • 将此常量移至 Java 接口(interface)并使用 public static final byte字段(我也尝试将它们设为 int 而不是 byte )
  • 将字段标记为 final val在 Scala Message伴随对象
  • 将字段标记为 @inline在伴随对象

  • 我肯定在这里迷路了。

    最佳答案

    scala-user 提供的答案论坛正在使 vals 成为最终版本并删除 Byte注解:

    object Message {
    final val Authentication = 'R'
    final val BackendKeyData = 'K'
    final val Bind = 'B'
    final val BindComplete = '2'
    }

    现在 @switch正确生成 lookupswitch (它不会生成 tableswitch 但它已经足够好了)。

    关于scala - 为什么 Scala 不能将此匹配优化为开关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16311540/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com