【发布时间】:2016-04-23 17:17:18
【问题描述】:
我尝试在Int 上构建一个简单的隐式类来为 Ints 添加一个函数:
object Helper {
implicit class IntHelper(i: Int) {
def add(str: String): Int = i + str.toInt
}
}
为了写得更自然,我希望 DSL 允许这样做(使用 import Helper._):
2 add "3" and add "4"
但我不知道如何执行and 函数。我认为这个会起作用:
object Helper {
implicit class IntHelper(i: Int) {
def add(str: String): Int = i + str.toInt
def and: Int = i
}
}
但如果没有括号,它就无法工作(确实,"2.add("3").and.add("4") 可以工作,但 imo DSL 的句号和括号太多了)。
谢谢
【问题讨论】: