获取定义值的名称
Get name of defining val
我想获取我的宏输出分配给的变量的名称。与 build.sbt 中的 project
完全一样。如果有的话,我更喜欢开箱即用的解决方案(库),因为它看起来很一般。
这是一个小例子
val someValue = myMacro()
作为 myMacro()
的输出,我想得到字符串 "someValue"
。
您正在寻找 SourceCode.
示例:
scala> def myName(implicit name: sourcecode.Name) = name.value
myName: (implicit name: sourcecode.Name)String
scala> val foo = myName
foo: String = foo
我想获取我的宏输出分配给的变量的名称。与 build.sbt 中的 project
完全一样。如果有的话,我更喜欢开箱即用的解决方案(库),因为它看起来很一般。
这是一个小例子
val someValue = myMacro()
作为 myMacro()
的输出,我想得到字符串 "someValue"
。
您正在寻找 SourceCode.
示例:
scala> def myName(implicit name: sourcecode.Name) = name.value
myName: (implicit name: sourcecode.Name)String
scala> val foo = myName
foo: String = foo