XCode 26.2 日本語化計画
マクロを使用して、コンパイル時に繰り返しコードを生成します。
Swift マクロは、コンパイル時にソースコードの一部を生成することで、Swift で繰り返しコードを記述する手間を省きます。マクロの呼び出しは常に追加的な処理です。つまり、マクロは記述済みのコードに新しいコードを追加しますが、あなたのプロジェクトに既に存在するコードを変更したり削除したりすることはありません。
Swift 標準ライブラリや多くのフレームワークなど、多くのライブラリがマクロを提供しています。独自のマクロを記述することもできます。
マクロは Swift コードを生成するため、コードでマクロを使用しているかどうかに関係なく、開発とデバッグに同じツールを使用できます。

マクロを呼び出すために使用する構文は、マクロを宣言に添付するかどうかに応じて若干異なります。
マクロを宣言に添付するには、マクロ名の前にアットマーク(@)を付け、マクロ引数はマクロ名の後に記述します。この構文は属性の記述と同じです。例えば、
宣言に添付されたマクロはコードを生成し、そのコードを宣言に追加します。例えば、上記のコードにある Observable() マクロは、MyObject クラスに追加のメンバーを追加して Observable プロトコルを実装し、MyObject が Observable に準拠していることをマークします。
マクロを宣言に添付せずに呼び出すには、マクロ名の前にシャープ記号 (#) を付け、マクロ引数はマクロ名の後に記述します。この構文は、#if やその他のコンパイル時処理と同じです。例えば、以下のようになります。
宣言に添付されていないマクロはコードを生成し、そのマクロを呼び出した場所にそのコードを追加します。例えば、上記のコードの Predicate マクロは、Predicate 構造体のインスタンスを作成します。
詳細については、Swiftプログラミング言語 の マクロ を参照してください。
あなたのプロジェクトをビルドすると、Swift はあなたのコードを読み取り、マクロを呼び出している箇所を見つけます。次に、Swift は各マクロの実装を呼び出してコードを展開します。最後に、Swift は生成されたコードを含め、通常どおりプロジェクトをビルドします。
マクロが生成したコードを表示するには、Xcode でマクロを呼び出す箇所のコードをクリックし、"Editor(エディタ)" > "Expand Macro(マクロを展開)" を選択します。展開されたコードを読むことで、マクロの動作の詳細を理解するのに役立ちます。また、展開されたコードは、マクロを使用するコードのデバッグにも役立ちます。例えば、マクロによって生成されたコード内にブレークポイントを設定できます。