FizzBuzzへのtrait Displayの実装例が >>20
コストの高いメモリ確保処理は分離されて純粋な文字列化処理のみになってるよ
Rustはこれが標準で数値などのプリミティブ型も全てtrait Displayを実装

こうすることで何がメリットかというと
例えば >>21 のこの処理

 「1から15までのBizzFizzの結果をスペースで繋げて1つの文字列にするコード」
 (1..=15).map(|t| FizzBuzz(t, CLASSIC)).join(" ")

よくある15個のStringを生成してそれらを繋げて1つのStringを作るのと比べて
join()はtrait Display実装型を受け付けるため一気に1つのStringのみ作ります
15個の中間生成Stringのメモリ確保と生成を省くことができてます
これはjoin()に限らずprint!系なども同様です