怎么做"动态绑定"关于Scala案例类?

时间:2014-08-07 10:01:52

标签: scala

举个例子,给出以下Scala案例类......

case class A(str: String, num: Number)
case class B(as: Seq[A])
case class C(b1: B, b2: B)

...和对象层次结构......

val c = C(B(Seq(A("SA",23),A("SB",42))),B(Seq()))

...我希望能够做到这样的事情:

val bindingString = "b1.as[1].num"
val value = get(c, bindingString)
assert value == 42

当然,基于宏或反射的几个库已经实现了所需的核心功能。

是否已有一个提供此功能的库? 或者可以提取现有开源库的一部分?

0 个答案:

没有答案