Scalaでlazy valを再評価する方法

良い子は真似しちゃダメです。
twitter上で聞かれてgist作ったので、せっかくなのでblogにも貼り付けておきます。


あと、

という変更あったんですね。あと、2.9では実際はpublicだった*1のに、2.10でprivateになっていたりと、他にも変わってるみたいです。
なので、もし2.9と2.10で同じコードでやろうとしたら、ものすごくめんどうです。そもそもclass内のlazy valの数や位置によって、どのフラグのどのbitが対応するのかをマッピングする時点で*2かなり難しいですが。

*1:Scalaからは見えないが、Javaから普通に見える https://gist.github.com/yuroyoro/873993

*2:かなり実験するか、コンパイラのコード読まないかぎり