まとめ直した Rust では”型安全”かつユーザフレンドリな文字列フォーマットを実現するため、マクロを用いたフォーマット文字列の検証とコード生成を伴うコンパイル時チェックを行うAPIを提供している。このAPIを用いることで、ユーザは型安全なフォーマット出力を行うコードを直感的に記述することが出来るようになっている(そして初心者をしばしば混乱させる)。 様々なユースケースに対応するために、標準ライブラリにはフォーマット出力用にいくつかのマクロが用意されている。これらは format_args!() という(コンパイラ組み込みの)procedural macro により依存し、他のマクロの挙動は(出力先などの差異を除けば)これに支配される。本記事の目的は、これらの構成要素の実装を把握しその挙動を理解することである。マクロにより隠蔽された内部動作をある程度理解しておくことで、各マクロの正しい使い