問題タブ [rust-macros]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rust - Rust のマクロの繰り返しを使用して、式が可変変数であるかどうかを検出できますか?
使いたくない($($x:ident),*)
。マクロはlog!
式をログに記録できるので、変数の型を一致させたいと考えています。
rust - 手続き型マクロで、文字列が有効な変数名であり、キーワードではないかどうかを確認するにはどうすればよいですか?
手続き型マクロで、文字列が有効な変数名であり、キーワードではないことを確認できるようにしたいと考えています。
proc_macro2::Ident
無効な変数名を使用しようとするとパニックになりますが、許可したくないキーワードを許可します。パニックに陥る前に、適切で便利なエラー メッセージを表示してエラーを処理することもできます。
文字列が変数名に関する規則に従っていることを確認するマクロまたは関数 (クレート内またはその他) はありますか? おそらく正規表現でそれを行うことができますが、ドラゴンは正規表現に住んでいます。
これの使用例は、ガベージ文字列を含む可能性があるユーザー入力文字列の処理です。
rust - Rust の可変個引数マクロで「列挙」できますか?
基本的に、次のようなマクロがあります。
$(some-macro-magic-here)
に入ることができるものはありますか?
に拡大します
?
マクロの一連の入力を効果的に「列挙」できる同様の機能を取得できる他の方法はありますか?
同様の効果を得るためにおそらく再帰マクロを書くことができると思いますが、私が考えているよりもエレガントで慣用的な方法があるかどうか疑問に思っています