在docs.scala-lang.org/overviews/quasiquotes/syntax-summary.html#definitions中,我看到这个名为$stats
的“变量”到处都是。它代表什么?它应该是指“陈述”吗?这对我来说有点奇怪,因为你可以有表达式......
答案 0 :(得分:3)
从技术上讲,在AST级别你可以有语句 - 当你使用babel-preset-es2015
,val
或var
声明变量,值或方法时,你不能分配给它别的。当你例如声明一个新的case类,它也不能被视为表达式。
所以def
是涵盖所有这些案例的抽象,以及它出现在类,特征和对象体中的原因,并且由于缺少更好的名称而将它们称为“语句”是合理的。