【发布时间】:2010-05-19 18:40:49
【问题描述】:
在 Scala 中,如果我想实现 DSL,有没有办法做到以下几点:
我有一个名为“Draw”的对象,其中包含函数def draw(d:Drawable)
我怎样才能做到这一点,以便我可以导入对象并在对象外部调用它,例如:
draw ball
如果球扩展了 Drawable 特性?问题是我想以一种中缀表示法使用draw,但我不想通过表示它正在实现类/对象来限定函数draw。
【问题讨论】:
-
以下线程可能会对此有所了解:stackoverflow.com/questions/1006967/… 总结:只有
~、!、-和+可用于中缀或一元运算符,但不是draw。
标签: scala dsl scala-2.8 infix-notation