8
私の仕事は、デフォルト値があるケースクラスのパラメータの名前を見つけることです。 2.9ではスカラーリフレクションを使用してケースクラスのどのパラメータがデフォルト値を持つかを確認する方法2.10
私はscalapからScalaSigParserを使用していたとのようなものでした:私は2.10にその反射を期待していたことは私にこの種の情報に簡単にアクセスを与えるだろう
(...)
case x: MethodSymbol if x.name.startsWith("init$default$") => (...)
(...)
を。
最終的に、ケースクラスのコンパニオンオブジェクトに含めるマクロを記述したいと思います。コンパニオンオブジェクトは、そのケースクラスの直列化/逆シリアル化のコードを自動的に作成します。そのためには、どのパラメータにデフォルト値があるかを知る必要があります。
大変感謝! –
プルリクエストが完全にマージされており、それは2.10.0に含まれます。 –
'params'は' paramss'で、 'isDefaultParam'メソッドはscala 2.10と2.11の両方で' isParamWithDefault'に名前が変更されました – lyomi