Rustで引数の数を可変にしたいと思っただけでマクロが必要になるの、どういう思想なんだ