2017-07-01 7 views
2

私はRustマクロで "mut"とマッチさせる方法は?

mymacro![mut foo]; 
mymacro![bar]; 

を行うことができますし、マクロが異なる一致としてそれらを参照してくださいますように、マクロに可変性を渡すしたいと思います。どの指定を使用するのですか?

答えて

3

ありません。 2つのルールが必要です:1つはリテラルmutに一致し、もう1つはそうでないルールです。

macro_rules! do_something { 
    (mut $name:ident) => { ... }; 
    ($name:ident) => { ... }; 
} 

そして、はい、彼らはを行うマクロアームが上から下に一致しているので、その順序でなければなりません。

関連する問題