Rustだとライブラリで定義済みのトレイト実装を少しカスタマイズしたいだけでも
変更の必要ないメソッドやトレイト実装も全て元の構造体に委譲するコードを書かないといけない

継承がないから構造体1つに対して10個や20個トレイト実装があるのは普通なのでマクロ使わないとコピペ地獄でやってられない

一般的OOPならメソッド1つオーバーライドするだけの簡単な作業