Scalaで一定の表現として負の値を持つことはできますか?
-
23-10-2019 - |
質問
二重値を返すJava-Annotationがあります。
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface DoubleValue {
double value();
}
Scalaクラスのフィールドに注釈を添付しようとすると、ここのように値が否定されます。
class Test {
@DoubleValue(-0.05)
var a = _
}
「アノテーション引数は定数である必要があります;見つかった:0.05.Unary_-」というメッセージでコンパイラエラーが表示されます。数値文字通りが必要であることを理解し、Scala言語の仕様を調べましたが、 - サインは指数にのみ使用されるが、マンティッサでは使用されていないようです。誰かが、注釈を使用してランタイム情報としてネガティブ値をどのように持つことができるかを考えていますか?
ありがとう、Klinke
解決
これはバグのようです。
バグが修正されるまで、定数の算術が定数であるという事実を利用することができます
@DoubleValue( 0-0.05 )
所属していません StackOverflow