Rustの演算子優先順位表
載っているサイトがいまいち見つからなかったので、プログラミングRustから引用する。 上ほど優先順位が高い。
名前 | 例 |
---|---|
タプル/構造体フィールドアクセス、メソッド呼び出し、関数呼び出し、インデックス | point.x, point.m(), stdin(), arr[0] |
エラーチェック | create_dir("tmp")? |
not, 単項マイナス、参照解決、借用 | !ok, -num, *ptr, &val |
型キャスト | x as u32 |
掛け算、割り算、余り | n*2, n/2, n%2 |
足し算、引き算 | n-2, n+2 |
シフト | n << 1, n >> 1 |
bit and | n & 1 |
bit xor | n ^ 1 |
bit or | n | 1 |
不等号、等号 | n < 1, n <= 1, n > 1, n >= 1, n == 1, n != 1 |
and | x.ok && y.ok |
or | x.ok || backup.ok |
範囲 | start..stop |
代入 | x = val, x *= 1, x /= 1, x %= 1, x += 1, x -= 1, x <<= 1, x >>= 1, x &= 1, x ^= 1, x | = 1 |
クロージャ | |x, y| x + y |