2016-07-10 4 views
0

を手動で作成すると、手動で注釈付きメソッドを作成できますか?OPAL:OPALフレームワークに注釈付きメソッド

私は現在、次のコードを持っている:

Method(0, "signaturePolymorphicMethod", 
     MethodDescriptor(ObjectType("java/lang/Object"), VoidType), Seq()) 

を、私は、このメソッドに注釈

@java.lang.invoke.MethodHandle$PolymorphicSignature 

を追加します。これどうやってするの?

答えて

1

注釈は、通常、JVMの一般的な「属性」メカニズムを使用して格納されます。

この場合、アノテーションは、「ランタイム保持ポリシー」を持つMethodHandleの非公開の内部クラスです。したがって、メソッドに "Polymorphic Signature"というマークを付けるには、それぞれのメソッドの属性テーブルにRuntimeVisibibleAnnotations_Attributeを追加する必要があります。しかし、アノテーションの可視性がjava.lang.invokeパッケージに限定されていることを考えると、これは(この特定のケースでは)おそらくほとんど役に立ちません。それにもかかわらず、それぞれのパッケージのメソッドを照会することは可能です

関連する問題