【发布时间】:2017-08-12 18:26:40
【问题描述】:
想象一个节俭的联合:
union MyUnion {
1. bool myBool
2. i64 myLong
3. double myDouble
}(persisted='true')
我想要在 Scala 中做这样的事情:
case class MyClass(
myString: String,
myUnionType: ???
)
然后,我想像这样实例化这个类:
import ...{thriftscala => thrift}
val myClass = MyClass("cool", thrift.MyUnion.MyBool)
val myOtherClass = MyClass("wow", thrift.MyUnion.MyLong)
请注意,我没有实例化 MyBool 或 MyLong,我只是想将它们作为“类型”传递。即,我没有做:
val myClass = MyClass("cool", thrift.MyUnion.MyBool(_))
我很好奇是否有办法使用节俭生成的 Scala 来做到这一点。
【问题讨论】: