オプション引数には、プラグイン処理の対象とするアノテーションの完全修飾名を指定します。オプション引数は複数指定可能です。コマンドラインコンパイラーを使用する場合、以下の引数を指定してコンパイラープラグインを有効にします。インターフェースで定義されている変数です。インターフェースで定義されている変数です。オプション引数のリストを返します。インターフェースで定義されているメソッドです。指定されたオプション引数を処理します。オプション引数に指定した数だけ繰り返し実行されます。オプション引数に指定された値です。コンパイラーの設定等を保持するオブジェクトです。指定された場合の処理です。オブジェクトで定義しています。今回の値をリストに追加します。プラグインが想定していないオプションが指定された場合は例外をスローします。プラグインの処理を登録します。インターフェースで定義されているメソッドです。コンパイラープラグインの処理を登録します。用意しているオブジェクトのようですが、あまり情報がないため不明です・・・。コンパイラーの設定等を保持するオブジェクトです。処理の対象とするアノテーションのリストを取得します。取得できない場合はプラグイン処理を登録しません。処理をおこなうクラスを定義しています。いうインターフェースです。クラスは数少ないのですが、まだ十分に用意されていないのかそれともこれで十分なのか、理解が足りず分かりません・・・。コンストラクターで指定されたアノテーションに対してプラグイン処理をおこなうクラスです。プラグイン処理をおこなうアノテーションのリストです。インターフェースで定義されているメソッドです。プラグイン処理をするアノテーションのリストを返します。プラグイン処理をおこなうクラスです。つのインターフェースを実装しています。コンパニオンオブジェクトです。テスト用のアノテーションリストを定義します。インターフェースで定義されているメソッドです。変更するプラグイン処理を実装します。以外の場合はプラグインの処理をしません。以下のものがあります。ここは理解していません。コンパイラーを追いかけないと分からなそうです・・・。