如何提取缩小的类型并将其用于Shapeless的副产品中?

问题描述 投票:0回答:1

具有此代码:

object Types {
  val undefined = "undefined".narrow
  type RunnableArgument = BigDecimal :+: String :+: Boolean :+: CNil
}

我想将undefined常量的类型作为RunnableArgument hlist元素之一。可能吗?

scala shapeless
1个回答
0
投票

在Scala 2.13中用作HList值的单个类型,请检查原始的SIP:

https://docs.scala-lang.org/sips/42.type.html

因此,您可以编写:

RunnableArgument = "undefined" :+: String :+: Boolean :+: CNil

也可以将此类型用作类型:

type Param = "singleton type"

此文件以scastie格式编译:

https://scastie.scala-lang.org/ObzN7xkKQ9egGBIv2gDuiA

© www.soinside.com 2019 - 2024. All rights reserved.