macro matching exampleが与えられているので、これはマクロが引数とどのように一致するかを示しています。マクロはリテラルではなく定数引数とマッチできますか?
私は番号を使用するためにここに非常にマイナーな変更を加えました:
macro_rules! foo {
(0 => $e:expr) => (println!("mode X: {}", $e));
(1 => $e:expr) => (println!("mode Y: {}", $e));
}
fn main() {
foo!(1 => 3);
}
作品、印刷:mode Y: 3
を、私は、引数として定数を使用したいと思いますしかし、これは作品にすることができます:
これはRustで可能ですか?私のコードでは、各支店がエラーを与えて、さまざまなタイプに解決するので、通常のmatch
文を使用して
注意が、私には使用できません。 私は特に、定数がマクロに渡せるかどうかを知りたいと思っています。
ありがとう、 – ideasman42
を修正しました。「各ブランチは異なるタイプに解決されます」と言います。あなたは例を挙げることができますか? –