我有库方法采用变量参数列表并生成数据
class Data
def process(elems: String*): Data = new Data
我希望我的字符串被隐式转换为Data
implicit def strToData(ts: String): Data = process(t)
所以我可以写类似
val data: Data = "one"
但我也希望隐式转换字符串元组。我添加了另一个隐式
implicit def strsToData(ts: String*): Data = process(ts: _*)
它编译得很好,但转换失败
val data: Data = ("one", "two")
val dat3: Data = ("one", "two", "three")
val dat4: Data = ("one", "two", "three", "four")
和
found : Seq[java.lang.String]
required: this.Data
val data: Data = Seq("one", "two")
有什么方法可以隐式转换元组,或者可以实现它的原因吗?
更新:元组可以是任何数量。