proc_macro_workshopでRustの手続き的マクロに入門する 前編