エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください
Twitterで共有ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
Rustの宣言的マクロ(macro_rules!)は、Cのマクロに比べて健全なマクロ(hygienic mac ros 衛生的なマクロ... Rustの宣言的マクロ(macro_rules!)は、Cのマクロに比べて健全なマクロ(hygienic mac ros 衛生的なマクロとも訳される)が書きやすいようにできています。macro_rules!では、Rustの文法に違反するようなマクロは記述できないようになっています。しかし、コンパイルできたマクロ=健全なマクロかというと、そのような保証はありません。そこで、「健全なマクロ」にするためにどのような点に気をつければよいか?という記事です。ちなみに、この記事では宣言的マクロに限定して書いていますが、手続き的マクロ(proc_macro)でも同様です。 ※(注記)この記事のRustのバージョンは1.70.0です。 要約 クレート内の識別子のパスは$crate::(Crate Rootを指す)から始める。 クレート外の識別子のパスは、マクロを公開しない場合は::(Extern Preludeを指す