我需要提取某些类型和术语的符号,目前正在按照以下步骤进行操作:
val assetElem = Asset(typeOf[Display].member(TermName("kindOfDisplay")).asMethod)
val assetElem_2 = Asset(typeOf[Heat].typeSymbol)
val assetElem_3 = Asset(typeOf[Temperature.type].termSymbol)
有没有一种方法可以通过创建通用方法来优化此代码,该方法只能通过在typeOf中指定类型作为其参数来使用?
就像是
def asset[T](s: T): Symbol = typeOf[T].typeSymbol
谢谢你的帮助!
是的,您只需要一个TypeTag[T]
:
def typeSymbol[T: TypeTag]: Symbol = typeOf[T].typeSymbol
typeSymbol[Heat]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句