0

私は、ASTRewriteを使って別のクラスにメソッドを追加するための本格的なコードを書くのに役立つサンプルコードを探していました。ASTRewriteを使用してソースコードのメソッドを追加する方法は?

P.S:すでに作成されているメソッドに行を追加することは問題ではありません。代わりに、私は、ユーザーのクラスに存在せず、パラメータを受け入れる能力を持ち、内部にいくつかのコードを持つ新しいメソッドを作成したいと考えています。

答えて

0

通常、ASTRewriteを使用して変更を加えることができる場合は、宣言クラスstのボディ宣言に対してListRewriteを取得するだけで済みます。以下のように:

astRewrite.getListRewrite(type, type.getBodyDeclarationsProperty()) 

結果ListRewriteは、あなたのニーズに合った様々なinsertXメソッドを持っています。

この方法はASTのファクトリメソッドを使用してを事前に作成しておくことができます(このため、このためにリライタを気にする必要はありません)。

関連する問題